creating EDI cobol multi level format

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
ArunaDas_Maharana
Participant
Posts: 42
Joined: Thu Dec 11, 2008 11:07 am

creating EDI cobol multi level format

Post by ArunaDas_Maharana »

Hi,

We are having a requirement to create a Adapter for performing folwoing task:
1. Read the receipts XML records from MQ.
2. Translate the XML fields into Cobol Copy Book format (EDI multi level format).
3. Write the output into the EDI MQ, I xml per (EDI multi level record) .
The challenges we are facing are:
1. Create the Cobol Copy Book format from XML. PFA the sample format.
Two aproaches we are thinking currently:

a. using transformers and sequential stage to create each level record and join them back using some sequence key.

b. CFF stage, this stage will also create the records indiviually at different levels and the challenge would be to tie them back together to form 1 record

2. To post the message in the MQ & maintain the sequence of the records which are there in Cobol Copy Book format. For ex: The DTL-LVL-CD for Record 050 & Record 090 are following a sequence i.e. 0502, 0503 etc.

I have attached the cobol format and an example for your reference.

If anyone has some thoughts please share with us!

example:--
TestS=ZZDESCAPIHP 010486269150 20110207022004861 MTSRAEI000000001
0100001 20110207002RVJH5ETBA0001X95MAMOLU1300205705901920110207185756JH5ETBA CTN710000009UNT710000345M TLTCLU5347623 7792000000006
0502 00000011EUN07BO815700006
0901 I000004HUNIZ0032
0902 I000004BUNIZ0034
0903 I000002EUNIZ0036
0503 00000011EUN07BO815700016
0901 I000004HUNIZ0032
0902 I000004BUNIZ0034
0903 I000002EUNIZ0036
0504 00000011EUN07BO815700026
0901 I000004HUNIZ0032
0902 I000004BUNIZ0034
0903 I000002EUNIZ0036
TestE=000000015000000001

first and last line being header and trailer.
00001 ******************************************************************01/25/06
00002 ** ** EDIB810C
00003 ** 810-INVOICE VERSION 004010 ** LV017
00004 ** ** CL**1
00005 ** ** CL**1
00006 ** ** CL**1
00007 **------------------- REVISION INFORMATION --------------------** CL**1
00008 ** DATE REV ** CL**1
00009 ** MODIFIED NBR DESCRIPTION PERSON ** CL**1
00010 **-------------------------------------------------------------** CL**1

00014 ***************************************************************** CL**1
00015 * CL**1
00016 01 RECORD-010-B810. CL**1
00017 05 010HDR-RECORD-ID PIC X(03). CL*13
00018 88 HEADER-RECORD VALUE '010'. CL*13
00019 05 010BIG01-INVCDT. CL**1
00020 10 010BIG01-INVCDT-CC PIC X(02). CL*16
00021 10 010BIG01-INVCDT-YY PIC X(02). CL*16
00022 10 010BIG01-INVCDT-MM PIC X(02). CL**1
00023 10 010BIG01-INVCDT-DD PIC X(02). CL**1
00024 05 010BIG02-INVCNB PIC X(22). CL**1
00024 05 010BIG04-PO-NBR PIC X(22). CL**1
00024 05 010BIG05-PO-RLSE-NBR PIC X(30). CL**1
00025 05 010BIG07-INVCTY PIC X(02). CL**1
00026 88 C-BIG07-CREDIT-MEMO VALUE 'CR'. CL**1
00027 88 C-BIG07-REQUEST VALUE 'RQ'. CL**1
00035 05 010BIG09-ACT-CD PIC X(02). CL**1
00037 88 C-BIG09-SET-ASIDE VALUE '65'. CL**1
00035 05 010NTE02-INVC-HDR-DESC PIC X(240). CL**1
00038 05 010CUR01-CNC-QL PIC X(03). CL**1
00039 88 C-CUR01-BUYING VALUE 'BY '. CL**1
00040 05 010CUR02-CNC-CD PIC X(03). CL**1
00041 05 010CUR03-FX-RAT PIC S9(09)V9(02). CL**7
00054 05 010N101-SUPP-ID PIC X(03). CL**1
00055 88 C-N101-SUPPLIER VALUE 'SU '. CL**1
00061 05 010N103-SUPP-QL PIC X(02). CL**1
00062 88 C-N103-BUYER-ASSIGNED-VND VALUE '92'. CL*12
00063 05 010N104-SUPP-NBR PIC X(80). CL**1
00063 05 010N201-SUPP-SITE-CODE PIC X(60). CL**1
00064 05 010ITD01-TRM-TY PIC X(02). CL**1
00062 88 C-ITD01-TRM-TY-CD VALUE 'ZZ'. CL*12
00065 05 010ITD12-PMT-TRM-DESC PIC X(80). CL**1
00084 * CL**1
00092 01 RECORD-050-B810. CL**1
00093 05 050DTL-RECORD-ID PIC X(03). CL*13
00094 88 DETAIL-RECORD VALUE '050'. CL*13
00095 05 050IT101-INV-LINE-NBR PIC X(20). CL**1
00096 05 050IT102-PO-LINE-QTY PIC S9(09)v9(02). CL**2
00097 05 050IT103-QTY-UOM PIC X(02). CL**1
00098 88 C-IT103-EACH VALUE 'EA'. CL**1
00099 88 C-IT103-UNIT VALUE 'UN'. CL**1
00100 05 050IT104-PO-LINE-UNIT-PRICE PIC S9(16)V9(02). CL**8
00101 05 050REF01-LINE-TYP-QL PIC X(03). CL**1
00098 88 C-REF01-INT-PROCESS VALUE 'X9 '. CL**1
00103 05 050REF02-LINE-TYP-CD PIC X(30). CL**1
00104 05 050REF03-LINE-TYP-DESC PIC X(80). CL**1
00106 05 050REF01-PO-LINE-QL PIC X(03). CL**3
00098 88 C-REF01-PO-LINE-NBR VALUE 'BV '. CL**1
00107 05 050REF02-PO-LINE-NBR PIC X(30). CL**1
00109 05 050REF04-C04001-PO-SHIP-QL PIC X(03). CL**1
00110 88 C-REF04-C04001-PO-SHIP VALUE 'ZZ '. CL*17
00111 05 050REF04-C04002-PO-SHIP-NBR PIC X(30). CL**2
00112 05 050REF04-C04003-PO-NBR-QL PIC X(03). CL**1
00113 88 C-REF04-C04003-PO-NBR VALUE 'PO '. CL**1
00115 05 050REF04-C04004-PO-NBR PIC X(30). CL**2
00116 05 050REF04-C04005-PO-RLSE-QL PIC X(03). CL**1
00117 88 C-REF04-C04005-PO-RLSE VALUE 'GQ '. CL**1
00118 05 050REF04-C04006-PO-RLSE-NBR PIC X(30). CL**1
00130 05 050REF01-PROJ-QL PIC X(03). CL*18
00131 88 C-REF01-PROJ-CODE VALUE 'P4 '. CL*18
00132 05 050REF02-PROJ-CODE PIC X(30). CL*18
00133 05 050REF04-C04001-TASK-ID-QL PIC X(03). CL*18
00134 88 C-REF01-C04001-TASK VALUE 'K5 '. CL*18
00135 05 050REF04-C04002-TASK-ID PIC X(30). CL*18
00124 05 050REF04-C04003-EXP-TYP-QL PIC X(03). CL**1
00125 88 C-REF01-C04003-EXP-TYP VALUE '8X '. CL**1
00126 05 050REF04-C04004-EXP-TYP PIC X(30). CL**1
00127 05 050REF04-C04005-EXP-ORG-QL PIC X(03). CL**1
00128 88 C-REF04-C04005-EXP-ORG VALUE '1L '. CL**1
00129 05 050REF04-C04006-EXP-ORG PIC X(30). CL**1
00130 05 050DTM01-EXP-DT-QL PIC X(03). CL**1
00131 88 C-DTM01-PROCESS VALUE '009'. CL**1
00132 05 050DTM02-EXP-DT. CL**1
00073 10 C-DTM02-EXP-DT-CC PIC X(02). CL*16
00074 10 C-DTM02-EXP-DT-YY PIC X(02). CL*16
00075 10 C-DTM02-EXP-DT-MM PIC X(02). CL**5
00076 10 C-DTM02-EXP-DT-DD PIC X(02). CL**5
00133 05 050REF01-GL-ACCT-QL PIC X(03). CL**1
00134 88 C-REF01-GL-ACCT VALUE 'GZ '. CL**1
00135 05 050REF02-GL-ACCT-NBR PIC X(30). CL**1
00084 * CL**1
00092 01 RECORD-060-B810. CL**1
00093 05 060DTL-RECORD-ID PIC X(03). CL*13
00094 88 TAX-FRGT-RECORD VALUE '060'. CL*13
00095 05 060SAC01-TAX-FRGT-AC-IND PIC X(1). CL**1
00134 88 C-SAC01-TAX-FRGT-CHARGE VALUE 'C'. CL**1
00096 05 060SAC02-TAX-FRGT-CODE PIC X(04). CL**2
00134 88 C-SAC02-SALES-TAX VALUE 'H750'. CL**1
00134 88 C-SAC02-VAT-TAX VALUE 'H800'. CL**1
00134 88 C-SAC02-FREIGHT VALUE 'D240'. CL**1
00097 05 060SAC05-TAX-FRGT-AMT PIC S9(14)V9(02). CL**1
00100 05 060SAC13-TAX-FRGT-COA PIC X(30). CL**8
00101 05 060SAC15-TAX-FRGT-DESC PIC X(80). CL**1
00084 * CL**1
00139 01 RECORD-090-B810. CL**1
00140 05 090SUM-RECORD-ID PIC X(03). CL*13
00141 88 SUMMARY-RECORD VALUE '090'. CL*13
00142 05 090TDS01-TOTINV-AMT PIC S9(14)V9(02). CL**6
00095 05 090SAC01-TAX-AC-IND PIC X(1). CL**1
00134 88 C-SAC01-TAX-CHARGE VALUE 'C'. CL**1
00096 05 090SAC02-TAX-CODE PIC X(04). CL**2
00134 88 C-SAC02-SALES-TAX VALUE 'H750'. CL**1
00097 05 090SAC05-TAX-AMT PIC S9(14)V9(02). CL**1
00100 05 090SAC13-TAX-COA PIC X(30). CL**8
00101 05 090SAC15-TAX-DESC PIC X(80). CL**1
00095 05 090SAC01-FRGT-AC-IND PIC X(1). CL**1
00134 88 C-SAC01-FRGT-CHARGE VALUE 'C'. CL**1
00096 05 090SAC02-FRGT-CODE PIC X(04). CL**2
00134 88 C-SAC02-FREIGHT VALUE 'D240'. CL**1
00097 05 090SAC05-FRGT-AMT PIC S9(14)V9(02). CL**1
00100 05 090SAC13-FRGT-COA PIC X(30). CL**8
00101 05 090SAC15-FRGT-DESC PIC X(80). CL**1
00143 * CL**1
Post Reply