TIRFNUMD
TIRFNUMDはCA Genで提供される呼び出し先モジュールです。CA Genアクション ダイアグラムがDATENUM関数を使用するたびに呼び出されます。
DATENUMは、数値を有効な日付に変換します。DATENUMの一般的な用途の1つは、Db2の日付フィールドに初期値として'0001-01-01を設定することです。
DATENUMは、以下のCOBOLステートメントを生成します。
ステートメント |
個数 |
Call |
1 |
Compute |
2 |
Move |
2 |
Initialize |
1 |
IF |
1 |
DATENUMを頻繁に使用すると、CPUコストが大幅に増加します。
例:
以下の例では、Db2フィールドに初期値として'0001-01-01を設定します。
CREATE employee
SET social_security_number TO import employee social_security_number
SET termination_date TO datenum(00010101)
WHEN successful
ヒント
1つのアクション ダイアグラム内で、DATENUMが同じ数値に対して複数回使用される場合は、以下のように対処します。
-
希望する数値に対してDATENUMを1回使用する。
-
戻された日付をローカル ビューに保存する。
-
残りのインスタンスに対しては、DATENUMの代わりにローカル ビューを使用する。
-
ローカル ビューを、値を必要とするすべての呼び出し先アクション ダイアグラムのインポート ビューに渡す。
DATENUMが複数のCA Gen関数を使用するアクション ダイアグラムで使用される場合、またはDATENUMが原因でアクション ダイアグラムのCPU使用が増加する場合は、アクション ダイアグラムを外部アクション ブロックに変換することを検討してください。
COBOL外部アクション ブロックの例:
以下の例では、数値を有効な日付に変換するために必要なCOBOLステートメントは1つだけです。
LINKAGE SECTION.
01 IMPORT-0001EV.
03 WORK-VIEW-0001ET.
05 INTEGER-FLD1-0001AS PIC X(0001).
05 INTEGER-FLD1-0001 PIC S9(0008).
05 INTEGER-FLD1-0001XX REDEFINES INTEGER-FLD1-0001
PIC X(0008).
01 EXPORT-0002EV.
03 WORK-VIEW-0002ET.
05 DATE-FLD1-0002AS PIC X(0001).
05 DATE-FLD1-0002 PIC S9(0008).
05 DATE-FLD1-0002XX REDEFINES DATE-FLD1-0002
PIC X(0008).
PROCEDURE DIVISION.
MOVE INTEGER-FLD1-0001 TO DATE-FLD1-0002.