Ver Mensaje Individual
  #4  
Antiguo 30-09-2011
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Reputación: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola Rofocale.

Podés hacerte un procedimiento al efecto, por ejemplo:
Código Delphi [-]
procedure InsertaModifica(const Fecha: string; const Value: Double);
begin
  with TIBQuery.Create(nil) do
  try
    Database:= DataModule1.IBDatabase1;
    SQL.Text:= 'SELECT * FROM TABLA WHERE FECHA = :DATE';
    ParamByName('DATE').AsString:= Fecha;
    Open;
    if IsEmpty then   // ¿ la fecha existe ?
    begin             // no, insertar
      Close;
      SQL.Clear;
      SQL.Add('INSERT INTO TABLA (FLOTANTE, FECHA) ');
      SQL.Add('VALUES (:FLOAT,:FECHA)');
    end
    else              // si, modificar
    begin
      Close;
      SQL.Clear;
      SQL.Add('UPDATE TABLA SET ');
      SQL.Add('FLOTANTE = :FLOAT ');
      SQL.Add('WHERE FECHA = :FECHA');
    end;
    ParamByName('FLOAT').AsFloat:= Value;
    ParamByName('FECHA').AsString:= Fecha;
    ExecSQL;
    DataModule1.IBTransaction1.Commit;
  finally
    Free;
  end;
end;

Ejemplo de llamada:
Código Delphi [-]
  InsertaModifica('12/09/2011', 999.99);

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....

Última edición por ecfisa fecha: 30-09-2011 a las 07:42:17. Razón: Agregar comentarios
Responder Con Cita