ISPFの画面データをトレースする

By 神居 - Posted: 2014/06/20 Last updated: 2014/06/20 - Leave a Comment



ISPFでの表示画面のデータ(3270データストリーム)は、ISPFのシステム・コマンドでトレース・データとして採取することができます。画面データのトレースなど、普通にISPFを使う分には不要な作業ですが、何らかのトラブルなどでデータの採取が必要になったり、プログラム作成のためにISPFの画面データを参考にしたい、といった場合に役立ちます。
一般的に端末画面のデータ・トレースというと、GTFを起動してVTAMのトレース・コマンドを入れる、ということになりますが、この方法ではSTCタスクの起動やコンソール操作の権限がないと作業できません。ISPFを起動してからの画面データで事足りるなら、GTF起動やVTAMコマンドの実行などのコンソール操作なしで、画面データを記録することができます。

最初にトレースの出力先データセットを割り振ります。DD名はISPSNAPです。出力先はSYSOUTにするのが簡単でしょう。
ALLOCコマンドはTSOコマンドなので、オプション6のコマンド・シェルか、CMDEコマンドを入力してTSOコマンド入力パネルを表示して入力します。

トレースの開始は「ENVIRON TERMTRAC ON」コマンドです。コマンド入力後、パネルのショート・メッセージ域(パネルの右上)に「TERMTRAC ACTIVATED」が表示されたらトレース開始です。後はトレースしたい画面を表示させます。必要な画面を表示させたら「ENVIRON TERMTRAC OFF」コマンドでトレースを止めます。今度は「SNAP DUMP GENERATED」とメッセージが出ます。
ISPSNAPをSYSOUTに割り振った場合、トレース結果はSDSFで自分のTSOユーザー空間をDAパネルなどで選択しアクション文字「?」でJDSパネルを開き、ISPSNAPのSYSOUTデータセットの内容を表示します。


  PSW AT ENTRY TO SNAP    078D1000  8536B74E  ILC  02  INTC  0033
-STORAGE
ENVIRON TERMTRAC BUFFER
00057000 E3C5D9D4 E3D9C1C3 0005AB60 00000000    00000000 00000000 00000000 00000000   *TERMTRAC...-....................*
00057020 E3D7E4E3 D5C54040 00000000 80000000    0000FF04 E2D7C6D7 00000028 03021258   *TPUTNE  ............SPFP........*
00057040 00000000 81000000 F1C31100 DC2902C0    E842F7E3 C5D9D4E3 D9C1C340 8183A389   *....a...1C.....{Y.7TERMTRAC acti*
00057060 A581A385 841100FD 3C013F40 1100FD13    00000000 00000000 00000000 00000000   *vated...... ....................*
00057080 E3D7E4E3 D5C5D940 00057020 00000000    00000000 00000000 00000000 00000000   *TPUTNER ........................*
000570A0 E3C7C5E3 40404040 00057080 00000A80    81021258 E2D7C6C7 00000000 00000000   *TGET    ........a...SPFG........*
000570C0 E3C7C5E3 D9404040 000570A0 00000048    00000000 00000048 7DC37E11 C37DE240   *TGETR   ................'C=.C'S *
000570E0 40404040 40404040 40404040 40404040  40404040 40404040 40404040 40404040   *                                *
      LINE 00057100  SAME AS ABOVE
00057120 E3D7E4E3 D5C54040 000570C0 80000000    0000FF04 E2D7C6D7 0000038B 03021258   *TPUTNE  ...{........SPFP........*
00057140 00000000 81000000 F1C31100 002902C0   F842F711 00032841 F4C42800 0089A297   *....a...1C.....{8.7.....4D...isp*
00057160 9381A811 000A2902 C0C842F7 4011000C  2841F4C6 28000089 93A38599 11001428   *lay.....{H.7 .....4F...ilter....*
00057180 41F4E528 00008985 A6110018 2902C0C8  42F74011 001A2841 F4D72800 00998995   *.4V...iew.....{H.7 .....4P...rin*

端末への出力はTPUT、端末からの入力はTGETで示されます。太字の部分が実際の画面のデータの始まりの部分です。

Posted in システムプログラマーのための手引きいろいろ, 知っておくと便利なテクニックなど • • Top Of Page