Cobol Copy book layout

Post questions here relative to DataStage Enterprise/PX Edition for such areas as Parallel job design, Parallel datasets, BuildOps, Wrappers, etc.

Moderators: chulett, rschirm, roy

Post Reply
als110
Participant
Posts: 43
Joined: Fri Nov 05, 2004 11:21 am
Location: United States

Cobol Copy book layout

Post by als110 »

I have a fairly large cobol copybok with comp-3 fields. If I want to be able to run jobs from the file what is the easiest way to import it. I have the file in both asci and binary and the meta data is imported into datastage with both the levels and occurs defined. Do I need to us a complex flat file for this and if so which file do I use, asci or binary and do i have to alter any settings on the flat file properties. below is the copybook layout:

01 BMHX-RECORD.
05 BMHX-K-KEY.
10 BMHX-K-COMPANY PIC X(01).
10 BMHX-K-LOB PIC X(01).
10 BMHX-K-REC-TYPE PIC X(01).
88 BMHX-K-INSURED-REC VALUE 'I'.
88 BMHX-K-SPECIAL-REC VALUE 'S'.
88 BMHX-K-PROVIDER-REC VALUE 'P'.
10 BMHX-K-POLICY PIC X(10).
10 BMHX-K-CONTROL-NO PIC X(09).
10 BMHX-K-DESCRIPTION PIC X(01).
A6392H 88 BMHX-K-HEADER-REC VALUE 'H' 'T'.
A6392H 88 BMHX-K-DETAIL-SERV-LINE-REC VALUE 'S' 'U'.
A6392H********** T AND U ARE FOR OVER 20 LINES *********************
05 BMHX-MEDICAL-HEADING-RECORD.
10 BMHX-INSURED-NAME.
15 BMHX-INSURED-LAST PIC X(25).
15 BMHX-INSURED-FIRST PIC X(15).
10 BMHX-INSURED-SS-NO PIC 9(09).
10 BMHX-CLAIM-NO.
15 BMHX-CLM-POLICY PIC X(10).
15 BMHX-CLM-LOC PIC X(03).
15 BMHX-CLM-CERT PIC X(07).
15 BMHX-CLM-CLM-ID PIC X(02).
15 BMHX-CLM-CLM-TYPE PIC X(02).
15 BMHX-CLM-OCCR PIC X(04).
10 BMHX-MAIL-ADDRESS.
15 BMHX-MAIL-NAME.
20 BMHX-MAIL-LAST PIC X(25).
20 BMHX-MAIL-FIRST PIC X(15).
15 BMHX-MAIL-ADDRESS-LINE-1 PIC X(30).
15 BMHX-MAIL-ADDRESS-LINE-2 PIC X(30).
15 BMHX-MAIL-ADDRESS-LINE-3 PIC X(30).
15 BMHX-MAIL-CITY PIC X(19).
15 BMHX-MAIL-STATE PIC X(02).
15 BMHX-MAIL-ZIP.
20 BMHX-MAIL-ZIP-5 PIC X(05).
20 BMHX-MAIL-SUFFIX PIC X(04).
10 BMHX-PATIENT-INFO.
15 BMHX-PATIENT-NAME.
20 BMHX-PATIENT-LAST PIC X(25).
20 BMHX-PATIENT-FIRST PIC X(15).
15 BMHX-PATIENT-SS-NO PIC 9(09).
15 BMHX-PATIENT-ACCOUNT-NO PIC X(20).
10 BMHX-OCCUR-NOTE-TBL
OCCURS 10 TIMES INDEXED BY BMHX-INDX4.
15 BMHX-OCCUR-NOTE PIC X(04).
15 BMHX-ANSI-NOTE PIC X(04).
10 BMHX-EXPENSE-SW PIC X(01).
10 BMHX-PRORATE-PERCENT PIC 99V99.
10 BMHX-INTEREST-PAID-AT PIC 9(02).
10 BMHX-INTEREST-GRACE-DAYS PIC 9(02).
10 BMHX-PRE-EST-DED-ACCUM PIC S9(5)V99 COMP-3.
10 BMHX-PRE-EST-CURR-AMT PIC S9(5)V99 COMP-3.
10 BMHX-PRE-EST-DENT-DED PIC 9(3).
10 BMHX-PRE-EST-ANNUAL-MAX PIC S9(5)V99 COMP-3.
10 BMHX-SPECIAL-MSGS OCCURS 5 TIMES
INDEXED BY BMHX-INDX3.
15 BMHX-SPECIAL-MSG-CODE PIC 9(4).
10 BMHX-PENALTY-AMOUNT PIC 9(4)V99 COMP-3.
10 BMHX-CUST-STATE PIC XX.
10 BMHX-THIS-YR-ACM-TYPE PIC X.
88 BMHX-THIS-YR-ACM-SPECIAL VALUE 'S'.
88 BMHX-THIS-YR-ACM-REGULAR VALUE 'R'.
001491 88 BMHX-THIS-YR-ACM-PPO VALUE 'P'.
10 BMHX-THIS-YR-PLAN-ACCUMS.
15 BMHX-THIS-YR-PLAN PIC 9(03).
15 BMHX-THIS-YR-LT-BEN-REM PIC S9(09)V99 COMP-3.
001491 15 BMHX-THIS-YR-ACCUMS OCCURS 6 TIMES
INDEXED BY BMHX-INDX1.
20 BMHX-THIS-YR-ACC.
25 BMHX-THIS-YR-YTD PIC S9(09)V99 COMP-3.
25 BMHX-THIS-YR-REM PIC S9(09)V99 COMP-3.
10 BMHX-PRIOR-YR-ACM-TYPE PIC X.
88 BMHX-PRIOR-YR-ACM-SPECIAL VALUE 'S'.
88 BMHX-PRIOR-YR-ACM-REGULAR VALUE 'R'.
10 BMHX-PRIOR-YR-PLAN-ACCUMS.
15 BMHX-PRIOR-YR-PLAN PIC 9(03).
15 BMHX-PRIOR-YR-LT-BEN-REM PIC S9(09)V99 COMP-3.
001491 15 BMHX-PRIOR-YR-ACCUMS OCCURS 6 TIMES
INDEXED BY BMHX-INDX2.
20 BMHX-PRIOR-YR-ACC.
25 BMHX-PRIOR-YR-YTD PIC S9(09)V99 COMP-3.
25 BMHX-PRIOR-YR-REM PIC S9(09)V99 COMP-3.
10 BMHX-SPCL-HANDL PIC X(01).
10 BMHX-PULL-BIN-TABLE.
15 BMHX-PULL-BIN-TBL OCCURS 10 TIMES.
20 BMHX-PULL-BIN PIC X(01).
10 BMHX-PRIOR-YTD-SW PIC X.
001491 10 BMHX-CARRY-OVR-AMT PIC S9(9)V99 COMP-3.
001491 10 BMHX-CARRY-OVR-DATE PIC X(4).
520927 10 BMHX-MBR-SRVC-MSG PIC 9(04).
520927 10 FILLER PIC X(01).
410044 10 BMHX-PAYPOINT PIC X(01).
YR2K 10 BMHX-INIT-CLM-DATE PIC 9(08) COMP-3.
YR2K 10 FILLER PIC X(01).
001676 10 BMHX-NBC-ACCUM-AMT PIC S9(7)V99 COMP-3.
001676 10 BMHX-PRC-ACCUM-AMT PIC S9(7)V99 COMP-3.
001611 10 BMHX-SHP-ACCUM-AMT PIC S9(7)V99 COMP-3.
001544 10 BMHX-PRODUCT-TYPE PIC X(03).
001491 10 BMHX-FORM-TYPE PIC X(01).
001491 10 BMHX-GROUP-NAME PIC X(20).
001491 10 BMHX-LINES-WRITTEN PIC 99.
00A977 10 FILLER PIC X(67).
00A977 10 BMHX-HRA-FLAG PIC X.
00A977 10 BMHX-HRA-TPA PIC X(7).
A6392H**** A SORT IS DONE ON THIS FIELD.
A6392H 10 BMHX-DOCUMENT-NUMBER PIC X(9).
A6392H 10 BMHX-CLEAR-HOUSE PIC X(3).
A6392H 10 BMHX-PROV-TYPE PIC X(1).
A6392H 10 FILLER PIC X(3).
A6392H 10 BMHX-PROV-OFFSET PIC X(1).
A6392H 88 BMHX-PROV-OFFSET-YES VALUE 'Y'.
A6392H 10 BMHX-PROV-HIPAA-835 PIC X(1).
A6392H 88 BMHX-PROV-HIPAA-835-YES VALUE 'Y'.
A6392H**** A SORT IS DONE ON THIS FIELD.
532531 10 BMHX-LIFE-SORT PIC X(9).
vmcburney
Participant
Posts: 3593
Joined: Thu Jan 23, 2003 5:25 pm
Location: Australia, Melbourne
Contact:

Post by vmcburney »

Use a complex flat file stage to flatten the data. Switch between ascii and binary to see which one works using "View Data" to test it out. Think of this text file as a hierarchy of database tables and work out which records you want to retrieve from it. You may need to process it via more then one job because you've got to flatten the records out with each select.

Refer to the Parallel Job Developers Guide for more details on the complex flat file stage.
Post Reply