10.3.3 引数を一括して取得する方法
機能名COMMAND-LINEを使うことで,コマンド行に指定された複数の引数を一括して取得できます。
- 〈この項の構成〉
(1) コマンド行の引数を取得
ACCEPT文実行時に,コマンド行の引数の内容を取得します。このとき,空白行で区切られた複数の引数を1回のACCEPT文でまとめて取得できます。
- ACCEPT文の形式
ACCEPT 一意名 FROM {COMMAND-LINE|COMMAND-LINEに対する呼び名} 〔END-ACCEPT〕
(2) コマンド行の引数の内容を更新
DISPLAY文実行時に,一意名または定数で指定された内容をコマンド行の引数の内容を格納しているコマンド行バッファに上書きします。COMMAND-LINE指定のあるDISPLAY文の実行後に,COMMAND-LINE指定のあるACCEPT文を実行すると,先に実行したDISPLAY文で設定した内容が取り出されます。
- DISPLAY文の形式
DISPLAY {一意名|定数} UPON {COMMAND-LINE|COMMAND-LINEに対する呼び名} 〔END-DISPLAY〕
(3) 規則
-
コマンド行へのアクセスができるのは,-Main,Systemオプションを指定したCOBOL主プログラムと,主プログラムに-Main,Systemオプションを指定したCOBOLプログラムを持つCOBOLの副プログラムでだけです。
コマンド行へのアクセスを使用しているCOBOL主プログラムに-Main,V3オプションを指定した場合,コンパイルエラーとなります。また,COBOL副プログラムに,-Main,Systemオプションを指定したCOBOL主プログラム以外のプログラムを持つ場合,実行時にエラーメッセージが出力され異常終了します。
-
ACCEPT文で数字項目を正しく受け取るにはコンパイル時に-NumAcceptオプションが必要です。また,2進項目,内部10進項目,内部浮動小数点数字項目使用時には-NumAcceptオプションを指定しないとコンパイルエラーとなります。