Das Programm, dass die Prozedur aufruft, entscheidet über den Commitlevel.
Die Prozedure erbt i.d.R. vom Aufrufer.

Prüfe einfach mal, ob du im Programmcode:

exec sql set option commit = *chg;

verwendest. Der Default ist leider *none.
Und wichtig ist natürlich auch, dass die Tabellen in einem Journal aufgezeichnet werden.
Ohne Jounrnal keine Transaktionen.