Hola
Tratare de explicarlo.
Hay muchas veces que cuando se separa la sentencia sql, nos genera un error de sintaxis, esto lo he visto con diferente bases de datos.
por eso te sugeri, desde hace un rato el uso de text.
Ya estas viendo varias cosas con el memo (por cierto se hace mas facil con un message), no tienes datos en un campo autonumerico, te esta poniendo en blanco ese registro, tratas un dato fecha como string (raro).
Sin mas yo lo haria asi:
Código Delphi
[-]
procedure TFPedidoMod.BitBtn2Click(Sender: TObject);
begin
FConsPed.TbPedido.Edit;
if MessageDlg('¿Está seguro que desea Guardar?', mtConfirmation,
[mbYes, mbNo], 0) = mrYes then
begin
FConsPed.TbPedido.Post;
QHistorico.SQL.Clear;
QHistorico.SQL.Text 'insert into historico (id, no, no_ped, dpto, responsable, fecha_rec_ped, status, user, date)'+
' values ("", "'+DBEdit18.Text+'", "'+DBEdit7.Text+'", "'+DBLookupComboBox6.Text+
'", "'+DBLookupComboBox8.Text+'", "'+DBEdit15.Text+'", "'+DBLookupComboBox1.Text+'", "'+DBEdit16.Text+
'", "'+DBEdit17.Text+'")');
showMessage(QHistorico.SQL.Text); QHistorico.ExecSQL;
MessageDlg('Los Datos se grabaron exitosamente!',mtError,[mbOK],0);
Free;
end;
end;
Sigo insistiendo que el campo autonumerico no contiene nada y por otro lado siempre es conveniente hacer una transacción.
Bueno, ya diras.
Saludos