Hitachi

COBOL2002 Professional Tool Kit COBOLソース解析ガイド


5.3.1 [解析オプション設定]画面

[解析オプション設定]画面では,コンパイラオプション,登録集原文の格納フォルダ,COBOLソースファイルのコメント名の抽出オプションなどを設定します。

〈この項の構成〉

(1) [コンパイラオプション]タブ

[解析オプション設定]画面の[コンパイラオプション]タブには,COBOLソースファイルのコンパイルに必要なオプションと環境変数を指定します。

図5‒4 [解析オプション設定]画面の[コンパイラオプション]タブ

[図データ]

[オプション]

解析するCOBOLソースファイルのコンパイル時に指定するコンパイラオプションを指定します。コンパイラオプションについては,マニュアル「COBOL2002 ユーザーズガイド」のコンパイラオプションの説明を参照してください。

複数のコンパイラオプションを指定する場合は,空白文字で区切って指定してください。

[コンパイラオプション]タブで指定できるコンパイラオプションについては,「10.4 COBOLソース解析で使用できるコンパイラオプション」を参照してください。指定できないコンパイラオプションを指定すると,指定した内容は無視されます。

ポイント

コンパイラオプションの文字列は,COBOL2002の開発マネージャのプロジェクトの設定画面からコピー&ペーストできます。コピー&ペーストを使用すると,タイプインする手間が省けます。

[コンパイラ環境変数]

COBOL2002のコンパイラ環境変数を指定します。

COBOLソース解析を起動する前に設定してある「CBL」で始まる環境変数は,[コンパイラ環境変数]にデフォルトで追加されます。

Windowsに同じ環境変数がすでに設定されている場合は,[コンパイラ環境変数]に指定した値が優先されます。ただし,環境変数CBLLIBは,設定済みの環境変数の値に[コンパイラ環境変数]に指定した値が追加されて解析されます。このとき,[コンパイラ環境変数]に指定した値の優先順位が高くなります。

[コンパイラオプション]タブで指定できるコンパイラ環境変数については,「10.5 COBOLソース解析で使用できるコンパイラ環境変数」を参照してください。指定できないコンパイラ環境変数を指定すると,指定した内容は無視されます。

ここで指定した環境変数は,ユーザ環境変数として登録され,COBOLソースファイルの解析時に有効になります。

[新規]ボタン

追加する環境変数を選択する[新しい環境変数]ダイアログが表示されます。

[編集]ボタン

[コンパイラ環境変数]で選択されている環境変数の値を変更する[環境変数の編集]画面が表示されます。

[削除]ボタン

[コンパイラ環境変数]で選択されている環境変数が削除されます。

注意事項

[削除]ボタンをクリックすると,選択した環境変数がすぐに削除されます。設定を復元するときは,[解析オプション設定]画面の[キャンセル]ボタンをクリックしてください。

(2) [登録集原文指定]タブ

[解析オプション設定]画面の[登録集原文指定]タブでは,登録集原文が格納されているフォルダおよび登録集原文の拡張子を指定します。

登録集原文フォルダでは,次の条件を満たすファイルが解析対象になります。

上記以外の拡張子があるファイルを解析対象にする場合は,[登録集原文の拡張子]に該当する拡張子を指定してください。

注意事項
  • 登録集原文名に「¥」を含む場合,解析エラーとなり,ソース解析情報は生成されません。

  • 登録集原文フォルダに,ファイル名が同じで,拡張子の有無または拡張子が異なるファイルが格納されている場合(例:GENBUN,GENBUN.cbl,GENBUN.abcを格納),1つだけが解析対象になり,残りのファイルは解析対象になりません。解析を実行する前に,ファイル名が同じファイルが登録集原文フォルダに格納されていないかどうかを確認してください。

図5‒5 [解析オプション設定]画面の[登録集原文指定]タブ

[図データ]

[登録集原文フォルダ]

登録集原文の解析対象になるフォルダのパスが表示されます。登録集原文フォルダを登録するには,[登録集原文フォルダ]に,登録集原文フォルダをドラッグ&ドロップするか,[追加]ボタンから選択してください。

解析オプションの環境変数CBLLIBが設定されている場合には,その値が登録集原文フォルダに表示されます。

[登録集原文フォルダ]に何も設定していない場合で,システム/ユーザ環境変数CBLLIBに値が設定されているときは,その値が登録集原文フォルダに表示されます。

なお,登録集原文フォルダを登録すると,解析オプションの環境変数CBLLIBも同じ値で更新されます。

ポイント

原文名で指定したファイルは,拡張子,フォルダの2つの条件で検索され,拡張子による検索順序が優先されます。また,-V3ConvtNameオプションを指定した場合,原文名定数に指定したファイルは,フォルダによる検索順序でだけ検索されます。

拡張子による検索順序とフォルダによる検索順序を次に示します。

  • 拡張子による検索順序

    1:固定形式拡張子([解析オプション設定]画面の環境変数CBLFIXまたは[登録集原文指定]タブの[登録集原文の拡張子]で設定)

    2:自由形式拡張子(環境変数CBLFREEで設定)

    3:.cbl

    4:.cob

    5:.ocb

    6:.cbf

    7:.ocf

  • フォルダによる検索順序

    1:登録集環境変数で設定したフォルダ

    2:[解析オプション設定]画面の環境変数CBLLIB

    3:COBOLソースファイルが格納されるフォルダ

注※

[登録集原文指定]タブの[登録集原文フォルダ]で設定された登録集原文フォルダの内容と同じです。

例えば,固定形式拡張子と自由形式拡張子がともに設定されていない場合,「ファイル名.cbl」で1〜3の順にフォルダを検索し,目的のファイルがなければ,次に「ファイル名.cob」で同様に検索されます。

[追加]ボタン

[フォルダの参照]ダイアログが表示されます。解析する登録集原文が格納されているフォルダを選択します。

[削除]ボタン

[登録集原文フォルダ]で選択されているフォルダが削除されます。解析または生成対象から削除したいときにクリックします。

[登録集原文の拡張子]

解析対象とする登録集原文の拡張子を指定します。

次に示す拡張子はデフォルトで解析対象になるため,指定する必要はありません。

  • 拡張子が「.cbl」「.cob」「.ocb」「.cbf」「.ocf」のファイル

  • COBOLコンパイラの環境変数CBLFIX,CBLFREEに設定されている拡張子のファイル

拡張子は,「.」(ドット)から入力してください。複数の拡張子を指定する場合は,拡張子と拡張子の間に半角空白を入力してください。半角空白を含めて50文字まで入力できます。

(例)
.aaa△.bbb△.ccc

(凡例)

 △:半角空白

(3) [主プログラム指定]タブ

[解析オプション設定]画面の[主プログラム指定]タブには,解析するCOBOLソースファイルの主プログラムを認識する方法を指定します。

ポイント

[主プログラム指定]タブの設定内容で主プログラムと認識されたプログラムは,解析結果の未使用プログラムの対象から除外されます。

[主プログラムを自動認識しない]オプションボタンを選択し,[主プログラム指定]を省略すると,どこからも呼び出されていない外部プログラムは,すべて未使用プログラムの対象になります。

図5‒6 [解析オプション設定]画面の[主プログラム指定]タブ

[図データ]

[主プログラムの認識方法]

主プログラムを自動認識する場合は,[主プログラムを自動認識する]オプションボタンを選択します。さらに,先頭の最外側プログラムのUSING指定条件をチェックボックスで指定します。チェックボックスがすべてオフの場合は,主プログラムを自動認識しません。

  • 引数なし

    引数なしの先頭の最外側プログラムを主プログラムとします。

  • 引数1個で英数字である

    引数1個で英数字である先頭の最外側プログラムを主プログラムとします。

  • 引数2個で2進整数とポインタである

    引数2個で2進整数とポインタである先頭の最外側プログラムを主プログラムとします。

  • RETURNING指定なし

    RETURNING指定なしの先頭の最外側プログラムを主プログラムとします。

主プログラムを自動認識しない場合は,[主プログラムを自動認識しない]オプションボタンを選択します。

[主プログラム名の指定]

実行可能プログラムの主プログラムを明示して解析するときに,PROGRAM-ID段落に記述されたプログラム名で主プログラムを指定します。指定したプログラムは,デッドコード候補の警告の対象から除外されます。複数の主プログラム名を指定する場合は,コンマまたは改行で区切って指定します。

(4) [プログラムコメント行抽出]タブ

[解析オプション設定]画面の[プログラムコメント行抽出]タブでは,コメント行の文字列を抽出するかどうか,およびプログラム名とコメント行の位置関係を指定できます。

コメント行の文字列を抽出しない場合は,設定する必要はありません。

図5‒7 [解析オプション設定]画面の[プログラムコメント行抽出]タブ

[図データ]

[コメント行の文字列を抽出する]

コメント行の文字列を抽出するかどうかを選択します。チェックボックスにチェックすると,抽出位置を選択できます。

文字列抽出の対象となるコメント行を次に示します。

  • 固定形式正書法で,7カラムに「*」,「/」がある行

  • 自由形式正書法で,最初の文字に「*」,「/」がある行

  • 「*>」で始まる行

[プログラム名とコメント行の位置関係]

プログラム名(PROGRAM-ID)の前と後ろのどちらのコメント行を抽出するか選択します。

  • [プログラム名の前]

    プログラム名(PROGRAM-ID)の前のコメント行を抽出するときに選択します。

  • [プログラム名の後]

    プログラム名(PROGRAM-ID)の後ろのコメント行を抽出するときに選択します。

[コメント行の抽出指定]

抽出するコメント行を指定できます。

  • [コメント行の後の文字列]

    [コメント行の文字]に入力した文字から改行までの文字列を抽出します。

  • [コメント行の次行]

    [コメント行の文字]に入力した文字がある行の次のコメント行を抽出します。

  • [コメント行の文字]

    COBOLソースファイルの8カラム目から記述するコメント行の文字列を指定します。65バイトまでの文字列を指定できます。

    全角空白およびタブコードを使用できません。使用すると,生成されるソース解析情報にコメント行の文字列または節コメント行の文字列が出力されません。

  • [プログラム名から[ ]行目(1〜99)の位置にあるコメント行]

    プログラム名(PROGRAM-ID)を基準として,前後の行数を指定して,コメント行を抽出します。プログラム名(PROGRAM-ID)の前か後ろのコメント行かは,[プログラム名とコメント行の位置関係]で指定します。1〜99以外を指定すると,1が仮定されます。なお,この項目を選択すると[コメント行の文字]は指定できません。

Tコメントを抽出する例

[図データ]

  1. [コメント行の文字列を抽出する]チェックボックスをチェックします。

  2. TコメントはPROGRAM-IDより前にあるので,[PROGRAM-IDとコメント行の位置関係]では[PROGRAM-IDの前]オプションを選択します。

    プログラムのコメントの抽出対象は,次のDIVISIONが現れる前までです。

  3. [コメント行の抽出指定]の[コメント行の後の文字列]オプションを選択します。

  4. [コメント行の文字]テキストボックスには「T」を指定します。

    この指定で抽出対象となる文字列は,「オプション処理1 2 3 4 5 6 7 8 9」です。

プログラムコメント行抽出の使用例については,「3.4 コメント行の文字列を抽出する」を参照してください。

(5) [節コメント行抽出]タブ

[解析オプション設定]画面の[節コメント行抽出]タブでは,コメント行にある節名(節コメント行)を抽出するかどうか,および節コメントとプログラム名の位置関係を指定できます。

節コメント行の文字列を抽出しない場合は,設定する必要はありません。

図5‒8 [解析オプション設定]画面の[節コメント行抽出]タブ

[図データ]

[コメント行の文字列を抽出する]

節コメント行を抽出するかどうかを選択します。チェックボックスにチェックすると,抽出位置を選択できます。ただし,節の見出しがない「DUMMY_SEC_n」の節コメント行は抽出できません。

文字列抽出の対象となるコメント行を次に示します。

  • 固定形式正書法で,7カラムに「*」,「/」がある行

  • 自由形式正書法で,最初の文字に「*」,「/」がある行

  • 「*>」で始まる行

[節名とコメント行の位置関係]

節名(SECTION)の前と後ろのどちらの節コメント行を抽出するか選択します。

  • 節名の前

    節名(SECTION)の前の節コメント行を抽出するときに選択します。

  • 節名の後

    節名(SECTION)の後ろの節コメント行を抽出するときに選択します。

[コメント行の抽出指定]

抽出する節コメント行を指定できます。

  • [コメント行の後の文字列]

    [コメント行の文字]に入力した文字から改行までの文字列を抽出します。

  • [コメント行の次行]

    [コメント行の文字]に入力した文字がある行の次のコメント行を抽出します。

  • [コメント行の文字]

    COBOLソースファイルの8カラム目から記述するコメント行の文字列を指定します。65バイトまでの文字列を指定できます。

    全角空白およびタブコードを使用できません。使用すると,生成されるソース解析情報にコメント行の文字列または節コメント行の文字列が出力されません。

  • [節名から[ ]行目(1〜99)の位置にあるコメント行]

    節名(SECTION)を基準として,前後の行数を指定して,コメント行を抽出します。節名(SECTION)の前か後ろのコメント行かは,[節名とコメント行の位置関係]で指定します。1〜99以外を指定すると,1が仮定されます。なお,この項目を選択すると[コメント行の文字]は指定できません。

Gコメントを抽出する例

[図データ]

  1. [コメント行の文字列を抽出する]チェックボックスをチェックします。

  2. Gコメントは節の宣言より後ろにあるので,[PROGRAM-IDとコメント行の位置関係]では[節名の後]オプションを選択します。

    プログラムのコメントの抽出対象は,次のDIVISIONが現れる前までです。

  3. [コメント行の抽出指定]の[コメント行の後の文字列]オプションを選択します。

  4. [コメント行の文字]テキストボックスには「G」を指定します。

    この指定で抽出対象となる文字列は,「オプション処理1 2 3 4 5 6 7 8 9」です。

節コメント行抽出の使用例については,「3.4 コメント行の文字列を抽出する」を参照してください。

(6) [呼出先プログラム解決]タブ

[解析オプション設定]画面の[呼出先プログラム解決]タブでは,解析対象のCOBOLソースファイルに呼び出し先のプログラム(COBOLサービスルーチンなど)が含まれていないときに,呼び出すCOBOLサービスルーチンファイルを指定します。

図5‒9 [解析オプション設定]画面の[呼出先プログラム解決]タブ

[図データ]

[COBOL2002 サービスルーチンファイル]

サービスルーチンファイル(svwファイル)を指定します。プログラム内でサービスルーチンを使用する場合に,サービスルーチンをデッドコード警告の対象から除外できます。初期表示では,何も表示されません。

指定できるCOBOLサービスルーチンファイルを次に示します。これらのサービスルーチンファイルは,COBOL2002でテンプレートとして提供されます。

  • COBOL85サービスルーチン VOS3用.svw

  • COBOL2002XML連携機能サービスルーチン.svw

  • COBOL2002サービスルーチン Windows用.svw

  • COBOL2002Javaプログラム呼び出し機能サービスルーチン.svw

また,ユーザー独自のCOBOLサービスルーチンファイル(svwファイル)を作成して,解析オプションに登録することもできます。

[追加]ボタン

[COBOLサービスルーチンファイルの参照]ダイアログが表示されます。デッドコード警告の対象から除外するサービスルーチンが指定されたCOBOLサービスルーチンファイルを選択します。

[削除]ボタン

[COBOL2002 サービスルーチンファイル]で選択されているCOBOLサービスルーチンファイルが削除されます。

[絶対パス名]

[COBOL2002 サービスルーチンファイル]で選択されているCOBOL2002 サービスルーチンファイルの絶対パス名が表示されます。

[COBOL2002 一意名呼び出し対応付けファイル]

一意名の自動認識で解析できない一意名のプログラム呼び出しがある場合に,一意名呼び出し対応付けファイル(idcファイル)の絶対パスを指定します。プログラムを一意名で呼び出すときに,一意名と呼び出し先のプログラムを対応づけることでプログラム階層図の呼び出し関係を明確にし,呼び出し先のプログラムをデッドコードの警告の対象から除外します。

一意名呼び出し対応付けファイル(idcファイル)は,独自に作成して登録してください。ファイルの作成方法については,「付録B.1 一意名呼び出し対応付けファイル」を参照してください。

[参照]ボタン

[COBOL一意名呼び出し対応付けファイルの参照]ダイアログが表示されます。