Ver Mensaje Individual
  #12  
Antiguo 14-11-2011
y_a_p y_a_p is offline
Miembro
NULL
 
Registrado: nov 2011
Posts: 37
Reputación: 0
y_a_p Va por buen camino
Muchísima gracias por todas sus ayudas, pero ya lo solucione, el error me tiraba aquí:
Código Delphi [-]
DM.DSET_pacEDAD.Value:=YearsBetween(Now, DM.DSET_pacFECHA_DE_NACIMIENTO.Value);
 DM.DSET_pacMESES.Value:=MonthsBetween(Now, DM.DSET_pacMESES.Value);
porque yo quería modificar la tabla DSET_pac dentro de un evento OnChange de un DBEdit y no había puesto la tabla en modo de edición, la solución es:
Código Delphi [-]
 DM.DSET_pac.Edit;
 DM.DSET_pacEDAD.Value:=YearsBetween(Now, DM.DSET_pacFECHA_DE_NACIMIENTO.Value);
 DM.DSET_pacMESES.Value:=MonthsBetween(Now, DM.DSET_pacMESES.Value);
y luego me marco otra vez el mismo error pero haciendo el seguimiento, me faltaba poner en edición la tabla (DSET_pac):
Código Delphi [-]
Try
  DM.DSET_pacESTADO.Value:=0;
  DM.DSET_pacMESES.Value:=0;
  if (DM.DSET_pacAPELLIDO_Y_NOMBRE.Value='')then
   begin
    ShowMessage('Verifica que hay campos obligatorios que no están cargados');
    DM.DSET_pac.Cancel;
    DM.Transaccion.RollbackRetaining;
   end;
  if(DM.DSET_pacTIPO_DOCUMENTO.Value='')then
   begin
    ShowMessage('Verifica que hay campos obligatorios que no están cargados');
    DM.DSET_pac.Cancel;
    DM.Transaccion.RollbackRetaining;
   end;
  if(DM.DSET_pacNUMERO_DOCUMENTO.Value='')then
   begin
    ShowMessage('Verifica que hay campos obligatorios que no están cargados');
    DM.DSET_pac.Cancel;
    DM.Transaccion.RollbackRetaining;
   end;
  if(DM.DSET_pacFECHA_DE_NACIMIENTO.Value=null)then
   begin
    ShowMessage('Verifica que hay campos obligatorios que no están cargados');
    DM.DSET_pac.Cancel;
    DM.Transaccion.RollbackRetaining;
   end;

  if(DM.DSET_pacSEXO.Value='')then
   begin
    ShowMessage('Verifica que hay campos obligatorios que no están cargados');
    DM.DSET_pac.Cancel;
    DM.Transaccion.RollbackRetaining;
   end;
  if(DM.DSET_pacDIRECCION.Value='')then
   begin
    ShowMessage('Verifica que hay campos obligatorios que no están cargados');
    DM.DSET_pac.Cancel;
    DM.Transaccion.RollbackRetaining;
   end;
  if(DM.DSET_pacNUM_DIR.Value=0)then
   begin
    ShowMessage('Verifica que hay campos obligatorios que no están cargados');
    DM.DSET_pac.Cancel;
    DM.Transaccion.RollbackRetaining;
   end;
  if(DM.DSET_pacPROFESIONAL.Value=null)then
   begin
    ShowMessage('Verifica que hay campos obligatorios que no están cargados');
    DM.DSET_pac.Cancel;
    DM.Transaccion.RollbackRetaining;
   end;
  DM.DSET_pac.Edit;
  DM.DSET_pacID_PROF.Value:=DM.DSET_profID_PROF.Value;
  DM.DSET_pacID_COBER.Value:=DM.DSET_cob_medID_COBER.Value;
  DM.DSET_pacID_LOC.Value:=DM.DSET_locID_LOC.Value;
  DM.DSET_num.Edit;
  DM.DSET_numTIPO.Value:='H';
  DM.DSET_numCOMENTARIO.Value:='HISTORIA CLINICA';
  DM.DSET_numNUMERO.Value:=DM.DSET_numNUMERO.Value + 1;
  DM.DSET_pacNUMERO_HISTORIA_CLINICA.Value:=DM.DSET_numNUMERO.Value;
  DM.DSET_pac.Post;
  DM.DSET_num.Post;
  DM.Transaccion.CommitRetaining;
  DM.DSET_pac.Append;
  ape_nom_pac_a.SetFocus;
 except
  ShowMessage('No se puede ingresar un registro en blanco');
  DM.DSET_pac.Cancel;
  DM.Transaccion.RollbackRetaining;
 end;
end;
lo que agrege y me realiza bien todo lo que deseo.
Pero igual agradezco su tiempo...
Responder Con Cita