次のコードを実行することにより、任意のコマンド・ライン・インターフェースのオプションを 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 | 無効な関数が要求されました。 |