• 検索結果がありません。

置換えパラメタ

ドキュメント内 バッチ開発ガイド (ページ 45-52)

プロシジャ内のジョブステップ定義に設定するジョブステップの実行条件

実行条件の対象となる先行ジョブステップは、同一プロシジャ内の先行ジョブステップのみです。

プロシジャ内のジョブステップ定義に設定するジョブステップの迂回条件

迂回条件の対象となる先行ジョブステップ名として以下が指定できます。

・ 同一プロシジャ内の先行ジョブステップ名

・ “全終了コード”(同一プロシジャ内のすべての先行ジョブステップ名を指定したことに相当します。)

・ “直前終了コード”(同一プロシジャ内の直前に実行されたジョブステップ名を指定したことに相当します。)

プロシジャ内のジョブステップ定義に設定する資源定義

先行ジョブステップの資源を引き継いで利用する場合、対象となる先行ジョブステップは、同一プロシジャ内の先行ジョブステップのみ です。

- バッチアプリケーション定義のコマンド/スクリプト(ユーティリティ)用の[パラメタ]

- 資源定義の[ディレクトリ名]

- 資源定義の[ファイル名]

- 資源定義の[相対世代番号]

- 資源定義の[絶対世代番号]

- 資源定義の[使用容量]

・ プロシジャ呼出しステップ定義

- 基本情報の置換えパラメタの[値]

・ プロシジャ定義

- 基本情報の置換えパラメタの初期値の[値]

置換えパラメタの指定数

・ 複数指定

以下の入力域は、1つの入力域に置換えパラメタを複数個指定できます。

- 資源定義の[ディレクトリ名]

- 資源定義の[ファイル名]

・ 単一指定

上記の複数指定できる入力域以外は、置換えパラメタを1つだけ指定できます。

置換えパラメタ入力域の最大長

・ 入力域の最大長

置換えパラメタを入力する入力域の最大長は、置換えパラメタを指定した場合と指定しない場合で異なります。それぞれの場合で の入力域の最大長は以下のようになります。

- 置換えパラメタを指定しない場合の最大長は、入力域の最大長と同じです。

- 置換えパラメタ(単一)を指定する場合の最大長は以下のとおりです。

最大長 = 入力域の最大長 + 67(*)

(*):67 = 64(置換えパラメタ1個の最大長) + 3(${}の文字数)

資源定義の[使用容量]、[相対世代番号]、[絶対世代番号]入力域では、置換えパラメタを指定した場合は、置換えパラメタ以 外の文字は指定できないため、最大長は67となります。

- 置換えパラメタ(複数)を指定する場合の最大長は以下のとおりです。

最大長 = 入力域の最大長 + (67(*) × 置換えパラメタの指定できる最大数) (*):67 = 64(置換えパラメタ1個の最大長) + 3(${}の文字数)

置換えができるパラメタの入力域と指定できるパラメタの最大数/最大長

定義名 入力域 指定できる置換

えパラメタの最 大数

指定できる入力域の最大長

大項目 中項目 置換えパラメタなし 置換えパラメタ

あり (*2) ジョブ定義 環境変数定義 環境変数の値 1 1,024 1,091 ジョブステップ

定義

バッチアプリ ケーション定義

環境変数の値 1 1,024 1,091

COBOLアプリケーショ

ンのパラメタの値(符号 なしの外部10進項目の 場合)

1 18 85

COBOLアプリケーショ ンのパラメタの値(符号 ありの外部10進項目の 場合)

1 19(*1) 86(*1)

COBOLアプリケーショ ンのパラメタの値(英数 字の場合)

1 1,024 1,091

C言語アプリケーション のパラメタの値(short)

1 2 69

C言語アプリケーション のパラメタの値(int)

1 4 71

C言語アプリケーション のパラメタの値

(longlong)

1 8 75

C言語アプリケーション のパラメタの値(char)

1 1024 1,091

ユーティリティのパラメ タの値

1 1,024 1091

資源定義 ディレクトリ名 10 255 925

ディレクトリ名

(論理ディレクトリ名の場 合)

10 64 734

ファイル名 10 255 925

相対世代番号 1 3 67

絶対世代番号 1 4 67

使用容量 1 4 67

プロシジャ呼出 しステップ定義

基本情報 置換えパラメタの値 1 256 323

プロシジャ定義 基本情報 置換えパラメタの初期 値

1 256 323

*1:データ型が符号ありの場合は、符号(“-”)を入力できるため、符号(“-”)を含めた長さです。

*2:入力域の最大長については“置換えパラメタ入力域の最大長”を参照してください。

置換えパラメタの値に指定できる最大数

置換えパラメタの値として指定できる数は以下のとおりです。

・ ジョブ定義

- ジョブの投入時に指定する置換えパラメタの最大数:256

・ プロシジャ定義

- プロシジャ呼出しステップ定義([プロシジャ定義の置換えパラメタ])から指定できる最大数:256

- プロシジャ定義([置換えパラメタの初期値])から指定できる最大数: 256

置換えパラメタの値は、上記の数を超えて指定できないため、置換えパラメタの使用時は最大数を意識してください。

ジョブスケジューラ製品のSystemwalker Operation Managerより、事前にジョブネットに登録して実行するスケジュールジョブの場合、置 換えパラメタを指定できる最大数は32個です。

2.2.5.2 置換えパラメタの指定形式

置換えパラメタの指定形式は以下のとおりです。

${置換えパラメタ} 複数指定の場合

入力域中に複数の置換えパラメタを指定します。

単一指定の場合

入力域中に1つだけ置換えパラメタを指定します。複数の置換えパラメタを指定した場合はエラーとなります。

置換えパラメタに指定できる文字

・ 置換えパラメタ

- 入力文字数:1~64バイト(${}を除く)

- 文字種:半角英文字(大文字/小文字の区別あり)、半角数字、半角記号(“_”,“-”)

- 先頭は英文字

・ 置換えパラメタの値

- 入力文字数:1~256バイト

- 文字種:入力した値がそのままパラメタ値として渡ります。

・ 置換えパラメタに指定できない文字を設定した場合は、指定された文字どおりに取り扱い、置換えパラメタとして取り扱いません。

・ 置換えパラメタに予約語を指定した場合は、置換えパラメタの値を指定する必要はありません。

・ 置換えパラメタの値の入力文字数は、置換えパラメタを設定する入力域の最大長(置換えパラメタなし)に依存します。入力域の最 大長については、“置換えができるパラメタの入力域と指定できるパラメタの最大数/最大長”を参照してください。

置換えパラメタの指定方法

ジョブ定義、ジョブステップ定義、およびプロシジャ呼出しステップ定義の置換えパラメタは、ジョブの投入時にパラメタとして指定しま す。ジョブの投入時に指定したパラメタと置換えパラメタの関係を以下に示します。

ジョブスケジューラから実行した場合

コマンドから実行した場合

ジョブの投入時の指定では、プロシジャ定義中の置換えパラメタの指定を直接行うことはできません。プロシジャ内のジョブステップ定 義の置換えパラメタは、プロシジャ定義またはプロシジャ呼出しステップ定義から指定します。

プロシジャ呼出しステップ定義の置換えパラメタの値に置換えパラメタを指定することで、プロシジャ内のジョブステップ定義中の置換 えパラメタをジョブの投入時のパラメタ指定で置き換えられます。

置換えパラメタの置換順番

置換えパラメタの置換は以下の順に行います。

契機 順番 置換処理

ジョブ投入時 (1) ジョブの投入時に指定した置換えパラメタを置換する。

契機 順番 置換処理

(2) ジョブ定義とジョブステップ定義の中で値が指定されていない置換えパラ メタは空文字列(“”)に置換する。

プロシジャ呼出 し時

(3) プロシジャ呼出しステップ定義で指定した置換えパラメタを置換する。

(4) プロシジャ定義で指定した置換えパラメタを置換する。

(5) プロシジャ内のジョブステップ定義の中で値を指定していない置換えパラ メタは空文字列(“”)に置換する。

以下に置換えパラメタの指定から置き換えるまでの流れを示します。図中の数字は上記の表の順番に対応しています。

2.2.5.3 置換えパラメタの予約語

置換えパラメタには以下の予約語があります。置換えパラメタに予約語を指定することで、バッチジョブ定義中の特定箇所を時刻やジョ ブ名などに置き換えることができます。

・ SYSYEAR:ジョブ実行依頼時の年(西暦)に置き換えます。

置き換え後のフォーマットはYYYYです。(YYYY:西暦)

置き換え例を以下に示します。(指定したジョブを実行依頼した西暦が、“2006年”の場合)

${SYSYEAR} ⇒ 2006

・ SYSMONTH:ジョブ実行依頼時の年月に置き換えます。

置き換え後のフォーマットはYYYYMMです。(YYYY:西暦、MM:月)

置き換え例を以下に示します。(指定したジョブを実行依頼した月が、“2006年4月”の場合)

${SYSMONTH} ⇒ 200604

・ SYSWEEK:ジョブ実行依頼時の年週(*)に置き換えます。

置き換え後のフォーマットはYYYYWWです。(YYYY:西暦、WW:週の番号)

(*):年週とは、ISO8601で規定している年と週の番号を表します。

置き換え例を以下に示します。(指定したジョブを実行依頼した日時が、“2006年4月30日”の場合)

${SYSWEEK} ⇒ 200618

・ SYSDATE:ジョブ実行依頼時の年月日に置き換えます。

置き換え後のフォーマットはYYYYMMDDです。(YYYY:西暦、MM:月、DD:日)

置き換え例を以下に示します。(指定したジョブを実行依頼した日時が、“2006年4月30日”の場合)

${SYSDATE} ⇒ 20060430

・ SYSTIME:ジョブ実行依頼時の時分秒に置き換えます。

置き換え後のフォーマットはhhmmssです。(hh:時間、mm:分、ss:秒)

置き換え例を以下に示します。(指定したジョブを実行依頼した時刻が、“21時13分56秒”の場合)

${SYSTIME} ⇒ 211356

・ SYSJOBNAME:ジョブ名に置き換えます。

置き換え例を以下に示します。(指定したジョブ名が“JOB001”で実行した場合)

${SYSJOBNAME} ⇒ JOB001

・ SYSJOBDEF:ジョブ定義名に置き換えます。

置き換え例を以下に示します。(指定したジョブ定義名が、“JOBDEF01”の場合)

${SYSJOBDEF} ⇒ JOBDEF01

・ SYSSTEPNAME:ステップ名に置き換えます。ジョブステップの場合はジョブステップ名に置き換えます。プロシジャ呼出しステッ

プの場合は、“プロシジャ呼出しステップ名.プロシジャ内のジョブステップ名”に置き換えます(間をピリオドで区切ります)。

ステップの情報であるためジョブ定義の環境変数の[値]としては使用できません。(値は設定されません。) 置き換え例を以下に示します。(指定したジョブステップ名が“STEP001”で実行した場合)

${SYSSTEPNAME} ⇒ STEP001

・ SYSJOBNO:ジョブ番号に置き換えます。

置き換え例を以下に示します。(指定したジョブがジョブ番号“00018”だった場合)

${SYSJOBNO} ⇒ 00018

予約語はシステムが置き換えるので、“置換えパラメタの設定ダイアログ”からは指定できません。指定すると[OK]ボタンを押したときに エラーダイアログが表示されます。

・ 予約語は、大文字と小文字を区別します。

・ “SYS”で始まる文字列は、“置換えパラメタの設定ダイアログ”から指定できません。

・ 資源定義の [相対世代番号]入力域および[絶対世代番号]入力域には、予約語は指定できません。

・ 資源定義の [使用容量]入力域には、予約語は指定できません。

Systemwalker Operation Managerと連携する場合、Systemwalker Operation Managerが設定する置換えパラメタが使用できます。

ドキュメント内 バッチ開発ガイド (ページ 45-52)