Hallo,
ich habe eine SQL beschriebene Tabelle mit einem autogenerated key:
Code:
create table eddatlib/siszakop (
zk_rec_id decimal(15) generated always as identity,
...
Den Datensatz der Datei habe ich als externe Datenstruktur im Programm deklariert. Die Variable heißt ZAKOPSatz. Ich möchte gerne den kompletten Satz in die Datei schreiben, also nicht alle Felder einzeln. Das mache ich so:
Code:
exec sql insert into siszakop values :ZAKOPSatz;
Ich bekomme beim insert den SQL-Fehler
Code:
Wert kann nicht für GENERATED-ALWAYS-Spalte ZK_REC_ID angegeben werden.
Unerwarteter SQLCOD: -798 in Routine SIS99ZKF01.
Das liegt sicher daran, dass das RPG-Programm den gesamten Datensatz, also auch das Record-ID Feld schreiben will. Beim SQL müsste man aber genau dieses Feld weglassen, da es ja automatisch generiert wird.
Hat vielleicht jemand eine Idee, wie man das hinkriegt? Wenn es keine Lösung gibt, muss ich die Datei wieder so ändern, dass ich die Record-ID selber vergebe.
Dieter
Bookmarks