Anmelden

View Full Version : Mehrere Auslöserzeiten beim Trigger, Debug klappt nur einmal



dschroeder
19-07-17, 11:36
Hallo,
ich habe eine Datei, auf der ein Trigger liegt. Der Trigger soll bei verschiedenen Events ausgelöst werden:
*BEFORE *INSERT
*BEFORE *UPDATE
*AFTER *INSERT
*AFTER *UPDATE
*AFTER *DELETE

Es wird immer das selbe Triggerverarbeitungsprogramm (RPG) aufgerufen. Wenn ich das Triggerprogramm per Service-Entry-Point (mittels RDi) debugge und einen Update auf der Tabelle durchführe, wird der Debugger genau einmal aktiv, nämlich beim *BEFORE *UPDATE.
Ich würde erwarten, dass der Debugger 2 mal aktiviert wird, nämlich auch bei *AFTER *UPDATE. Selbst wenn ich bei der ersten Aktivierung einen Breakpunkt setze, nützt das nichts.

Durch die Auswirkungen des Triggerprogramms kann ich aber definitiv nachweisen, dass beide Ereigniss (*BEFORE *UPDATE und *AFTER *UPDATE) das Programm aufrufen.

Hinweis: Der Trigger wird mit der Attribut ALWREPCHG(*YES) gesetzt.

Hat jemand das Problem schon mal gehabt?

Dieter

Fuerchau
19-07-17, 11:40
Deshalb debugge ich immer noch im Greenscreen.

dschroeder
19-07-17, 11:56
Das ist zwar nicht die Anwort, die ich mir gewünscht habe. Aber trotzdem: Ich habe den SEP jetzt im Greenscreen gesetzt und der Debugger (im Greenscreen) stoppt tatsächlich 2 mal.

Scheint wohl ein Bug im RDi zu sein. Oder eine fehlerhafte Einstellung?
Vielleicht weiß ja jemand etwas über dieses Problem im RDi?

Vielen Dank.

Dieter

Fuerchau
19-07-17, 12:30
Das hat wohl nichts mit dem Debugger über RDi zu tun, sondern mit dem Debugger-API selber.
Im iSeries Navigator, hatte Birgitta mal irgendwo dokumentiert, kann man den Debugger auch aufrufen. Allerdings kam ich da nun überhaupt nicht mit zu recht.
Wahrscheinlich komme ich nun in so ein Alter...

dschroeder
19-07-17, 14:43
Na, ja.
Im Greenscreen klappt es ja wie gewünscht. Nur im RDi nicht. Dort stoppt der Debugger nur einmal.

Falls es irgendjemand im RDi doch hinbekommt, bitte Bescheid sagen.