File Manager/Db2 バッチ・ジョブの JCL 構文

バッチ・ジョブで File Manager/Db2 機能を使用するには、次のステートメントを使用します。//stepname EXEC PGM=FMNDB2,PARM=('SSID=sysid,SQID=sqlid')"

各部の意味は以下のとおりです。
sysid
FM/Db2 機能が実行される Db2 サブシステムを参照します。
sqlid
FM/Db2 機能が実行される Db2 SQLID を参照します。

デフォルトでは、レポート出力はSYSPRINTに書き込まれます。出力の一部は、以下のddnamesに代わりに指示することができます。

FMNRPRM
$$FILEM コマンド・パラメーターおよび戻りコード
FMNREPT
コマンド・レポートおよび戻りコード
JCL に FMNPRINT が存在する場合には、SYSPRINT の代わりに使用されます。JCL に FMNIN が存在する場合には、SYSIN の代わりに使用されます。

さらに、そのバッチ・ジョブに含まれる File Manager 機能によっては、STEPLIB ステートメントまたは他の DD ステートメントが必要になる場合もあります。

File Manager 制御ステートメントをコーディングするときには、以下のことを行う必要があります。
  • それぞれの制御ステートメントを 1-7 桁目の $$FILEM で開始し、その後の 8 桁目にブランクを続け、さらにコマンド名とその後に最初のパラメーター (もしあれば) を続けます。
  • パラメーターとその値を、等号で分離して、指定します。次のようになります。
    PARAMETER=value
  • 各パラメーター (最後のパラメーターを除いて) の直後にコンマを置きます。

アスタリスク (*) で始まるコメント・ステートメントも使用することができます。

制御ステートメントを次の行に続ける場合、最初の行はコンマで終わり、次の行は $$FILEM およびブランクで始めます。

1 行に収まらないパラメーターを続ける場合、継続文字は使用しないでください。代わりに、パラメーターを複数の行に分割し、各部分をアポストロフィで囲みます。例:
$$FILEM OBJIOWNR='LONGOWNER1234567890123456789012345678901', 
$$FILEM '2345678901234567890123456789012345678901NAME', 
注:
  1. 制御ステートメントに関数名のみが含まれる場合、関数名とコンマの間にスペースを入れる必要があります。
  2. バッチで処理オプションを変更する場合、またはオプションをインストール・デフォルトにリセットする場合、SET 機能を使用します。

以下の例は、FM/Db2 DSP 機能を使用して Db2 表を印刷するバッチ・ジョブを示しています。
//jobcard
$$FILEM DBP FORMAT=TABLE,                                    
$$FILEM OBJIOWNR='LONGOWNER1234567890123456789012345678901', 
$$FILEM '2345678901234567890123456789012345678901NAME',      
$$FILEM OBJINAME='DUMMY_TABLE_WITH_A_LO2345678901234567890', 
$$FILEM '1234567890123456789012345678901234LONG_NAME',       
$$FILEM UCREAD=YES,                                          
$$FILEM NULLIND=_,                                           
$$FILEM ROWS=ALL