デバッグするために CICS® プログラムを準備するには、以下のタスクを行ってください。
CICS Transaction Server for z/OS® バージョン 3 リリース 1 より前のバージョンの CICS を使用する場合は、非言語環境プログラム COBOL プログラムの準備に記載されたとおりに、非言語環境プログラムの COBOL プログラムをデバッグ用に準備できます。
Debug Tool から EQADCCXT という名前の言語環境プログラム CEEBXITA アセンブラー出口が提供され、DTCN トランザクションを使用して CICS 下でデバッグ・セッションを活動化するのに役立ちます。次のいずれかのオプションを実行する場合は、これを使用する必要はありません。
EQADCCXT を使用するときには、次の条件に注意してください。
プログラムをリンク・エディットした後に、DTCN トランザクションを使用して、 デバッグしたいリソースの組み合わせを指定するプロファイルを作成します。DTCN プロファイルの作成と保管を参照してください。
DTCN プロファイルは以下の方法で作成し、保管できます。
DTCN トランザクションは、デバッグ・プロファイルをリポジトリーに保管します。このリポジトリーは、CICS 一時ストレージ・キューにすることも、VSAM ファイルにすることもできます。以下に、CICS 一時ストレージ・キューを使用した場合と、VSAM ファイルを使用した場合の相違点をリストします。
Debug Tool によって、デバッグ・プロファイル VSAM ファイルが存在するかどうかに基づいて、使用されるストレージ方式が決定されます。Debug Tool によって、CICS 領域に割り振られたデバッグ・プロファイル VSAM ファイルが検出されると、リポジトリーとして VSAM ファイルを使用していると想定されます。デバッグ・プロファイル VSAM ファイルが検出されなかった場合は、CICS 一時ストレージ・キューをリポジトリーとして使用するものと見なします。VSAM ファイルの作成および管理方法について詳しくは、「Debug Tool カスタマイズ・ガイド」を参照するか、システム・プログラマーに連絡してください。
リポジトリーが一時ストレージ・キューの場合、各プロファイルは、以下のいずれかのイベントが起こるまで、リポジトリー内に保存されます。
リポジトリーが VSAM ファイルの場合は、各プロファイルは、明示的に削除されるまで保持されます。 DTCN トランザクションは、ユーザー ID を使用してプロファイルを特定します。このため、各ユーザー ID は、VSAM ファイルに保管されている 1 つのプロファイルしか持てません。
プロファイルはアクティブか非アクティブかのいずれかです。プロファイルがアクティブの場合、DTCN は、そのプロファイルと、プロファイルに指定されているリソースを使用するトランザクションの突き合わせを試行します。 DTCN は、トランザクションと非アクティブなプロファイルの突き合わせは試行しません。 プロファイルをアクティブまたは非アクティブにするには、「Debug Tool CICS Control - Primary Menu (Debug Tool CICS 制御 - 1 次メニュー)」パネル (メイン DTCN パネル) を使用して、 プロファイルをアクティブまたは非アクティブにしてから保存します。リポジトリーが VSAM ファイルの場合、DTCN によって端末が切断されていることが検出されると、プロファイルが非アクティブに設定されます。
DTCN プロファイルを作成して保管するには、以下のステップを行ってください。
DTCN Debug Tool CICS Control - Primary Menu S07CICPD
* VSAM storage method * 1
Select the combination of resources to debug (see Help for more information)
Terminal Id ==> 0090
Transaction Id ==>
LoadMod::>CU(s) ==> ::> ==> ::>
==> ::> ==> ::>
==> ::> ==> ::>
==> ::> ==> ::>
User Id ==> CICSUSER
NetName ==>
IP Name/Address ==>
Select type and ID of debug display device
Session Type ==> MFI MFI, TCP
Port Number ==> TCP Port
Display Id ==> 0090
Generated String: TEST(ALL,'*',PROMPT,'MFI%0090:*')
Repository String: No string currently saved in repository
Profile Status: No Profile Saved. Press PF4 to save current settings.
PF1=HELP 2=GHELP 3=EXIT 4=SAVE 5=ACT/INACT 6=DEL 7=SHOW 8=ADV 9=OPT 10=CUR TRM
行 1 には、DTCN によってプロファイルが一時ストレージ・キューまたは VSAM ファイルに保存されることを示すメッセージが表示されます。一部の入力フィールドには、以下のいずれかのソースから値が入力されます。
これらのフィールドを変更しない場合は、この後の 2 つのステップをスキップし、ステップ 4 に進むことができます。このパネルの設定を変更する場合は、次のステップに進んでください。
DTCN Debug Tool CICS Control - Menu 2 S07CICPD
Select Debug Tool options
Test Option ==> TEST Test/Notest
Test Level ==> ALL All/Error/None
Commands File ==> *
Prompt Level ==> PROMPT
Preference File ==> *
EQAOPTS File ==>
Any other valid Language Environment options
==>
PF1=HELP 2=GHELP 3=RETURN
いくつかの入力フィールドには、フルスクリーン・モードで、この端末で実行されるタスクについて Debug Tool を始動するデフォルト値が入っています。デフォルトを変更しない場合は、このステップの残りをスキップし、ステップ 5 に進むことができます。このパネルの設定を変更する場合は、このステップを続けてください。
DTCN Debug Tool CICS Control - Advanced Options S07CICPD
Select advanced program interruption criteria:
Commarea Offset ==> 0
Commarea Data ==>
Container Name ==>
Container Offset ==> 0
Container Data ==>
URM Debugging ==> NO
Default offset and data representation is decimal/character.
See Help for more information.
PF1=HELP 2=GHELP 3=RETURN
データは、COMMAREA またはコンテナーのいずれかに指定することができますが、両方に指定することはできません。このパネルを使用して、ユーザー置き換え可能モジュール (URM) をデバッグするかどうかを指定することができます。これらのフィールドの詳細については、以下のいずれかの作業を行ってください。
これで、CICS システムで実行され、前のステップで指定したリソースに一致するタスクが、Debug Tool を開始することになります。
このトピックで説明している内容に関して詳しくは、以降のトピックを参照してください。
CICS 領域でアクティブなすべての DTCN プロファイルを表示するには、以下のステップを実行します。
DTCN Debug Tool CICS Control - All Sessions S07CICPD
Overtype "_" with "D" to delete, "A" to activate, "I" to inactivate a profile.
Owner Sta Term Tran User Id NetName Applid Display Id
_ 0090 ACT 0090 TRN1 USER1 0072 S07CICPD 0090
LoadMod::>CU(s) CIC9060 ::> CS9060 CBLAC?3 ::> *9361
________ ::> ________ ________ ::> ________
________ ::> ________ ________ ::> ________
________ ::> ________ ________ ::> ________
IP Name/Addr ____________________________________________________
列のタイトルは、以下のように定義されています。
DTCN は、CEECOPT または CEEROPT で CICS 領域に提供される、言語環境プログラム の NOTEST オプションも読み取ります。設定ファイル名などのサブオプションは、DTCN にその他のデフォルト値を提供する NOTEST オプションによって提供できます。
このトピックで説明している内容に関して詳しくは、以降のトピックを参照してください。
このトピックでは、DTCN 1 次メニュー画面で表示されるフィールドについて説明します。
以下に、デバッグするプログラムまたはトランザクションの特定に役立つように指定できるリソースをリストします。
EQAOPTS DTCNFORCETERMID コマンドに YES が指定されている場合は、端末 ID を指定する必要があります。EQAOPTS DTCNFORCETERMID コマンドについては、「Debug Tool カスタマイズ・ガイド」または「Debug Tool リファレンスおよびメッセージ」の『EQAOPTS コマンド』トピックを参照してください。
そのトランザクションにより実行されるプログラムの中で、デバッグを希望するプログラムのところで Debug Tool を開始するには、Program Id(s) フィールドでそのプログラム名を指定します。
EQAOPTS DTCNFORCETRANID コマンドに YES が指定されている場合は、トランザクション ID を指定する必要があります。EQAOPTS DTCNFORCETRANID コマンドについては、「Debug Tool カスタマイズ・ガイド」または「Debug Tool リファレンスおよびメッセージ」の『EQAOPTS コマンド』トピックを参照してください。
使用上の注意:
EQAOPTS DTCNFORCEUSERID コマンドに YES が指定されている場合は、ユーザー ID を指定する必要があります。EQAOPTS DTCNFORCEUSERID コマンドについては、「Debug Tool カスタマイズ・ガイド」または「Debug Tool リファレンスおよびメッセージ」の『EQAOPTS コマンド』トピックを参照してください。
EQAOPTS DTCNFORCENETNAME コマンドに YES が指定されている場合は、「NetName」フィールドに値を指定する必要があります。EQAOPTS DTCNFORCENETNAME コマンドについては、「Debug Tool カスタマイズ・ガイド」または「Debug Tool リファレンスおよびメッセージ」の『EQAOPTS コマンド』トピックを参照してください。
EQAOPTS DTCNFORCEIP コマンドに YES が指定されている場合は、IP アドレスを指定する必要があります。EQAOPTS DTCNFORCEIP コマンドについては、「Debug Tool カスタマイズ・ガイド」または「Debug Tool リファレンスおよびメッセージ」の『EQAOPTS コマンド』トピックを参照してください。
以下に、実行するデバッグ・セッションのタイプを示すのに使用できるフィールドをリストします。
「セッション・タイプ」フィールドに「TCP」と入力した場合、リモート・デバッガーを実行しているワークステーションの IP アドレスまたはホスト名を決定します。以下のステップを実行して、「表示 ID (Display Id)」フィールドの値を変更します。
「セッション・タイプ」フィールドに「MFI」と入力した場合、以下の規則に従って、DTCN によって「表示 ID (Display Id)」フィールドに値が入力されます。
以下のいずれかの端末モードを使用して、3270 端末に Debug Tool を表示することができます。
以下に、デバッグ・セッションに使用する TEST ランタイム・オプション、その他のランタイム・オプション、コマンド・ファイル、および設定ファイルの指定に使用できるフィールドをリストします。
このフィールドをブランクのままにして、EQAOPTS COMMANDSDSN コマンドを使用してデフォルトのユーザー・コマンド・ファイルの値を指定する場合、Debug Tool は以下のタスクを実行してコマンド・ファイルを検出します。
コマンド・ファイルを指定しない場合に、Debug Tool が EQAOPTS COMMANDSDSN コマンドで指定されたファイルを使用しないようにするには、コマンド・ファイルに NULLFILE を指定します。
EQAOPTS COMMANDSDSN コマンドの指定方法については、「Debug Tool カスタマイズ・ガイド」または「Debug Tool リファレンスおよびメッセージ」の『EQAOPTS コマンド』トピックを参照してください。
このフィールドをブランクのままにして、EQAOPTS PREFERENCESDSN コマンドを使用してデフォルトのユーザー設定ファイルの値を指定する場合、Debug Tool は以下のタスクを実行して設定ファイルを検出します。
設定ファイルを指定しない場合に、Debug Tool が EQAOPTS PREFERENCESDSN コマンドで指定されたファイルを使用しないようにするには、設定ファイルに NULLFILE を指定します。
EQAOPTS PREFERENCESDSN コマンドの指定方法については、「Debug Tool カスタマイズ・ガイド」または「Debug Tool リファレンスおよびメッセージ」の『EQAOPTS コマンド』トピックを参照してください。
以下に、デバッグするトランザクションおよびプログラムの特定に役立つ、COMMAREA またはコンテナーを介して渡されるデータの指定に使用できるフィールドの説明を記載します。
CADP は、CICS Transaction Server for z/OS バージョン 2 リリース 3 以降で提供される対話式トランザクションです。 CADP は永続的デバッグ・プロファイルの維持に役立ちます。このプロファイルには、デバッグ対象のタスクを識別する CICS リソース名のパターンが含まれています。 CICS プログラムが開始されると、CICS は、CADP プロファイルで指定されているリソースと一致するリソースを持つプロファイルを検出するために、実行中のリソースのマッチングを試行します。このパターン・マッチングの間、CICS はアクティブ・タスクと一致するリソースの数が最も多い、最適なマッチング・プロファイルを選択します。
CADP の使用前に、以下の作業を実行していることを確認します。
CADP ユーティリティー・トランザクションの使用方法の手順については、「CICS Supplied Transactions」を参照してください。ユーザー置き換え可能モジュール (URM) のデバッグを行う予定の場合、「その他の 言語環境プログラム・オプション」フィールドに「ENVAR("INCLUDEURM=YES")」を指定してください。
このトピックで説明している内容に関して詳しくは、以降のトピックを参照してください。
Debug Tool を開始して、言語環境プログラムのランタイム環境下で実行されないプログラムをデバッグできます。これには、既存のデバッグ・プロファイル保守トランザクション DTCN および CADP を使用します。DTCN および CICS Transaction Server for z/OS バージョン 2 リリース 3 より前のバージョンの CICS を使用する必要があります。
CICS の非言語環境プログラムのプログラムをデバッグするには、Debug Tool の非言語環境プログラム出口をあらかじめ開始しておく必要があります。
CICS で実行される非 Language Environment アセンブラー・プログラムまたは非言語環境プログラム COBOL プログラムをデバッグするには、 プログラムの開始前に、必要な Debug Tool グローバル・ユーザー出口を開始する必要があります。 Debug Tool には、非言語環境アプリケーションのデバッグに役立つグローバル・ユーザー出口 (XPCFTCH、XEIIN、XEIOUT、XPCTA、および XPCHAIR) が用意されています。これらの出口は、DTCX トランザクション (Debug Tool に付属) を使用するか、または CICS 領域の始動時に実行される PLTPI プログラムを使用して開始できます。 DTCXXO は、CICS での Debug Tool 用の非言語環境出口を活動化します。 DTCXXF は、CICS での Debug Tool 用の非言語環境出口を非活動化します。
このトピックで説明している内容に関して詳しくは、以降のトピックを参照してください。
「DTCN Options」パネル (PF9) または「CADP Create/Modify Debugging Profile」パネルを使用してデバッグ・プロファイルを定義するときには、言語環境プログラムで実行されないプログラムをデバッグする際のデバッグ・セッションで有効になる限定セットのランタイム・オプションを引き渡すことができます。以下のランタイム・オプションを渡すことができます。
このトピックで説明している内容に関して詳しくは、以降のトピックを参照してください。