Ok, das mit der Variablen für Commit in der F-Bestimmung ist für mich neu;-).
Was den Transaktionsstatus angeht, so macht das 1. Programm in einer Aktiverungsgruppe, dass SQL verwendet, automatisch eine STRCMTCTL ohne das dies manuell erfolgen muss.
Beim der Umwandlung eines SQL-Programmes steht die Commit-Option "set option commit = xxx" per Default auf *CHG. Dies muss man explizit bei der Umwandlung angeben wenn man es anders haben will.
Jedoch führt dies immer zu Problemen, wenn auf einer höheren Ebene eines Call-Chains irgendwo ein Programm mit Commit aufgerufen wird. Ebenso passiert dies auch auf einer tieferen Ebene, wenn das Programm dort nicht mit *INLR verlassen wird, z.B. bei Service-Programmen.
Man merkt es auch nicht, wenn man Spiegelsysteme verwendet, die auf Journalen basieren und somit sowieseo jede Datei aufgezeichnet wird.
Nur dann wenn dann augf irgendeiner Ebene unerwartet ein Rollback gemacht wird oder die Anzahl Sperren im Job wachsen.