Ver Mensaje Individual
  #1  
Antiguo 14-02-2016
Avatar de Luis M.
[Luis M.] Luis M. is offline
Miembro Premium
 
Registrado: sep 2004
Ubicación: Ripollet - Barcelona
Posts: 212
Reputación: 20
Luis M. Va por buen camino
FireDac+OldValue

Hola.
Estoy intentando obtener el valor de la propiedad OldValue de un campo pero parece que no funciona en Firedac.
Me devuelve el mismo valor que ingreso en un dbEdit.
La base de datos es Firebird 2.5.
Este es el código que pongo en el evento AfterPost del DataSet:

Código Delphi [-]
  if (FactuF_APUNTE.OldValue <> FactuF_APUNTE.AsDateTime) and
     (FactuAPUNTE.OldValue <> FactuAPUNTE.AsString) then
  begin
    QDm.Close;
    QDm.SQL.Text := 'Update conta set documento = null,f_documento = null '+
                    'where (f_apunte = :dF_Apunte) and (apunte = :cApunte)';
    QDm.ParamByName('dF_Apunte').Value := FactuF_APUNTE.OldValue;
    QDm.ParamByName('cApunte').Value := FactuAPUNTE.OldValue;

    QDm.ExecSQL;
    QDm.Close;
  end;

Si pongo este mismo código en el evento OnUpdateRecord (según la ayuda de Delphi),
si obtengo el valor, pero no me guarda las modificaciones que hago en el DataSet.
Alguna sugerencia?
Gracias y un saludo.
Responder Con Cita