Skip to content

Instantly share code, notes, and snippets.

@worksofliam
Created August 30, 2022 01:52
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save worksofliam/8fb35abeadf048a1d70b151da1592b10 to your computer and use it in GitHub Desktop.
Save worksofliam/8fb35abeadf048a1d70b151da1592b10 to your computer and use it in GitHub Desktop.
IDENTIFICATION DIVISION.
PROGRAM-ID. PGMNAME.
DATA DIVISION.
LINKAGE SECTION.
01 base.
05 a PIC X(5).
05 b PIC X(10).
* Output struct might go here
WORKING-STORAGE SECTION.
* Variables
PROCEDURE DIVISION USING base.
MAINLINE.
DISPLAY a OF base.
DISPLAY b OF base.
STOP RUN.
IDENTIFICATION DIVISION.
PROGRAM-ID. PGMNAME.
DATA DIVISION.
LINKAGE SECTION.
01 base.
05 sub PIC S9(9)V9(2).
05 tax PIC S9(9)V9(2).
05 user.
10 new PIC X(1).
10 iddd PIC S9(15)V9(7).
05 billing.
10 line1 PIC X(30).
10 line2 PIC X(30).
10 city PIC X(20).
10 state PIC X(2).
10 postal PIC X(10).
05 card.
10 long PIC X(16).
10 expiry PIC S9(4)V9(0).
10 cvv2 PIC X(3).
10 save PIC X(1).
* Output struct might go here
WORKING-STORAGE SECTION.
* Variables
PROCEDURE DIVISION USING base.
MAINLINE.
DISPLAY sub OF base.
DISPLAY tax OF base.
DISPLAY new OF user OF base.
DISPLAY iddd OF user OF base.
DISPLAY line1 OF billing OF base.
DISPLAY line2 OF billing OF base.
DISPLAY city OF billing OF base.
DISPLAY state OF billing OF base.
DISPLAY postal OF billing OF base.
DISPLAY long OF card OF base.
DISPLAY expiry OF card OF base.
DISPLAY cvv2 OF card OF base.
DISPLAY save OF card OF base.
STOP RUN.
IDENTIFICATION DIVISION.
PROGRAM-ID. EXAMPLE3.
DATA DIVISION.
* Called with:
* CALL PGM(EXAMPLE3) PARM('000010' ' ')
WORKING-STORAGE SECTION.
EXEC SQL INCLUDE SQLCA END-EXEC.
* Variables
LINKAGE SECTION.
* Input struct
01 base.
05 empno PIC X(6).
* Output struct
01 result.
05 fullname PIC X(25).
PROCEDURE DIVISION USING base result.
MAINLINE.
IF (EMPNO of BASE IS NOT = " ") THEN
EXEC SQL
SELECT FIRSTNME || " " || LASTNAME
INTO :fullname
FROM SAMPLE.EMPLOYEE
WHERE EMPNO = :empno
END-EXEC
ELSE
DISPLAY "No employee number entered"
END-IF.
STOP RUN.
IDENTIFICATION DIVISION.
PROGRAM-ID. EXAMPLE4.
DATA DIVISION.
* Called with:
* CALL PGM(EXAMPLE3) PARM('000010' ' ')
WORKING-STORAGE SECTION.
EXEC SQL INCLUDE SQLCA END-EXEC.
* Variables
LINKAGE SECTION.
* Input struct
01 base.
05 empno PIC X(6).
* Output struct
01 result.
05 fullname PIC X(25).
PROCEDURE DIVISION USING base result.
MAINLINE.
MOVE " " TO fullname.
IF (EMPNO of BASE IS NOT = " ")
EXEC SQL
SELECT FIRSTNME || " " || LASTNAME
INTO :fullname
FROM SAMPLE.EMPLOYEE
WHERE EMPNO = :empno
END-EXEC
END-IF.
IF fullname IS = " "
DISPLAY "Employee not found.".
STOP RUN.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment