Ob per SQL oder per RPG gibts tatsächlich einen Unterschied.
Wenn STRCMTCTL nicht gestartet ist, gibts beim RPG-Commit eine Abbruchmeldung.
Beim exec sql commit gibts nur einen SQLSTATE bzw. SQLCODE.

Wenn man einen Before-Update/Insert Trigger macht, braucht man ja nur den Datenpuffer zu ändern und sich um Commit nicht kümmern, was per Definition ja sowieso nicht erlaubt ist.