%MONTHS Built-In Functions in rpgle
%MONTHS converts a number into a duration(No. of months). We can use this duration to add or subtract to a Date or timestamp value.
Hence by using %MONTHS, we can get any previous Date or future Date.
Format of this function is %MONTHS (Number of Months).
Example –%months built-in function in rpgle
Columns . . . : 6 80 AMIT/QRPGSRC
SEU==> TESTRPG
FMT * *. 1 ...+... 2 ...+... 3 ...+... 4 ...+... 5 ...+... 6 ...+... 7 ...+... 8
*************** Beginning of data *****************************************
0001.00 DDATE0 S D INZ(D'2011-01-12')
0002.00 DDATE1 S D
0003.00 DTIMESTP0 S Z
0004.00 DTIMESTP1 S Z
0005.00 C EVAL DATE1=DATE0 + %MONTHS(2)
0006.00 C DATE0 DSPLY
0007.00 C DATE1 DSPLY
0008.00 C TIME TIMESTP0
0009.00 C EVAL TIMESTP1=TIMESTP0 - %MONTHS(2)
0010.00 C TIMESTP0 DSPLY
0011.00 C TIMESTP1 DSPLY
0012.00 C SETON LR
****************** End of data ********************************************
Output
2011-01-12
2011-03-12
2013-02-01-01.30.23.091000
2012-12-01-01.30.23.091000