Tonazzo
30-09-15, 07:13
Du sagst doch, dass die History journalisiert wird.
Dann sollte der Rollback diese doch auch löschen.
Habe mich wohl falsch ausgedrückt.
Das Verwaltungsprogramm ändert eine Kopf.- sowie eine Positionsdatei.
An der Positionsdatei hängt ein Trigger, der die Änderungen in eine History schreibt.
Das Triggerprogramm selbst hat keine Commitsteuerung (es fehlt das Schlüsselwort in der F-Anweisung).
Im Verwaltungsprogramm wird beim Löschen einer Position ein Fehler festgestellt, so dass ein Rollback
initiiert wird. D.H alle bis dahin gelöschte Positionssätze werden in der PosDatei wiederhergestellt.
Also dachte ich, dass das Triggerprogramm die Änderung (die ja keine ist - habe ich jetzt gelernt)
auch mitbekommt, so dass in der History ersichtlich wird, dass eine Wiederherstellung erfolgt ist.
Da es aber kein Rollback-Event gibt, wird scheinbar das Triggerprogramm gar nicht angestossen.
Mein nächster Schritt wäre jetzt:
Aus dem Trigger ein SQLRGPLE zu machen und die Fortschreibung in die History per SQL durchzuführen.
Da der Trigger unter ACTGRP(*CALLER) läuft - sollte das Schreiben der History auch unter der
"Commithoheit" des Verwaltungsprogramm laufen oder?!?
Viele Grüße
Dann sollte der Rollback diese doch auch löschen.
Habe mich wohl falsch ausgedrückt.
Das Verwaltungsprogramm ändert eine Kopf.- sowie eine Positionsdatei.
An der Positionsdatei hängt ein Trigger, der die Änderungen in eine History schreibt.
Das Triggerprogramm selbst hat keine Commitsteuerung (es fehlt das Schlüsselwort in der F-Anweisung).
Im Verwaltungsprogramm wird beim Löschen einer Position ein Fehler festgestellt, so dass ein Rollback
initiiert wird. D.H alle bis dahin gelöschte Positionssätze werden in der PosDatei wiederhergestellt.
Also dachte ich, dass das Triggerprogramm die Änderung (die ja keine ist - habe ich jetzt gelernt)
auch mitbekommt, so dass in der History ersichtlich wird, dass eine Wiederherstellung erfolgt ist.
Da es aber kein Rollback-Event gibt, wird scheinbar das Triggerprogramm gar nicht angestossen.
Mein nächster Schritt wäre jetzt:
Aus dem Trigger ein SQLRGPLE zu machen und die Fortschreibung in die History per SQL durchzuführen.
Da der Trigger unter ACTGRP(*CALLER) läuft - sollte das Schreiben der History auch unter der
"Commithoheit" des Verwaltungsprogramm laufen oder?!?
Viele Grüße