TIRFMIN

TIRFMIN is a called module supplied with CA Gen. TIRFMIN is called every time an CA Gen action diagram uses the MINUTE function.

MINUTE extracts the minute part of a valid time. The numeric value returned will be a number between 0 and 59 inclusive.

MINUTE generates the following COBOL statements:

Statement

Quantity

Call

1

Compute

2

Move

2

Initialize

1

IF

1

Heavy use of MINUTE can drastically increase CPU costs.

Hints

If an action diagram uses MINUTE more than once for the same time:

  • use MINUTE once for the desired time

  • save the minute returned in a local view

  • use the local view instead of MINUTE for the remaining instances

  • pass the local view to the import view of any called action diagrams that need it.

If MINUTE is used in an action diagram that uses several CA Gen functions, or the action diagram has high CPU usage due to MINUTE, consider converting the action diagram to an external action block.

Example (COBOL External Action Block)

In this example, only two COBOL statements are needed to extract the minute part of a time into a numeric value.

 

WORKING-STORAGE SECTION.

01 WS-FIELDS.

03 WS-TIME PIC 9(06).

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).

LINKAGE SECTION.

01 IMPORT-0001EV.

03 WORK-VIEW-0001ET.

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

05 TIME-FLD1-0001 PIC S9(0006).

05 TIME-FLD1-0001XX REDEFINES TIME-FLD1-0001

PIC X(0006).

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 TIME-FLD1-0001 TO WS-TIME.

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