Previous Topic: TLMDATE SUB_DAYS Macro—Subtract Days From DateNext Topic: TLMDATE TEST_FORMAT Macro—Test External Date Format


TLMDATE SUB_YEARS Macro—Subtract Years From Date

Use the SUB_YEARS form of the TLMDATE macro to subtract a number of years from a date. This function subtracts YEARS from FRDATE and places the resulting date into RESULT.

This function uses registers 0, 1, 14 and 15. These registers cannot be used to pass information to the macro.

This macro has the following format:

label TLMDATE SUB_YEARS
,FRDATE=internal1
,YEARS=years
,RESULT=internal2
,ANCHOR=anchor
,PARM=plist
[,NORMAL=branch]
[,ERROR=branch]
[,FAIL=branch]
FRDATE=internal1

Specifies the internal date to be subtracted from.

Type: RX-type label, (Rn), internal packed (4 bytes)

YEARS=years

Specifies the number of years to be subtracted from FRDATE.

Type: RX-type label, (Rn), packed (4 bytes) or a constant (quotes)

RESULT=internal2

Specifies the field to contain the resulting internal date.

Type: RX-type label, (Rn), internal packed (4 bytes)

ANCHOR=anchor

Points to the label specified by the ANCHOR form of the TLMDATE macro.

Type: RX-type label or (Rn)

PARM=plist

Points to the label specified by the PARM form of the TLMDATE macro.

Type: RX-type label or (Rn)

NORMAL=branch

(Optional). Specifies the instruction to receive control on return from the CTSDATE module when no errors occurred. If not defined, the next instruction after the macro is executed.

Type: RX-type label

ERROR=branch

(Optional) Specifies the instruction to receive control on return from the CTSDATE module when a date or range error occurred. If not defined, the next instruction after the macro is executed.

Type: RX-type label

FAIL=branch

(Optional) Specifies the instruction to receive control on return from the CTSDATE module when a critical error has occurred. If not defined, the next instruction after the macro is executed.

Type: RX-type label

Example: TLMDATE SUB_YEARS

                                                                  Pos. 72
                                                                  |
TLMDATE  SUB_YEARS,ANCHOR=ANCHOR,PARM=DATEPARM,                   X
      FRDATE=CURRENT,YEARS=FWORD,RESULT=NYEAR,                    X
      FAIL=ABEND004,ERROR=ABEND004