Ver Mensaje Individual
  #9  
Antiguo 05-01-2013
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
Cita:
Empezado por pjacob80 Ver Mensaje
hola amigos, estoy haciendo un insert en una base de datos firebird, y me tira error, a ver si alguien me puede ayudar, me dice que no existe el asdate, pero el campo es del tipo date, no se cual seria el indicador para eso...


el codigo:

Código Delphi [-]
   fprincipal.Query3.Active := false;
   fprincipal.Query3.SQL.Clear;
   fprincipal.Query3.SQL.Add('insert into temporaltrabajos (fecha, monto, vehiculo, detalle) values (:ffecha, :mmonto, :vvehiculo, :ddetalle)');
   fprincipal.query3.SQL.Add('where (codcliente=:codcliente)');
   fprincipal.Query3.sql.add('order by fecha');
   fprincipal.query3.ParamByName('ffecha').asdate:=fprincipal.query2.fieldByName('fecha').Asdate;
   fprincipal.query3.ParamByName('mmonto').Asfloat:=fprincipal.query2.fieldByName('monto').Asfloat;
   fprincipal.query3.ParamByName('vvehiculo').Asstring:=fprincipal.query2.fieldByName('vehiculo').Asstr  ing;
   fprincipal.query3.ParamByName('ddetalle').Asstring:=fprincipal.query2.fieldByName('detalle').Asstrin  g;
   fprincipal.Query3.Active := True;
   fprincipal.Query3.Open;

el el query2 tengo la consulta de la tabla trabajos, y quiero copiar 1 solo registro a la tabla temporaltrabajos (query3)

tal vez lo que hago es una burrada, y existe una forma mas facil.... no se...
Hola.

No entiendo el por qué de esta línea:
Código SQL [-]
fprincipal.query3.SQL.Add('where (codcliente=:codcliente)');
¿ Para que requerir la existencia si estas realizando un INSERT ? ¿ O deseabas modificar ?

Y de esta:
Código SQL [-]
fprincipal.Query3.sql.add('order by fecha');
¿ Usar ORDER BY en un ingreso ?

Probá creándote una tabla simple de prueba:
Código SQL [-]
CREATE TABLE HORARIOS (
    FECHA_DESDE      DATE,        
    FECHA_HASTA      TIMESTAMP
)

Luego, de este modo, no tendrías que tener ningún problema:
Código Delphi [-]
  with IBQuery1 do
  begin
    Close;
    SQL.Clear;
    SQL.Add('INSERT INTO TABLA (FECHA_DESDE, FECHA_HASTA)');
    SQL.Add('VALUES (:PDESDE, :PHASTA)');
    ParamByName('PDESDE').AsDate     := DateTimePickerDesde.Date;   
    ParamByName('PHASTA').AsDateTime := DateTimePickerHasta.DateTime;
    ExecSQL;
  end;

Saludos.
__________________
Daniel Didriksen

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

Última edición por ecfisa fecha: 05-01-2013 a las 20:39:12.
Responder Con Cita