Der IBM® i Integrated Debugger verwendet eine Datenwarteschlange für die Kommunikation mit der Benutzeranwendungsumgebung. Die Unterstützung für dynamische Zuordnung ermöglicht Ihnen das Starten einer Debugsitzung unter Verwendung der Konfiguration 'IBM i: Debug für dynamischen Job' und eines Schlüssels. Wenn die Anwendungsumgebung den Schlüssel für den Job, für den das Debug ausgeführt werden soll, in diese Datenwarteschlange schreibt, wird eine Debugsitzung für diesen Job gestartet. Der Abschnitt Unterstützung für dynamische Zuordnung (IBM i Integrated Debugger) enthält weitere ausführliche Informationen.
Die Speicherposition dieser Datenwarteschlange ist Q5BTEMP/DYNAMICATT.
Wenn der Debug-Server mit dem Befehl STRDBGSVR gestartet wird, wird diese Datenwarteschlange erstellt.
Wenn der Debug-Server mit dem Befehl ENDDBGSVR beendet wird, wird diese Datenwarteschlange gelöscht.
Ihre Anwendung oder der zugehörige Helper muss den Schlüssel und den vollständigen Namen des Jobs, für den das Debug ausgeführt werden soll, mit Hilfe der Datenwarteschlange-API in diese Datenwarteschlange schreiben. Das erwartete Format ist ein Puffer mit einer Länge von 26. Die ersten 10 Zeichen dieses Puffers enthalten den Jobnamen. Die nächsten 10 Zeichen dieses Puffers enthalten den Benutzernamen für diesen Job. Die letzten 6 Zeichen enthalten die Jobnummer.
Das folgende Beispiel zeigt ein RPGLE-Programm, das den vollständigen Jobnamen abruft und die Benutzer-ID und den vollständigen Jobnamen in die Debuggerdatenwarteschlange schreibt:
D psds sds 1000 qualified
D jobinfo 26 overlay(psds:244)
D QSNDDTAQ_debug...
D PR EXTPGM('QSNDDTAQ')
D data_queue_name...
D 10A CONST
D library_name 10A CONST
D length_of_data...
D 5P 0 CONST
D data 26A CONST
D OPTIONS(*VARSIZE)
D length_of_key 3P 0 CONST
D key_data 64A CONST
D mykey s 64A
/free
mykey = 'eindeutiger_Schlüssel';
monitor;
QSNDDTAQ_debug ('Q5BDYNATT' : 'Q5BTEMP' : 26 : psds.jobinfo:
64 : mykey);
on-error;
//error occurred
endmon;
return;
/end-free