I am trying to read data from a mainframe variable block (VB) dataset with complex structure (multiple record types) using FTP Enterprise
Mainframe dataset properties:
RECFM = VB
LRECL = 35
DCB -- none
Code: Select all
Layout:
FLD LEN FORMAT
REC-LEN 04 BINARY
SEG-TYPE 04 CHAR
ROOT-SEG-KEY 15 CHAR
LINE-NO 03 BINARY
SEGMENT-DATA VARIABLE BASED ON THE 'SEG-TYPE'
Sample data [no delimter, just I separated the fields into readable text format. But couple of fields are binary the values I see in Hex on on mainframe:
30 SEG1 KEY1 1 XXXXX
35 SEG2 KEY1 2 XXXXXXXXXX
32 SEG3 KEY1 3 XXXXXXX
30 SEG1 KEY2 1 YYYYY
32 SEG3 KEY2 2 YYYYYYY
properties:
source open command: site filetype=seq recfm=VB QUOTE SITE RDW
transfer type: ASCII
Format:
record level format as mainframe COBOL
record type: Implicit
delimiter: none
char set: tried EBCDIC (getting all junk chars), tried with ASCII
byte order: native-endien
allow all zeros: yes
Columns tab:
varchar 35 [max of all record types]
Job design:
FTP enterprise --> Transform --> Seq file
Issues:
1. Part of the data missing for some records. may be due to VB, I do not see DCB parm in JCL that create the dataset I am trying to read in Datastage.
2. The numeric fileds getting corrupted. I tried numeric out_format = sprintf_string, no luck.
I saw couple of FAQs related to Mainframe datasets, CFF and FTP enterprise, which is very useful. But, despite of all my trouble shoots I am unable fix the issue with missing part of data which I am suspecting the DCB and blocks though not sure how to fix it.
Appreciate any help related to it.