IBM® i Integrated Debugger は、データ待ち行列を使用してユーザー・アプリケーション環境とやり取りします。動的接続のサポートにより、「IBM i: 動的ジョブのデバッグ」構成とキーを使用してデバッグ・セッションを開始することができます。 アプリケーション環境によって、デバッグ対象のジョブのキーがこのデータ待ち行列に書き込まれると、このジョブのデバッグ・セッションが開始されます。 詳しくは、トピック『動的に取得されたジョブ情報を使用したデバッグ』を参照してください。
このデータ待ち行列のロケーションは Q5BTEMP/DYNAMICATT です。
STRDBGSVR コマンドを使用してデバッグ・サーバーを始動すると、このデータ待ち行列が作成されます。
ENDDBGSVR コマンドを使用してデバッグ・サーバーを終了すると、このデータ待ち行列が削除されます。
アプリケーションまたはそのヘルパーは、データ待ち行列 API を使用して、デバッグ対象のジョブのキーとフルネームをこのデータ待ち行列に書き込む必要があります。想定されるフォーマットは、長さ 26 のバッファーです。 このバッファーの先頭 10 文字には、ジョブ名が入ります。このバッファーの次の 10 文字には、このジョブのユーザー名が入ります。最後の 6 文字には、ジョブ番号が入ります。
完全なジョブ名を取得し、ユーザー ID と完全なジョブ名をデバッガーのデータ待ち行列に書き込むサンプルの RPGLE プログラムを以下に示します。
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 = 'my_unique_key';
monitor;
QSNDDTAQ_debug ('Q5BDYNATT' : 'Q5BTEMP' : 26 : psds.jobinfo:
64 : mykey);
on-error;
//error occurred
endmon;
return;
/end-free