Skip to content

Instantly share code, notes, and snippets.

@pdemby
Last active August 29, 2015 14:03
Show Gist options
  • Save pdemby/b0984f597e1502c72872 to your computer and use it in GitHub Desktop.
Save pdemby/b0984f597e1502c72872 to your computer and use it in GitHub Desktop.
WORKING-STORAGE SECTION.
01 WS-CCYYMMDD PIC X(8).
01 WS-YYMMDD PIC X(6).
01 WS-DATE-IN PIC X(8).
01 WS-DATE-IN-NUM REDEFINES WS-DATE-IN PIC 9(8).
01 WS-DATE-OUT.
05 WS-DATE-OUT-CC PIC XX.
05 WS-DATE-OUT-YY PIC XX.
05 WS-DATE-OUT-MM PIC XX.
05 WS-DATE-OUT-DD PIC XX.
01 WS-DATE-OUT-NUM REDEFINES WS-DATE-OUT PIC 9(8).
01 WS-DATE-TEMP PIC 9(8) VALUE 0.
01 WS-DAYS PIC 9(3) VALUE 0.
01 WS-INVOICE-DUE-DATE PIC X(8).
PROCEDURE DIVISION.
DATE-ROUTINE.
ACCEPT WS-CCYYMMDD FROM CENTURY-DATE.
MOVE WS-CCYYMMDD TO WS-DATE-IN.
MOVE 30 TO WS-DAYS.
PERFORM ADD-DAYS THRU ADD-DAYS-EXIT.
MOVE WS-DATE-OUT TO WS-INVOICE-DUE-DATE.
DATE-ROUTINE-EXIT.
EXIT.
ADD-DAYS.
MOVE 0 TO WS-DATE-TEMP.
MOVE FUNCTION INTEGER-OF-DATE (WS-DATE-IN-NUM)
TO WS-DATE-TEMP.
COMPUTE WS-DATE-TEMP = WS-DATE-TEMP + WS-DAYS.
MOVE FUNCTION DATE-OF-INTEGER (WS-DATE-TEMP)
TO WS-DATE-OUT-NUM.
ADD-DAYS-EXIT.
EXIT.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment