COBOL2002 ユーザーズガイド

[目次][用語][索引][前へ][次へ]

36.4.2 リポジトリ管理ツール

外部リポジトリに関連したコンパイルエラーが発生したとき,リポジトリファイルに格納された情報を確認すると,コンパイルエラーの原因を容易に特定できることがあります。

リポジトリ管理ツールは,リポジトリファイルに格納された翻訳単位の定義情報を出力できます。この項では,リポジトリ管理ツール(cbl2krepコマンド)の機能について説明します。

コンパイルエラー発生時の対処方法については,「36.4.1 外部リポジトリに関連したコンパイルエラー発生時の対処方法」を参照してください。

<この項の構成>
(1) リポジトリ管理ツールの概要
(2) リポジトリ管理ツールの機能詳細
(3) リポジトリ管理ツール使用時のエラーメッセージ

(1) リポジトリ管理ツールの概要

リポジトリ管理ツールには,次に示す機能があります。

(a) 形式
 
cbl2krep 〔リポジトリファイル名〕 … 〔オプション〕 …

リポジトリファイル名
リポジトリファイル名を指定します。ファイルの表示をするときは,指定した順序に従ってリポジトリファイルが処理されます。

オプション
リポジトリファイルをどのように処理するかを指定するオプションです。次のオプションを指定できます。
 
-list -help
オプションの詳細については,「(2) リポジトリ管理ツールの機能詳細」を参照してください。

リポジトリファイル名およびオプションの指定を省略した場合,リポジトリ管理ツールの指定形式を出力します。

[図データ]

(b) 終了コード

リポジトリ管理ツールの終了コードを次の表に示します。

表36-1 リポジトリ管理ツールの終了コード

終了コード 意味
0 正常終了
1 エラーが発生
2 回復不能エラーが発生
(c) 注意事項

リポジトリ管理ツールを使用するときの注意事項を次に示します。

  1. リポジトリファイル名は,.repを付けて指定する必要があります。
  2. 複数のオペランドを指定する場合は,各オペランドを空白またはタブで区切ります。
  3. 複数のリポジトリファイル名を指定できる個所には,ワイルドカード(*)が使用できます。
  4. -helpオプションを指定した場合,そのほかのオプションやリポジトリファイル名の指定は無視されます。
  5. オプションで使用する文字は,英大文字と英小文字は等価とみなされます。
  6. リポジトリファイル名,および翻訳単位名で使用する文字は,英大文字と英小文字が等価とみなされます。

(2) リポジトリ管理ツールの機能詳細

(a) 翻訳単位情報の表示

形式
cbl2krep リポジトリファイル名1 … -list

機能
指定したリポジトリファイル中の翻訳単位の情報を標準出力に出力します。ただし,標準出力に出力されるのは,指定したリポジトリファイル内の定義情報だけです。継承したクラスやインタフェースのプロパティ情報,およびメソッド情報は出力されません。

オペランド
リポジトリファイル名1
表示したいリポジトリファイルを指定します。
-list
リポジトリファイル中の翻訳単位の情報を標準出力に出力します。
-listオプションを指定したときに出力されるクラス定義の翻訳単位情報の内容を次の図に,関数定義の翻訳単位情報の表示を「図36-12 -listオプションを指定したときに出力される関数定義の翻訳単位情報の内容」に示します。

図36-11 -listオプションを指定したときに出力されるクラス定義の翻訳単位情報の内容

[図データ]
  1. リポジトリファイルヘッダ情報
    リポジトリファイル名,リポジトリファイルの生成時刻(YYYY-MM-DD 年-月-日,HH:MM:SS 時:分:秒),およびリポジトリファイルを生成したコンパイラ名(バージョン(VV-RR)を含む)が表示されます。コンパイラ名の(X)は,COBOL2002の稼働プラットフォーム識別を示します。詳細は「付録L.2 このマニュアルでの表記」を参照してください。リポジトリファイル名はコマンドラインに指定した名前で表示されます。
  2. 生成時刻
    リポジトリファイル内の翻訳単位情報の生成時刻(YYYY-MM-DD 年-月-日,HH:MM:SS 時:分:秒)が表示されます。
  3. 継承クラス・インタフェース情報
    リポジトリ段落に指定した翻訳単位名のうち,INHERITS句に指定したクラス名およびインタフェース名が出力されます。括弧内には,翻訳単位の種別が出力されます。
  4. 参照翻訳単位情報
    リポジトリ段落に指定した翻訳単位名のうち,INHERITS句に指定していない翻訳単位名が出力されます。括弧内には,翻訳単位の種別が出力されます。
  5. プロパティ情報
    クラス定義に指定したオブジェクトプロパティの情報(プロパティ名,参照(GET)/更新(SET)種別,データの属性情報)が出力されます。プロパティ情報は,ファクトリオブジェクトとインスタンスオブジェクトとで別々に出力されます。出力される項目がない場合は,「None」が出力されます。出力される属性情報については,「属性情報の詳細」に示します。
  6. メソッド情報
    クラス定義に指定したメソッドの情報(メソッド名,引数/返却項目の情報)が出力されます。メソッド情報は,ファクトリオブジェクトとインスタンスオブジェクトとで別々に出力されます。出力される項目がない場合は,「None」が出力されます。

 

図36-12 -listオプションを指定したときに出力される関数定義の翻訳単位情報の内容

[図データ]

  1. リポジトリファイルヘッダ情報
    リポジトリファイル名,リポジトリファイルの生成時刻(YYYY-MM-DD 年-月-日,HH:MM:SS 時:分:秒),およびリポジトリファイルを生成したコンパイラ名(バージョン(VV-RR)を含む)が表示されます。コンパイラ名の(X)は,COBOL2002の稼働プラットフォーム識別を示します。詳細は「付録L.2 このマニュアルでの表記」を参照してください。リポジトリファイル名はコマンドラインに指定した名前で表示されます。
  2. 参照翻訳単位情報
    リポジトリ段落に指定した翻訳単位名が出力されます。括弧内には,翻訳単位の種別が出力されます。
  3. 関数情報
    関数定義の情報(関数名,引数/返却項目の情報)が出力されます。

 

属性情報の詳細
データ項目の種類と出力される属性情報または引数/返却項目の情報の対応を次の表に示します。

表36-2 データ項目の種類と属性情報または引数/返却項目の情報

データ項目の種類 出力される属性情報または引数/返却項目の情報
固定長集団項目
可変長集団項目
日本語集団項目 GROUP-USAGE NATIONAL
数字編集項目
英数字編集項目
日本語編集項目
外部10進項目 USAGE DISPLAY
ただし,SIGN句の属性情報がある場合,SIGN句の属性情報に従って次のどれかが表示されます。
USAGE DISPLAY SIGN IS LEADING
USAGE DISPLAY SIGN IS LEADING SEPARATE
USAGE DISPLAY SIGN IS TRAILING SEPARATE
内部10進項目 USAGE COMP-3
外部浮動小数点項目 USAGE DISPLAY
内部浮動小数点項目 USAGE COMP-1
USAGE COMP-2
アドレスデータ項目/ポインタ項目 USAGE ADDRESS
指標データ項目 USAGE INDEX
2進項目 USAGE COMP
USAGE COMP-5
USAGE COMP-X
ブール項目 USAGE BIT
USAGE DISPLAY
英字/英数字項目 USAGE DISPLAY
日本語項目 USAGE NATIONAL
オブジェクト参照データ項目 OBJECT REFERENCE
(インタフェース名/[FACTORY OF] ACTIVE CLASS/[FACTORY OF] クラス名 [ONLY] 指定ありの場合,その指定も出力されます)

(凡例)
−:属性情報なし

(b) オプション概略の一覧

形式
cbl2krep -help

機能
オプションの概略を一覧表示します。

(3) リポジトリ管理ツール使用時のエラーメッセージ

(a) エラーメッセージの形式

リポジトリ管理ツールが出力するメッセージの形式を,次に示します。

形式
cbl2krep : error エラー番号: メッセージ内容

このマニュアルでは,リポジトリ管理ツールが出力するエラーメッセージを,次の形式で記載します。


エラー番号

メッセージ内容

(要因)
エラーが返される要因を示す。
(S)
システムの処置を示す。
(P)
プログラム作成者の処置を示す。

 

エラーメッセージの内容を次に示します。

(b) エラーメッセージの内容

リポジトリ管理ツールが出力するメッセージのエラー番号およびメッセージ内容を,次に示します。


0001

ファイル‘******’はオープンできません。


0002

ファイル‘******’の読み込みでI/Oエラーが発生しました。


0003

ファイル‘******’の書き込みでI/Oエラーが発生しました。

(要因)
リポジトリファイルの書き込みでI/Oエラーが発生した。次の要因が考えられる。
  1. カレントフォルダがネットワークフォルダのとき,ネットワーク障害が発生している。
  2. ディスクの空きがない。または,ディスク障害が発生している。
(S)
cbl2krepの実行を中止する。
(P)
  1. 何度かコンパイルを試みる。
  2. コンピュータの管理者に問い合わせる。

0004

ファイル‘******’はリポジトリファイルではありません。


0005

リポジトリファイル‘******’は,対象マシンが異なるので参照できません。


0006

リポジトリファイル‘******’は壊れています。


0007

‘******’という名前の翻訳単位はリポジトリに存在しません。


0008

‘******’という名前の翻訳単位が複数のリポジトリに存在します。


0009

論理番号‘******’で論理エラーが発生しました。

(要因)
cbl2krepの実行で,内部的に論理エラーが発生した。
(S)
cbl2krepの実行を中止する。
(P)
当社保守員に連絡する。

0010

メモリ不足で続行できません。

(要因)
cbl2krepが稼働するメモリが足りない。
(S)
cbl2krepの実行を中止する。
(P)
削除できる資源を削除して再実行する。

0011

不正なオプション‘******’が指定されています。


0012

オプション‘******’にパラメタがありません。


0013

オプション‘******’が長すぎます。


0014

このバージョンのcbl2krepではリポジトリファイル‘******’はアクセスできません。


0017

‘******’という名前のクラスはリポジトリファイルに存在しません。


0018

‘******’という名前のインタフェースはリポジトリファイルに存在しません。


0019

オプション‘******’にパラメタは指定できません。


0020

リポジトリファイルが指定されていません。


0023

他のプログラムでシステムの制限までファイルをオープンしているので,cbl2krepでファイルをオープンすることができません。

(要因)
ほかのプログラムで,システムの制限までファイルを開いている。
(S)
cbl2krepの実行を中止する。
(P)
ほかのプログラムで使用しているファイルを閉じる。

0025

ファイル‘******’は存在しません。