Rational Developer for System z

「実行階層」のモード

「実行階層」ビューには、2 つのモードがあります。その 2 つのモードでは、プログラムの制御フローを、実行元と実行先のいずれか一方の視点から注目した状態を表示できます。

実行元階層
選択内容に対して制御権を移動できるすべてのエレメントが表示されます。例えば、Copy-input-to-output という段落があるとすると、「実行元階層」には、Perform Copy-input-to-output などのステートメントによって、その段落に制御権を移動できるすべての段落とセクションが表示されます。
実行先階層
選択内容から参照されるすべてのエレメントを表示します。 例えば、Copy-input-to-output という段落があるとすると、「実行先階層」には、Perform Read-next-input-data などのステートメントによって、選択した段落の外側に制御権を移動できるステートメントが表示されます。 実行階層は任意にネストできるため、「実行階層」は、このネストを全探索できるツリー表示になっています。
「実行階層」 ビューには、以下の 2 つのモードがあります。

実行先を強調表示した COBOL コードの例を以下に示します。

* ****************************************************************************
* Utility method for copying input data from the input file to the output file
* ****************************************************************************
  Copy-input-to-output.
* Loop until end of file for input file
     Move "0" to Input-eof
     Perform until
             NOT inputfile-success OR
             NOT outputfile-success
         PERFORM  Read-next-input-data 
         IF inputfile-success
            PERFORM Write-output-data
         End-IF
         End-perform.
      Copy-input-to-output-EXIT.
         EXIT.

* *******************************************
* Utility method for reading from input file
* *******************************************
  Read-input-data.
*    Assume text to be read into Temp-data from IN-INTERNAL-FILE
     Move Spaces to Temp-data.

同じ COBOL プログラムで実行元を強調表示した例を以下に示します。

 Procedure DIVISION USING PARMS.
* Open the input and/or output files
     PERFORM Open-files.

* Process the user request

     EVALUATE ACTION
         WHEN DO-COPY-DATASET
             PERFORM  Copy-input-to-output. 
         WHEN OTHER
             CONTINUE.
     END-EVALUATE.
     MOVE IN-FILE-STATUS
          TO PARM-IN-FILE-STATUS.
     MOVE OUT-FILE-STATUS
          TO PARM-OUT-FILE-STATUS.
     MOVE IN-VSAM-CODE
          TO PARM-IN-VSAM-CODE.
     MOVE OUT-VSAM-CODE
          TO PARM-OUT-VSAM-CODE.
     PERFORM Close-files.
     goback.

* ***************************************************
* Utility method to open the input and/or output file
* ***************************************************
  Open-files.
* Open the input file
     OPEN I-O IN-INTERNAL-FILE

フィードバック