JXALOCSI
JXALOCSIは、アプリケーションでOCS(Operation Control Service)マクロを使用するための機能です。本付録では、OCSの各マクロの機能と使用方法について説明します。
1. OCSUSE
OCSUSEマクロは、アプリケーションがOCS機能を使用することを宣言します。
以下は、OCSUSEマクロの例です。
WORKING-STORAGE SECTION. 77 OCSUSE PIC X(8) VALUE 'OCSUSE '. ... PROCEDURE DIVISION. CALL 'JXALOCSI' USING OCSUSE.
-
パラメータ
以下は、OCSUSEマクロのパラメータの説明です。
パラメータ 説明 OCSUSE
OCSの使用を宣言するマクロのマクロ名である「OCSUSE」を指定します。
2. OCSOTUSE
OCSOTUSEマクロは、アプリケーションがOCS機能の使用を終了することを宣言します。
以下は、OCSOTUSEマクロの例です。
WORKING-STORAGE SECTION. 77 OCSOTUSE PIC X(8) VALUE 'OCSOTUSE'. ... PROCEDURE DIVISION. CALL 'JXALOCSI' USING OCSOTUSE.
-
パラメータ
以下は、OCSOTUSEマクロのパラメータの説明です。
パラメータ 説明 OCSOTUSE
OCSの使用の終了を宣言するマクロのマクロ名である「OCSOTUSE」を指定します。
3. PUTCMD
PUTCMDマクロは、アプリケーションからAIMコマンドを発行するために使用します。
以下は、PUTCMDマクロの例です。
WORKING-STORAGE SECTION. 77 PUTCMD PIC X(8) VALUE 'PUTCMD '. 77 RTN PIC 9(4). 77 R PIC 9(4) VALUE 1. 77 C PIC 9(4) VALUE 0. 77 M PIC 9(4) VALUE 1. 77 W PIC 9(4) VALUE 0. 77 S PIC 9(4) VALUE 180. 77 T PIC 9(5) VALUE 300. 01 CMDAREA. 02 FILLER PIC S9(4) COMP VALUE 132. 02 FILLER PIC S9(4) COMP VALUE 0. 02 CMDDATA PIC X(128). 01 IDCARD. 02 BOXID PIC X(8). 02 FILLER PIC X(4). 01 ANSAREA. 02 FILLER PIC X(12). 02 MID PIC X(2). 02 FILLER PIC X(8). 02 CMD PIC X(8). 02 FILLER PIC X(8). 02 SCMD PIC X(8). 02 FILLER PIC X(8). 02 CI PIC X(8). 02 FILLER PIC X(118). ... PROCEDURE DIVISION. MOVE 'SLOGON UGSSSC04,OIVPPROC' TO CMDDATA. CALL 'JXALOCSI' USING PUTCMD RTN REQOPT CMDOPT MSGOPT RPLOPT CMDAREA IDCARD ANSAREA AREASIZE TIMEOUT.
-
パラメータ
以下は、PUTCMDマクロのパラメータの説明です。
パラメータ 説明 PUTCMD
コマンドを発行するマクロのマクロ名である「PUTCMD」を指定します。
RTN
リターンコードを取得する領域を指定します。
REQOPT
依頼形式を指定します。
-
C'0000':非同期型応答
-
C'0001':同期型応答
-
C'0002':応答を待たずにすぐに返す
C'0000’を指定する場合は、IDCARDパラメーターの指定が必須であり、それ以外のパラメーターは指定できません。また、C'0001’を指定した場合は、ANSAREA、AREASIZE、TIMEOUTパラメーターの指定が必須です。
CMDOPT
発行コマンドの種類を指定します。
-
C'0000':AIMコマンド
-
C'0002':OSコマンド
MSGOPT
発行されたコマンドの内容をコンソールに出力するかどうかを指定します。
-
C'0000':メッセージを出力しない
-
C'0001':メッセージを出力する(現在未対応)
RPLOPT
発行コマンドの処理中に問い合わせが必要な場合、その問い合わせ方法を指定します。
-
C'0000':システム管理者に問い合わせる
CMDAREA
発行するAIMコマンドの内容を指定します。
IDCARD
依頼形式を非同期応答型に指定した場合、OPENBOXマクロの発行時のIDカードをそのまま指定します。
ANSAREA
依頼形式を同期応答型に指定した場合、コマンド応答を受け取る領域を指定します。
AREASIZE
依頼形式を同期応答型に指定した場合、コマンド応答領域のサイズを指定します。
TIMEOUT
依頼形式を同期応答型に指定した場合、コマンド応答の待機時間を指定します。TIMEOUTは0から65535まで指定可能で、未指定の場合は65535が適用されます。
-
-
戻り値
PUTCMDマクロのリターンコードを返すRTN値の説明です。
RTN 説明 C'0000'
PUTCMDマクロが正常に終了された場合に返す値です。
PUTCMDマクロで発行したAIMコマンドの処理結果を返すANSAREAのMID値の説明です。
MID 説明 A1
コマンドが正常に処理された場合に返されます。
E0
コマンドの記述に問題がある場合に返されます。
R1
コマンドの処理に問題がある場合に返されます。
W1
オペランドとして指定したワークステーションがすでに使用されている場合に返されます。
PUTCMDマクロでSTOP ACPコマンドを発行した場合、ANSAREAのPRFX領域には以下の値が設定されます。
PRFX 説明 G417
コマンドが正常に処理されました。
G410
指定されたジョブの終了を試みましたが、タイムアウト時間内に終了しませんでした。
G414
指定されたジョブが未起動の状態です。
-
PUTCMDのANSAREA
項目名 タイプ 長さ 説明 長さ
バイナリ
2
ANSAREA領域の長さです。現在は未対応であり、ホストとの互換性のために保持されています。
予約項目
文字
2
MIDの項目名
文字
6
現在は未対応であり、ホストとの互換性のために保持されています。
MIDコード
文字
2
現在は未対応であり、ホストとの互換性のために保持されています。
MID
文字
2
コマンドの処理結果です。
CMDの項目名
文字
6
現在は未対応であり、ホストとの互換性のために保持されています。
CMDコード
文字
2
現在は未対応であり、ホストとの互換性のために保持されています。
CMD
文字
8
現在は未対応であり、ホストとの互換性のために保持されています。
SCMDの項目名
文字
6
現在は未対応であり、ホストとの互換性のために保持されています。
SCMDコード
文字
2
現在は未対応であり、ホストとの互換性のために保持されています。
SCMD
文字
8
現在は未対応であり、ホストとの互換性のために保持されています。
CIの項目名
文字
8
現在は未対応であり、ホストとの互換性のために保持されています。
CI
文字
8
現在は未対応であり、ホストとの互換性のために保持されています。
PRFXの項目名
文字
6
現在は未対応であり、ホストとの互換性のために保持されています。
PRFXコード
文字
2
STOP ACPコマンドの処理結果です。それ以外の場合は空白となります。
PRFX
文字
4
現在は未対応であり、ホストとの互換性のために保持されています。
ADD
文字
6
現在は未対応であり、ホストとの互換性のために保持されています。
ADDの長さ
バイナリ
2
現在は未対応であり、ホストとの互換性のために保持されています。
ADD
文字
32
現在は未対応であり、ホストとの互換性のために保持されています。
予約項目
文字
66