TIRFMITS

TIRFMITSはCA Genで提供される呼び出し先モジュールです。CA Genアクション ダイアグラムがMINUTETIMESTAMP関数を使用するたびに呼び出されます。

MINUTETIMESTAMPは、タイムスタンプの分の部分を抽出します。0~59の数値が戻されます。

MINUTETIMESTAMPは、以下のCOBOLステートメントを生成します。

ステートメント

個数

Call

1

Compute

2

Move

2

Initialize

1

IF

1

MINUTETIMESTAMPを頻繁に使用すると、CPUコストが大幅に増加します。

ヒント

1つのアクション ダイアグラム内で、MINUTETIMESTAMPが同じタイムスタンプに対して複数回使用される場合は、以下のように対処します。

  • 希望するタイムスタンプに対してMINUTETIMESTAMPを1回使用する。

  • 戻された分をローカル ビューに保存する。

  • 残りのインスタンスに対しては、MINUTETIMESTAMPの代わりにローカル ビューを使用する。

  • ローカル ビューを、値を必要とするすべての呼び出し先アクション ダイアグラムのインポート ビューに渡す。

MINUTETIMESTAMPが複数のCA Gen関数を使用するアクション ダイアグラムで使用される場合、またはMINUTETIMESTAMPが原因でアクション ダイアグラムのCPU使用が増加する場合は、アクション ダイアグラムを外部アクション ブロックに変換することを検討してください。

COBOL外部アクション ブロックの例:

以下の例では、タイムスタンプの分の部分を数値に変換するために必要なCOBOLステートメントは2つだけです。

WORKING-STORAGE SECTION.

01 WS-FIELDS.

03 WS-TIME PIC 9(12).

03 WS-TIME-X REDEFINES WS-TIME.

05 WS-TIME-HOUR PIC 9(02).

05 WS-TIME-MINUTE PIC 9(02).

05 WS-TIME-SECOND PIC 9(02).

05 WS-TIME-MICROSECOND PIC 9(06).

LINKAGE SECTION.

01 IMPORT-0001EV.

03 WORK-VIEW-0001ET.

05 TIMESTAMP-FLD1-0001AS PIC X(0001).

05 TIMESTAMP-FLD1-0001.

07 FILLER-ZERO-DATE PIC 9(0008).

07 FILLER-ZERO-TIME PIC 9(0012).

05 TIMESTAMP-FLD1-0001XX REDEFINES TIMESTAMP-FLD1-0001

PIC X(0020).

01 EXPORT-0002EV.

03 WORK-VIEW-0002ET.

05 INTEGER-FLD1-0002AS PIC X(0001).

05 INTEGER-FLD1-0002 PIC S9(0002).

05 INTEGER-FLD1-0002XX REDEFINES INTEGER-FLD1-0002

PIC X(0002).

PROCEDURE DIVISION.

MOVE FILLER-ZERO-TIME TO WS-TIME.

MOVE WS-TIME-MINUTE TO INTEGER-FLD1-0002.