Hitachi

COBOL2002 Professional Tool Kit データ影響波及分析ガイド


cbldiaコマンド − 影響範囲を解析した結果をCSVファイルおよびタグファイルに出力する

cbldiaコマンドは,影響範囲を解析して,解析結果をCSVファイルおよびタグファイルに出力するときに使います。なお,影響波及する対象がない場合,解析結果はファイルに出力されません。

〈このページの構成〉

形式

影響範囲の解析を実行して,その解析結果をCSVファイルおよびタグファイルに出力する場合

コマンドヘルプを表示する場合

cbldia   または
cbldia -?  または
cbldia -Help

オプション

-ControlFlow

制御フローを考慮した解析機能を使用する場合に指定します。

このオプションは,必ず-Lineオプションと同時に指定してください。

このオプションは,-ProgramImpactLevelオプションと同時に指定できません。

次のどちらかに該当する場合は,エラーメッセージを出力して,処理を中止します。

  • 環境変数CBLDIA_CREATE_CONTROLFLOWに「FALSE」を指定して作成されたデータベースの場合

  • -Dataオプションでデータ名を指定して,異なるプログラム間,ファイル間で複数のデータ項目が該当する場合

なお,このオプションを指定しない場合は,制御フローを考慮した解析を使用しないで影響範囲を解析します。

{-Data データ名〔;〔プログラム名〕 〔;ファイル名〕〕}...

調査対象にするデータ項目を次の順に指定します。

  • データ名

    影響波及調査ウィンドウの[調査対象選択]ダイアログで指定できるデータ項目名を指定します。指定したデータ名が複数存在する場合は,それらすべてを調査対象に指定したものと仮定されます。

    登録集原文に記述されたデータ名を指定した場合,その登録集原文のデータ名を基にソースプログラムに展開したデータ項目すべてが調査対象に設定されます。なお,登録集原文に記述されたデータ名を指定する場合は,登録集原文ファイルのデータ記述項で宣言されているデータ名を指定してください。また,-Copyオプションもあわせて指定してください。

  • プログラム名

    影響波及調査ウィンドウの[調査対象選択]ダイアログで指定できるプログラム名を指定します。プログラム名を省略した場合,すべてのプログラムが対象となります。

  • ファイル名

    影響波及調査ウィンドウの[調査対象選択]ダイアログで指定できるファイル名を指定します。ファイル名を省略した場合,すべてのファイルが対象となります。

各項目の入力規則については,「10.4 [調査対象選択]ダイアログ」を参照してください。

-Dataオプションを複数指定して,複数の調査対象を同時に指定することもできます。ただし,-ControlFlowオプション指定時は,複数の調査対象を同時に指定して解析できないため,このオプションを複数指定した場合はエラーメッセージを出力して,処理を中止します。

検索結果の上限は2,147,483,647個です。上限を超える場合,エラーメッセージを出力して処理を中止します。

-Line 行番号

COBOLプログラム内で調査対象とする実行文の行番号を,1〜999999の整数の範囲で指定します。

このオプションは,-ControlFlowオプションの指定がある場合にだけ有効となります。-ControlFlowオプションの指定がない場合,このオプションの指定は無効になります。

なお,このオプションの引数に指定した行番号に,-Dataオプションの引数で指定したデータ名が存在しない場合は,エラーメッセージを出力して,処理を中止します。

-Column カラム番号

COBOLプログラム内にある調査対象のカラム番号を,1〜255の整数の範囲で指定します。

このオプションは,同一行番号に複数の同一のデータ項目がある場合にだけ,必ず指定してください。この場合,指定した行番号とカラム番号を基に,調査対象のデータ項目を判別します。

このオプションは,-ControlFlowオプションの指定がある場合にだけ有効となります。-ControlFlowオプションの指定がない場合,このオプションの指定は無効になります。

なお,このオプションの引数に指定したカラム番号に,-Dataオプションの引数で指定したデータ名が存在しない場合は,エラーメッセージを出力して,処理を中止します。

-Copy

検索の種別として,登録集原文で記述されているデータ項目を検索する場合に指定します。省略した場合は,ソースプログラム内で使用されているデータ項目を検索します。

このオプションは,影響波及調査ウィンドウの[調査対象選択]ダイアログの[検索の種別]で指定できる検索条件と同じ役割です。詳細は,「10.4 [調査対象選択]ダイアログ」を参照してください。

-Direction〔{,Backward|,Forward}+〕

解析方向を指定します。両方向を同時に指定できます。省略した場合は,両方向を同時に指定したものと仮定されます。

-Direction,Backwardを指定すると,影響波及元方向に解析します。

-Direction,Forwardを指定すると,影響波及先方向に解析します。

-SubSystem サブシステム名〔;サブシステム名〕...

解析対象にするサブシステム名を指定します。省略した場合はすべてのサブシステムが解析対象となります。

-Filter プログラム情報フィルタリングファイル名

プログラム情報フィルタリングファイルを絶対パスまたはカレントフォルダからの相対パスで指定します。

-DBData ユーザ資産項目名|-DBData

データベースを経由した解析を使用する場合に指定します。

データベースを経由した解析の調査対象には,ユーザ資産項目またはデータ項目が指定できます。ユーザ資産項目を調査対象にする場合は,このオプションの引数に調査対象のユーザ資産項目名を指定します。データ項目を調査対象にする場合は,このオプションを指定し,-Dataオプションの引数に調査対象とするデータ項目を指定します(この場合,-DBDataオプションの引数にユーザ資産項目名の指定があるかどうかは関係ありません)。

引数にユーザ資産項目名を指定しているオプションと,指定していないオプションが混在した場合,引数を指定していないオプションの指定は無視されます。

このオプションを指定した場合,環境変数CBLDIA_TARGET_PROGRAM_AREAに「ALL」が仮定されます。

また,このオプションを指定した場合,次のオプションの指定は無効です。

-ControlFlow,-Line,-Column,-OutputTargetList

  • ユーザ資産項目名

    調査対象にするデータベースの表名または列名を指定します。

    規則:

    • ユーザ資産項目名の大文字と小文字は区別しません。ただし,全角英大文字と全角英小文字は区別します。

    • ユーザ資産項目名の全角文字と半角文字を区別します。-EquivRuleコンパイラオプションを指定して解析されたCOBOLソースファイル中の全角英数字文字,全角のハイフンまたは全角のアンダスコアを含む名前は,全角と半角が一致していないと検索にヒットしません。

    • ワイルドカード(「*」,「?」)が指定できます。

注意事項

データベースを経由した解析が不可能なデータ影響波及分析用データベースに対して,-DBDataオプションを指定した場合の動作を次に示します。なお,データベースを経由した解析が不可能なデータ影響波及分析用データベースとは,環境変数CBLDIA_MATERIAL_DBに「TRUE」を指定しないで作成したデータベースのことです。

  • -DBDataオプションの引数にユーザ資産項目名を指定し,-Dataオプションに調査対象とするデータ項目を指定しない場合,調査対象データ項目は0件となります。

  • 引数の有無に関係なく-DBDataオプションを指定し,-Dataオプションに調査対象とするデータ項目を指定した場合,データベースを経由した解析は実行されません。

-FileData ユーザ資産項目名|-FileData

物理ファイルを経由した解析を使用する場合に指定します。

物理ファイルを経由した解析の調査対象には,ユーザ資産項目またはデータ項目が指定できます。ユーザ資産項目を調査対象にする場合は,このオプションの引数にユーザ資産項目名を指定します。データ項目を調査対象にする場合は,このオプションを指定し,-Dataオプションの引数に調査対象とするデータ項目を指定します(この場合,-FileDataオプションの引数にユーザ資産項目名の指定があるかどうかは関係ありません)。

引数にユーザ資産項目名を指定しているオプションと,指定していないオプションが混在した場合,引数を指定していないオプションの指定は無視されます。

このオプションを指定した場合,環境変数CBLDIA_TARGET_PROGRAM_AREAに「ALL」が仮定されます。

また,このオプションを指定した場合,次のオプションの指定は無効です。

-ControlFlow,-Line,-Column,-OutputTargetList

  • ユーザ資産項目名

    調査対象にする物理ファイルを指定します。物理ファイルに空白を含む場合は,引用符(")で囲んでください。

    規則:

    • ユーザ資産項目名の大文字と小文字は区別しません。ただし,全角英大文字と全角英小文字は区別します。

    • ユーザ資産項目名の全角文字と半角文字を区別します。

    • ワイルドカード(「*」,「?」)が指定できます。

注意事項

物理ファイルを経由した解析が不可能なデータ影響波及分析用データベースに対して,-FileDataオプションを指定した場合の動作を次に示します。なお,物理ファイルを経由した解析が不可能なデータ影響波及分析用データベースとは,環境変数CBLDIA_MATERIAL_PHYSICAL_FILEに物理ファイル名対応付けファイルを指定しないで作成したデータベースのことです。

  • -FileDataオプションの引数にユーザ資産項目名を指定し,-Dataオプションに調査対象とするデータ項目を指定しない場合,調査対象データ項目は0件となります。

  • 引数の有無に関係なく-FileDataオプションを指定し,-Dataオプションに調査対象とするデータ項目を指定した場合,物理ファイルを経由した解析は実行されません。

-ProgramImpactLevel 波及レベル

解析対象にする影響プログラムの範囲を波及レベル(調査対象プログラムから経由するプログラム呼び出しの数)で指定します。波及レベルとして0〜150の整数を半角数字で指定します。波及レベルを省略した場合や,0〜150以外を指定した場合は,エラーメッセージを出力して,処理を中止します。

-OutDir フォルダ名

解析結果のファイルの出力先フォルダを絶対パスまたはカレントフォルダからの相対パスで指定します。省略した場合はカレントフォルダが仮定されます。

指定したフォルダが存在しない場合は,新規作成されます。出力ファイルと同名のファイルが存在する場合は,上書き保存されます。

指定したパスでフォルダの作成に失敗した場合は,エラーメッセージを出力して,処理を中止します。

-OutFilePrefix プレフィックス文字列

出力ファイル名のプレフィックス文字列を指定します。プレフィックス文字列の31文字を超える文字は切り捨てられます。

次の文字を使用した場合,エラーメッセージを出力して処理を中止します。

「\」 「/」 「:」 「*」 「?」 「"」 「<」 「>」 「|」 「@」

-Force

影響範囲の解析の開始前に行われるデータベースの情報とファイルの同期チェックで,同期が取れていないと判断されたときに発生するエラーを抑止する場合に指定します。データベースの情報とファイルの同期チェックについては,「1.5 データ影響波及分析を使用するときの注意」を参照してください。

-OutputLog ログファイル名

標準エラー出力に表示される進捗メッセージをログファイルに出力したい場合,出力先のログファイルを絶対パスまたはカレントフォルダからの相対パスで指定します。

指定したログファイルが存在する場合は,ファイルの内容は上書きされます。ログファイルが存在しない場合は,新規作成されます。

なお,ログファイル名に標準エラー出力のリダイレクト先ファイル名と同じファイル名は指定しないでください。次のどれかに該当する場合は,エラーメッセージを出力して,処理を中止します。

  • ログファイル名に指定したドライブが存在しない

  • コンソール出力のリダイレクト先ファイル名と同じファイル名を指定した

  • 指定されたログファイルに書き込みできない

-NoHeaderInfo

解析結果のCSVファイルのヘッダ情報(バージョン情報,解析結果の種別および調査対象データ項目一覧)の出力を抑止する場合に指定します。

-OutputFile{,Code|,Data|,DataTree|,Program|,Relation|,CodeTag}+

解析完了時に出力するファイルを指定します。このオプションを省略した場合は,すべての解析結果ファイルを出力します。

-OutputFile,Codeを指定すると,影響波及コード一覧のCSVファイルを出力します。

-OutputFile,Dataを指定すると,影響波及データ項目一覧のCSVファイルを出力します。

-OutputFile,DataTreeを指定すると,影響波及関連図のCSVファイルを出力します。

-OutputFile,Programを指定すると,影響プログラム一覧のCSVファイルを出力します。

-OutputFile,Relationを指定すると,影響波及関連一覧のCSVファイルを出力します。

-OutputFile,CodeTagを指定すると,影響波及コード一覧のタグファイルを出力します。

サブオプションを複数指定して,複数のファイルを出力することもできます。ただし,同じサブオプションを複数指定した場合は,最初に指定したサブオプションだけが有効です。

サブオプションをすべて省略した場合,または不正なサブオプションを1つでも指定した場合は,エラーメッセージを出力して,処理を中止します。

-NoOutputAliasData

影響波及データとして影響波及関連図に表示されるデータ項目だけを,影響波及データ項目一覧に出力する場合に指定します。このオプションを省略した場合,影響波及関連図に表示されるデータ項目と,その別名(未使用の影響波及データ項目)を影響波及データ項目一覧に出力します。

なお,このオプションを指定した場合に,-OutputFileオプションを指定するときは,Dataサブオプション(-OutputFile,Data)を指定してください。

-? または -Help

コマンドヘルプが表示されます。ほかのオプションはすべて無視されます。cbldiaコマンドの引数をすべて省略した場合も,コマンドヘルプが表示されます。

出力ファイル

出力ファイル

ファイル名

影響波及関連一覧のCSVファイル

(プレフィックス文字列)_DIA_Relation.csv

影響波及関連図のCSVファイル

(プレフィックス文字列)_DIA_DataTree.csv

影響プログラム一覧のCSVファイル

(プレフィックス文字列)_DIA_Program.csv

影響波及データ項目一覧のCSVファイル

(プレフィックス文字列)_DIA_Data.csv

影響波及コード一覧のCSVファイル

(プレフィックス文字列)_DIA_Code.csv

影響波及コード一覧のタグファイル

(プレフィックス文字列)_DIA_Code.tag

出力ファイルは「プログラム名」と「データ項目名」が異なるごとに別ファイルとなります。例えば,プログラム名が1個,調査対象データ項目名が4個ある場合,表の6ファイルを4個のデータ項目ごとに出力するため,合計24個のファイルとなります。

出力ファイルの命名規則
  • (プレフィックス文字列):(OutfilePrefix)_(調査対象)

  • (OutfilePrefix):-OutFilePrefixオプションの規則に従った文字列

    -OutFilePrefixオプションの指定がない場合,(プレフィックス文字列)は(調査対象)だけとなります。

  • (調査対象):項目ごとの命名規則を次に示します。

調査対象がデータ項目の場合

通し番号_データ項目名[データ項目のプログラム名]

  • 通し番号は,1回の解析で一意になるように割り当てられます。

    通し番号は,5けたの数字で「プログラム名」「データ項目名」の順番でソートした結果に対して割り当てられます(ソート時のデータ項目名はフルネーム(OF 修飾あり)が使用されます)。通し番号が99999を超えた場合,けた数が1つ増えます。

  • データ項目名は,フルネーム(修飾付きの名前)ではなく,短い名前が使用されます。

    -Dataオプションに指定したデータ項目が,ファイル名に指定できない文字列の場合は「_」(アンダスコア)に置き換えられます。

調査対象がユーザ資産項目の場合

通し番号_ユーザ資産項目名

  • 通し番号は,1回の解析で一意になるように割り当てられます。

    通し番号は,5けたの数字で「ユーザ資産項目名」の順番でソートした結果に対して割り当てられます。通し番号が99999を超えた場合,けた数が1つ増えます。

  • ユーザ資産項目名は,次の名前が使用されます。ただし,出力ファイルのファイル名を含む絶対パスが259文字を超える場合,259文字を超えるユーザ資産項目名の文字は切り捨てられます。

    表名の場合:表名

    列名の場合:表名.列名

    物理ファイル名の場合:パスを含まない物理ファイル名(ファイル名に指定できない文字列の場合は「_」(アンダスコア)に置き換えられます)

    -DBDataオプションまたは-FileDataオプションに指定したユーザ資産項目名が,ファイル名に指定できない文字列の場合は「_」(アンダスコア)に置き換えられます。

使用例

sample.cblのプログラムP1に属するデータ名Qを調査対象にして,影響範囲の解析(影響波及元方向の解析および影響波及先方向の解析)を実行し,その解析結果をD:¥Resultフォルダに出力する場合
cbldia -Data Q;P1;sample.cbl -Direction,Backward,Forward -OutDir D:\Result

終了コード

終了コード

意味

メッセージとの対応

0

正常終了。

EレベルおよびUレベルのエラーはありません。

1

エラーが発生して終了しました。

Eレベルのエラーが1つ以上あり,Uレベルのエラーはありません。

2

回復不能のエラーが発生して終了しました。

Uレベルのエラーが1つ以上あります。