Für Commit-Steuerung ist die Art native oder SQL nicht relevant.
Native gibts die Option der F-Bestimmung (oder DCL-F) für Commit, bei SQL bestimmt es Set Option.
Wenn dies gewährleistet ist, kannst du beliebig mischen.

Für deinen partiellen Insert gibt es noch eine einfache Kontrolle:

exec sql select * into : MyDs from final table (insert into MyTable (F1.....) values(: F1.....));

D.h., du kannst nach dem Insert die Daten direkt ohne Schlüssel wieder auslesen um sie weiter zu verwenden. Dabei werden Defaults ebenso zurückgegeben wie Identity-Spalten, Timestamps oder Functions. Ggf. musst du noch ein NullFlag-Array beim Into angeben.