Jein:
Man kann ein Autoincrement-Feld definieren, dass allerdings nur beim weglassen während des Inserts automatisch gezählt wird (as identitiy ...).
Hier gibt es 2 Varianten:
GENERATED BY DEFAULT = Nur beim Insert, wenn ein Default erwartet wird.
GENERATED ALWAYS = Immer, aber es darf nicht erwähnt werden, wie bei DEFAULT

M.a.W: Ich darf das Feld beim Insert zwar angeben, es treten dabei allerdings 2 Situationen auf:
- bei DEFAULT wird der Wert so übernommen, wie angegeben, auch bei NULL
- bei ALWAYS gibt es einen Fehler (das Feld darf nicht angegeben werden), es sei denn man gibt explizit "OVERRIDE USER VALUES" (so ähnlich) beim Insert an.

Da es sich hierbei um eine SQL-Funktion handelt, schließt dies RPG/LE (auch CPYF) aus, da man das Feld nicht ausschließen kann.

Um für alles gewappnet zu sein, hilft hier leider nur ein Trigger, da dieser immer beim Before-Insert einen Wert generieren kann.

Ich hatte hier auch ein Problem beim Kunden, da eine Schnittstelle extern befüllt wird und das Feld der Autonummer vom externen Dienstleister mit NULL vorbelegt wird. SQL-Server u.ä. behandeln dies dann korrekt. Letztendlich konnte ich dies nur mit Trigger lösen.