How to get the Current Date/Time in user defined format?
IDENTIFICATION DIVISION. PROGRAM-ID. COBLDATE. DATA DIVISION. WORKING-STORAGE SECTION. 01 WS-DATETIME PIC X(21). 01 WS-FORMATTED-DT. 05 WS-FORMATTED-DTE-TME. 15 WS-FORMATTED-YEAR PIC 9(4). 15 FILLER PIC X VALUE '-'. 15 WS-FORMATTED-MONTH PIC 9(2). 15 FILLER PIC X VALUE '-'. 15 WS-FORMATTED-DY PIC 9(2). 15 FILLER PIC X VALUE '-'. 15 WS-FORMATTED-HOUR PIC 9(2). 15 FILLER PIC X VALUE ':'. 15 WS-FORMATTED-MINS PIC 9(2). 15 FILLER PIC X VALUE ':'. 15 WS-FORMATTED-SEC PIC 9(2). 15 FILLER PIC X VALUE ':'. 15 WS-FORMATTED-MS PIC 9(2). PROCEDURE DIVISION. MOVE FUNCTION CURRENT-DATE TO WS-DATETIME. MOVE WS-DATETIME(1:4) TO WS-FORMATTED-YEAR. MOVE WS-DATETIME(5:2) TO WS-FORMATTED-MONTH. MOVE WS-DATETIME(7:2) TO WS-FORMATTED-DY. MOVE WS-DATETIME(9:2) TO WS-FORMATTED-HOUR. MOVE WS-DATETIME(11:2) TO WS-FORMATTED-MINS. MOVE WS-DATETIME(13:2) TO WS-FORMATTED-SEC. MOVE WS-DATETIME(15:2) TO WS-FORMATTED-MS. DISPLAY WS-DATETIME. DISPLAY WS-FORMATTED-DT. STOP RUN. |
When you compile and execute the above program, it produces the following result −
2018011005202041+0000 2018-01-10-05:20:20:41 |
If you have any doubts or queries related to this chapter, get them clarified from our Mainframe experts on ibmmainframer Community!