コマンド・ラインのアプリケーション・プログラム・インターフェースの使用

次のコードを実行することにより、任意のコマンド・ライン・インターフェースのオプションを COBOL プログラム内から呼び出すことができます。コマンド・ラインの呼び出しに、C などの別のプログラミング言語を使用することもできます。

IDENTIFICATION DIVISION. 
PROGRAM-ID. TESTCLIX. 
ENVIRONMENT DIVISION. 
CONFIGURATION SECTION. 
SOURCE-COMPUTER.   IBM-PC. 
OBJECT-COMPUTER.   IBM-PC. 
DATA DIVISION. 
WORKING-STORAGE SECTION. 
01 RESULT          PIC X      COMP-X. 
01 FUNC            PIC X      COMP-X VALUE 35. 
01 COMMAND. 
   05 LEN          PIC X      COMP-X VALUE 10. 
   05 PGM          PIC X(10) VALUE 'MFDAS.EXE'. 
PROCEDURE DIVISION. 
   DISPLAY "DIR PDS CSI01.JPD.CNTL" UPON COMMAND-LINE 
   CALL X'91' USING RESULT FUNC COMMAND 
   IF RESULT = 0 
*>    EXECUTE SUCCESSFUL CODE HERE 
   END-IF

結果が返されるときには、ドラッグ・アンド・ドロップによって COBOL の RESULT 変数が設定されます。次の戻りコードが生成されます。

00 呼び出しが成功しました。
01 MFLSC からエラーが返されました。
14 プログラム MFLSC が見つかりません。
15 DFCONV の呼び出しに失敗しました。
48 メインフレームのメンバが別のユーザによってロックされています。
49 メインフレームの ABEND が発生しました。
50 データ・セットへのアクセス時に動的割り当てエラーが発生しました。
51 メインフレームでオープン・エラーが発生しました。
52 有効な関数に対する無効な要求が検出されました。
53 メインフレームのデータ・セットで I/O エラーが発生しました。
54 メインフレームに無効なサブコードが渡されました。
55 メインフレームのプログラムでロード・エラーが検出されました。
56 レコード・レベルの長さエラーが検出されました。
57 一般セキュリティ・エラーが検出されました。
58 ハッシュ・コードの不一致が検出されました。
59 リモート実行が失敗しました。
60 JES スプール・ファイルは出力ファイルではありません。
61 JES スプール・ファイルは保留された出力ファイルではありません。
100 呼び出しの構文エラーです。
125 アクティブな同時ユーザが多すぎます。
139 レコード長が大きすぎます。
218 DCB はサポートされていません。通常は、RECFM=U を使用しようとすると発生します。
219 メインフレームのロード・ライブラリが APF 許可ライブラリではありません。
220-241 SAF セキュリティの各種の戻りコードです。
242 使用しているコンポーネントはメインフレームでアクティブになっていません。
243 指定されたファイルをワークステーションに書き込めません。
244 指定されたファイルをワークステーションから読み取れません。
245 カタログ検索でエラーが検出されました。
246 カタログ検索の結果がありませんでした。
247 FHREDIR.CFG 内に /F MFENDDRV* 文がありませんでした。
248 FHREDIR.CFG 内に /F MFLSCDRV* 文がありませんでした。
249 ファイル FHREDIR.CFG が見つかりませんでした。
250 通信障害が発生しました。
251 ファイルが正の長さになっていません。
252 無効なマスクが指定されました。
253 ローカル・アクセス・マスクが指定されていません。
254 ローカル・アクセス・モードが設定されていません。
255 無効な関数が要求されました。