リモート・コマンド投入 (SBMRMTCMD)

リモート・コマンド投入(SBMRMTCMD)コマンドは,DDMファイルによって指定されたターゲット・システムで実行されるように,分散データ管理機能(DDM)を介してCLコマンドを送り出します。DDMファイルは,使用される通信回線を決定し,投入されたコマンドを受け取るターゲット・システムを間接的に識別します。

このコマンドは,SBMRMTCMDコマンド言語をサポートするリモート・システムにCLコマンドを送り出すだけです。CLコマンドでないコマンドを別のタイプのシステムに送り出すことはできません(たとえば,OCLコマンドは,ターゲット・システム/36に送り出すことはできません)。

このコマンドの主な目的は,ソース・システムのユーザーまたはプログラムが,ターゲット・システムにあるファイルについて,ファイル管理操作およびファイル認可操作を行なうことができるようにすることです。

制約事項:

パラメーター

キーワード 記述 選択項目 ノーツ
CMD 実行するコマンド 文字値 必須, 定位置 1
DDMFILE DDMファイル 修飾オブジェクト名 必須, 定位置 2
修飾子 1: DDMファイル 名前
修飾子 2: ライブラリー 名前, *LIBL, *CURLIB

実行するコマンド (CMD)

ターゲット・システムで実行されるコマンドを表わすために,最大2000桁までの文字ストリングを指定します。このコマンドは,ターゲット・システムのバッチ環境と対話式環境の両方で使用できるものでなければなりません。組み込みブランクまたは特殊文字がコマンドに入っている場合には,そのコマンドはアポストロフィで囲まなければなりません。コマンドは,ターゲット・システムの構文を使用するものでなければなりません。

これは必須パラメーターです。

注: 通常の規則によれば,ローカル・システムでは,引用符で囲まれたストリングの中のアポストロフィは対にしなければなりませんが,同じストリングをリモート・システムに投入する時には,その対のアポストロフィをさらに2重に(すなわち4重に)しなければなりません。これは,引用符付きのストリングの中でさらに引用符付きのストリングをコーディングするために必要です。

DDMファイル (DDMFILE)

コマンドをターゲット・システムに投入するために使用される分散データ管理機能(DDM)ファイルの名前およびライブラリーを指定します。このDDMファイルは,ターゲット・システムを表わすリモート・ロケーションを決定するために使用されるだけです。DDMファイルに関連したリモート・ファイル名は,このコマンドによって無視されます。

これは必須パラメーターです。

考えられるライブラリーの値は次の通りです。

*LIBL
ファイルを見つけるために,ライブラリー・リストが使用されます。
*CURLIB
ファイルを見つけるために,ジョブの現行ライブラリーが使用されます。ジョブの現行ライブラリーとしてライブラリーが指定されていない場合には,QGPLライブラリーが使用されます。
ライブラリー名
ファイルのあるライブラリーを指定します。

1: ファイルの削除

SBMRMTCMD   CMD('DLTF LIBX/FRED')  DDMFILE(DENVER)

このコマンドは,DENVERの名前のDDMファイルと関連した,ターゲット・システム上のライブラリーLIBX中のFREDの名前のファイルを削除します。

2: 物理ファイルの作成

SBMRMTCMD   CMD('CRTPF  SALES/CAR  QGPL/QDDSSRC MASTER')
            DDMFILE(DENVER)

このコマンドは,ソース・ファイルQDDSSRCのデータ記述仕様(DDS)およびQGPLライブラリー中のMASTERの名前のソース・ファイルを使用して,ライブラリーSALESに物理ファイルCARを作成します。このDDSは,ターゲット・ジョブのライブラリー・リストのDENVERの名前のDDMファイルで識別されるターゲット・システムに事前に存在しなければなりません。

3: テキスト記述の変更

SBMRMTCMD   CMD('CHGDDMF  FILE(LIBX/STANLEY)
              TEXT(''DON''''T FORGET TO PAIR APOSTROPHES.'')')
            DDMFILE(SMITH)

このコマンドは,STANLEYの名前のDDMファイルの記述中のテキストを変更して,それをライブラリーLIBXに保管します。投入されるコマンドでは,単一のアポストロフィがその外側に必要である(CMDパラメーターの場合)ので,ローカル・システム処理のTEXTパラメーターに通常必要な単一アポストロフィまたは2重アポストロフィは,リモート・システム処理では二重にしなければなりません。上記のようなコーディングでも,リモート・システムでテキストを表示または印刷する時には,単一アポストロフィで示されます。

4: DDMファイルの作成

SBMRMTCMD   CMD('CRTDDMF FILE(SALES/MONTHLY)
                         RMTFILE(*NONSTD ''CAR.SALES(JULY)''
                         RMTLOCNAME(DALLAS)')
            DDMFILE(CHICAGO)

このコマンドは,(CHICAGOの名前のDDMファイルの情報で識別されるターゲット・システム上に)MONTHLYの名前の別のDDMファイルを作成します。新規のDDMファイルは,CHICAGOシステムのSALESの名前のライブラリー中に保管されます。CHICAGOシステム上の新規DDMファイルを使用して,DALLASの名前の別のシステム上のファイルおよびメンバーにアクセスします。アクセスされるファイルはSALES/CARの名前が付けられ,ファイル中のメンバー名はJULYです。

このCRTDDMFコマンド・ストリングには3セットの単一アポストロフィが含まれています。投入されるコマンド全体を囲む1セットと,RMTFILEパラメーター中に命名されたファイルおよびメンバーを囲む2重のセットです。これは,メンバー名を囲むために括弧が必要であるために,I5/OSファイル・メンバー名をSBMRMTCMDコマンドに指定する方法を示しています。

5: ライブラリー・リストの一部の置き換え

SBMRMTCMD   CMD('RPLLIBL  LIBL(QGPL QTEMP SALES EVANS)')
            DDMFILE(EVANS)

このコマンドは,EVANSの名前DDMファイルと関連したターゲット・ジョブで使用されているライブラリー・リストのユーザー部分を置き換えます。これは,このSBMRMTCMDコマンドを投入するソース・ジョブで使用されています。そのソース・ジョブでは,同じ装置およびモードを指定するその他のオープンDDMファイルがある場合には,それらに対してもこのライブラリー・リストが使用されます。

エラー・メッセージ

*ESCAPEメッセージ

CPF9164
ターゲット・システムがSBMRMTCMDをサポートしていない。
CPF9165
ライブラリー&2のファイル&1がDDMファイルでない。
CPF917A
分散ファイルでエラーが起こった。
CPF917B
ターゲット・システム&3は使用できない。
CPF9172
SBMRMTCMDコマンドが異常終了した。
CPF9174
ターゲット・システムにおいてユーザー出口プログラムへの呼び出しでエラー。
CPF9175
ユーザー出口プログラムの処理中にエラー。
CPF9177
ユーザー出口プログラムが正常に完了しなかった。
CPF9178
SBMRMTCMDで指定したコマンドの処理が正常に行われなかった。
CPF9182
DDM通信を開始することができない。