COBOL Program Customer Data

Need aCOBOL program from the specs in cobol1.jpg. customer data is attatched. Can pay more if needed. if can't be done need to knoe asap. Thanks

© SolutionLibrary Inc. solutionlibary.com 9836dcf9d7 https://solutionlibrary.com/computer-science/data/cobol-program-customer-data-21o

Solution Preview

...VE 'Y' TO EOF-SWITCH.
PERFORM DATA-LOOP
UNTIL NO-MORE-INPUT-RECORDS.
CLOSE IN-FILE.

DATA-LOOP.
IF VALID-STATE-CODE
MOVE IN-RECORD TO SORT-RECORD
RELEASE SORT-RECORD.
READ IN-FILE
AT END MOVE 'Y' TO EOF-SWITCH.
Input
91163Dube Jason Chicago IL
61535King Adriane Cincinnati OH
45636Holtz Rachel Newport KY
10216Gehl Bryan Louisville KY
52158Flynn Ashley Muskegon MI
22277Theis Hanah Norwood OH
38551Solpa Mac Lansing MI
78496McCoy Amanda Brookfield WI
65720Read Sean Springfield BF
94000Waymel Bradley Kalamazoo MI
42966Vilella Reza Urbana IL
04928Streeter Farhad Toledo OH
69216Steele Karen Covington KY
56913Moreno Jan Dayton OH
34932Vogel Sandra Grand RapidsMI
Output (sorted by name with invalid state code omitted)
91163Dube Jason Chicago IL
52158Flynn Ashley Muskegon MI
10216Gehl Bryan Louisville KY
45636Holtz Rachel Newport KY
61535King Adriane Cincinnati OH
78496McCoy Amanda Brookfield WI
56913Moreno Jan Dayton OH
38551Solpa Mac Lansing MI
69216Steele Karen Covington KY
04928Streeter Farhad Toledo OH
22277Theis Hanah Norwood OH
42966Vilella Reza Urbana IL
34932Vogel Sandra Grand RapidsMI
94000Waymel Bradley Kalamazoo MI
________________________________________

Sort Example: INPUT PROCEDURE with inline PERFORM
________________________________________
IDENTIFICATION DIVISION.
PROGRAM-ID. SORT-2A.
AUTHOR. Your Name.

* In this example we use the INPUT PROCEDURE option instead of
* USING because we want to verify that the state code in the
* input record is valid.

ENVIRONMENT DIVISION.
INPUT-OUTPUT SECTION.
FILE-CONTROL.
SELECT IN-FILE
ASSIGN TO 'C:PCOBWINEXAMPLEUNSORTED.TXT'
ORGANIZATION IS LINE SEQUENTIAL.
SELECT OUT-FILE
ASSIGN TO 'C:PCOBWINEXAMPLESORTED2A.TXT'
ORGANIZATION IS LINE SEQUENTIAL.
SELECT SORT-FILE
ASSIGN TO 'C:PCOBWINEXAMPLEWORK.TMP'.

DATA DIVISION.
FILE SECTION.
FD IN-FILE
DATA RECORD IS IN-RECORD.
01 IN-RECORD.
02 IN-ID PIC 9(5).
02 IN-LAST-NAME PIC X(15).
02 IN-FIRST-NAME PIC X(10).
02 IN-CITY PIC X(12).
02 IN-STATE PIC X(2).
88 VALID-STATE-CODE VALUES 'AK'
'AL' 'AR' 'AZ' 'CA' 'CO' 'CT' 'DC' 'DE' 'FL' 'GA'
'HI' 'IA' 'ID' 'IL' 'IN' 'KS' 'KY' 'LA' 'MA' 'MD'
'ME' 'MI' 'MN' 'MO' 'MS' 'MT' 'NC' 'ND' 'NE' 'NH'
'NJ' 'NM' 'NV' 'NY' 'OH' 'OK' 'OR' 'PA' 'RI' 'SC'
'SD' 'TN' 'TX' 'UT' 'VA' 'VT' 'WA' 'WI' 'WV' 'WY'.

FD OUT-FILE
DATA RECORD IS OUT-RECORD.
01 OUT-RECORD.
02 OUT-ID PIC 9(5).
02 OUT-LAST-NAME PIC X(15).
02 OUT-FIRST-NAME PIC X(10).
02 OUT-CITY PIC X(12).
02 OUT-STATE PIC X(2).

SD SORT-FILE
DATA RECORD IS SORT-RECORD.
01 SORT-RECORD.
02 SORT-ID PIC 9(5).
02 SORT-LAST-NAME PIC X(15).
02 SORT-FIRST-NAME PIC X(10).
02 SORT-CITY PIC X(12).
02 SORT-STATE PIC X(2).

WORKING-STORAGE SECTION.

01 EOF-SWITCH PIC X VALUE 'N'.
88 NO-MORE-INPUT-RECORDS VALUE 'Y'.

PROCEDURE DIVISION.
MAIN-LOGIC.
SORT SORT-FILE
ON ASCENDING KEY SORT-LAST-NAME
INPUT PROCEDURE IS INPUT-LOGIC
GIVING OUT-FILE.
STOP RUN.

INPUT-LOGIC.
OPEN INPUT IN-FILE.
PERFORM UNTIL NO-MORE-INPUT-RECORDS
READ IN-FILE
AT END
MOVE 'Y' TO EOF-SWITCH
NOT AT END
IF VALID-STATE-CODE
MOVE IN-RECORD TO SORT-RECORD
RELEASE SORT-RECORD
END-IF
END-READ
END-PERFORM.
CLOSE IN-FILE.
Input
91163Dube Jason Chicago IL
61535King Adriane Cincinnati OH
45636Holtz Rachel Newport KY
10216Gehl Bryan Louisville KY
52158Flynn Ashley Muskegon MI
22277Theis Hanah Norwood OH
38551Solpa Mac Lansing MI
78496McCoy Amanda Brookfield WI
65720Read Sean Springfield BF
94000Waymel Bradley Kalamazoo MI
42966Vilella Reza Urbana IL
04928Streeter Farhad Toledo OH
69216Steele Karen Covington KY
56913Moreno Jan Dayton OH
34932Vogel Sandra Grand RapidsMI
Output (sorted by name with invalid state code omitted)
91163Dube Jason Chicago IL
52158Flynn Ashley Muskegon MI
10216Gehl Bryan Louisville KY
45636Holtz Rachel Newport KY
61535King Adriane Cincinnati OH
78496McCoy Amanda Brookfield WI
56913Moreno Jan Dayton OH
38551Solpa Mac Lansing MI
69216Steele Karen Covington KY
04928Streeter Farhad Toledo OH
22277Theis Hanah Norwood OH
42966Vilella Reza Urbana IL
34932Vogel Sandra Grand RapidsMI
94000Waymel Bradley Kalamazoo MI

Sort Example: OUTPUT PROCEDURE
________________________________________
IDENTIFICATION DIVISION.
PROGRAM-ID. SORT-3.
AUTHOR. YourName.

* In this example we use the OUTPUT PROCEDURE option instead of
* GIVING because we want to format a report rather than just
* creating a sorted and validated version of the input data.

ENVIRONMENT DIVISION.
INPUT-OUTPUT SECTION.
FILE-CONTROL.
SELECT IN-FILE
ASSIGN TO 'C:PCOBWINEXAMPLEUNSORTED.TXT'
ORGANIZATION IS LINE SEQUENTIAL.
SELECT OUT-FILE
ASSIGN TO 'C:PCOBWINEXAMPLESORTED3.TXT'
ORGANIZATION IS LINE SEQUENTIAL.
SELECT SORT-FILE
ASSIGN TO 'C:PCOBWINEXAMPLEWORK.TMP'.

DATA DIVISION.
FILE SECTION.
FD IN-FILE
DATA RECORD IS IN-RECORD.
01 IN-RECORD.
02 IN-ID PIC 9(5).
02 IN-LAST-NAME PIC X(15).
02 IN-FIRST-NAME PIC X(10).
02 IN-CITY PIC X(12).
02 IN-STATE PIC X(2).
88 VALID-STATE-CODE VALUES 'AK'
'AL' 'AR' 'AZ' 'CA' 'CO' 'CT' 'DC' 'DE' 'FL' 'GA'
'HI' 'IA' 'ID' 'IL' 'IN' 'KS' 'KY' 'LA' 'MA' 'MD'
'ME' 'MI' 'MN' 'MO' 'MS' 'MT' 'NC' 'ND' 'NE' 'NH'
'NJ' 'NM' 'NV' 'NY' 'OH' 'OK' 'OR' 'PA' 'RI' 'SC'
'SD' 'TN' 'TX' 'UT' 'VA' 'VT' 'WA' 'WI' 'WV' 'WY'.

FD OUT-FILE
DATA RECORD IS OUT-RECORD.
01 OUT-RECORD PIC X(80).

SD SORT-FILE
DATA RECORD IS SORT-RECORD.
01 SORT-RECORD.
02 SORT-ID PIC 9(5).
02 SORT-LAST-NAME PIC X(15).
02 SORT-FIRST-NAME PIC X(10).
02 SORT-CITY PIC X(12).
02 SORT-STATE PIC X(2).

WORKING-STORAGE SECTION.

01 DETAIL-LINE.
02 DETAIL-ID PIC 9(5).
02 PIC X(3) VALUE SPACES.
02 DETAIL-LAST-NAME PIC X(15).
02 PIC X(3) VALUE SPACES.
02 DETAIL-FIRST-NAME PIC X(10).
02 PIC X(3) VALUE SPACES.
02 DETAIL-CITY PIC X(12).
02 PIC X(3) VALUE SPACES.
02 DETAIL-STATE PIC X(2).

01 SORTED-DATA-SWITCH PIC X VALUE 'N'.
88 NO-MORE-SORTED-DATA VALUE 'Y'.

01 EOF-SWITCH PIC X VALUE 'N'.
88 NO-MORE-INPUT-RECORDS VALUE 'Y'.

PROCEDURE DIVISION.
MAIN-LOGIC.
SORT SORT-FILE
ON ASCENDING KEY SORT-LAST-NAME
INPUT PROCEDURE IS INPUT-LOGIC
OUTPUT PROCEDURE IS CREATE-REPORT.
STOP RUN.

INPUT-LOGIC.
OPEN INPUT IN-FILE.
READ IN-FILE
AT END MOVE 'Y' TO EOF-SWITCH.
PERFORM DATA-LOOP
UNTIL NO-MORE-INPUT-RECORDS.
CLOSE IN-FILE.

DATA-LOOP.
IF VALID-STATE-CODE
MOVE ...