Cita:
Empezado por tcp_ip_es
creo que le tienes que pasar al campo el valor NULL.
Saludos, Tony
|
He puesto:
Código:
IBTable1.FieldByName('CLAVE').Value := NULL;
y no funciona
Cita:
procedure TFormComprobantes.IBTable1AfterInsert(DataSet: TDataSet);
begin
Dataset.FieldValues['CODIGO_COMPROBANTE']:=9999;
end;
|
Asi tampoco funciona, porque en la tabla me inserta el 9999 como clave y la proxima vez que voy a insertar un registro me dice que como es clave primaria no se puede repetir y casca el programa.
Cita:
- Tienes un campo autoincremental, que de seguro debe haber sido creado de la siguiente manera: CREATE TABLE MITABLA(NOMBRE_CAMPOAUTOINC not null, ...)
- Si es asi como se ha creado en el DataSet deberias poner esto en el procedure InserSQL: INSERT INTO MITABLA(DEMAS CAMPOS SIN TOMAR EN CUENTA EL CAMPO AUTOINCREMENTAL)
A mi me funciona, espero que a ti tambien.
Saludos
|
Esto no lo he provado, porque inserto mediante:
Código:
IBDatabase1.Insert;
IBDatabase.fieldbyName('Codigo').Value:=valor;
...
IBData1.post;
Pero sino me queda otra tendre que probar como dice JulioGo.
PD: El procedimiento
Código:
IBTable1.InsertRecord(...);
funciona bien?
Gracias