Problemer med at autogenerere et felt
Jeg har en Delphi 2007 applikation.Jeg har en IBQuery, Datasetprovider, ClientDataSet og en Datasource forbundet i nævnte rækkefølge og en Grid som er forbundet til datasourcen.
IBQuerien er forbundet med en Firebird 2,1 database.
Tabellen er her i simpel udgave
ID, pk, integer
Navn, varchar(50)
Beskrivelse, varhcar(250)
Feltet ID ønskes skjult i min grid og feltet skal autogenereres med en værdi på serveren.
Derfor har jeg lavet en generator (sequense) i min Firebird database:
CREATE SEQUENCE GEN_KASSEKLADDER_ID;
ALTER SEQUENCE GEN_KASSEKLADDER_ID RESTART WITH 0;
Jeg har også forsøgt med en trigger:
CREATE OR ALTER TRIGGER KASSEKLADDER_BI FOR KASSEKLADDER
ACTIVE BEFORE INSERT POSITION 0
AS
BEGIN
IF ((NEW.KLADDEID IS NULL) or (New.KladdeID = 0)) THEN
NEW.KLADDEID = GEN_ID(GEN_KASSEKLADDER_ID,1);
END
Problemet er, at når jeg kører min application, så får jeg en fejl "Field ID must have a value"
Fejlen kommer ikke når en ny post indsættes i min clientdataset, men først når jeg forsøger at forlade den nye post igen enten ved at flytte til posten ovenover eller lukke formen osv.
