Hallo ,

ich habe folgendes Szenario:

RPG Programm läuft mit set option commit=*chg und actgrp(*new).
In dem RPG wird mit Servicemodulen gearbeitet. Es sind keine lokalen Tabellen im RPG.

In dem RPG wird ein Service mit actgrp caller aufgerufen der die DB Operationen ausführt.
PHP-Code:
//DS an Update Service übergeben
Errorcheck  NEWSA01_updateDataTab01P(DSBildschirmfelder);

     if  
Errorcheck.Errorcode =  '0000';
         
EXEC SQL COMMIT;  
         return *
on;   // hier ist  SQLSTATE = '00000'
     
else;
         
EXEC SQL Rollback;
         return *
off;
     ENDIF; 

Das Serviceprogramm läuft mit dem set commit=*none.
Der commit wird einfach ignoriert.

Frage: Wie kann ich in der Konstellation eine Transaktionsteuerung durchführen?
( Wie kann man das Thema Transaktionsteuerung in Servicemodulen lösen )


Gruß
Michael