View previous topic :: View next topic
|
Author |
Message |
rkarthik22
New User
Joined: 18 Apr 2009 Posts: 47 Location: India
|
|
|
|
Hi Experts,
I have a requirement below!
Input LRECL = 75 RECFM = FB
Quote: |
FILE INFILE FB(75 0)
123 mart0000 26-11 678
123 call0318 26-11 678
8910 boox0001 25-54 789
5423 lisp0001 32-99 12555
4921 java0319 89-10 789
4921 java0000th 89-10 789 |
Code: |
Expected output file
Match key REF ID Mart-flg call0318 boox0001 lisp0001 java0319 java0000th
123 26-11 678 Y Y N N N N
8910 25-54 789 N N Y N N N
5423 32-99 12555 N N N Y N N
4921 89-10 789 N N N N Y Y |
This is my EZT code
Code: |
FILE INFILE FB(75 0)
*
IN-REC 1 75 A
MATCH-KEY 01 11 A
TEXT 12 20 A
REF 32 26 A
ID 58 18 A
FILE OUTFILE FB(63 0)
OUT-REC 1 213 A
O-MATCH-KEY 01 11 A
O-REF 12 26 A
O-ID 38 18 A
Mart-flg 56 1 A
call0318-flg 57 1 A
boox0001-flg 58 1 A
lisp0001-flg 59 1 A
java0319-flg 60 1 A
java0000th-flg 61 1 A
BAIS0003-flg 62 1 A
BOSS-flg 63 1 A
************* WORKING STORAGE
*
WS-MATCH-KEY W 11 A
WS-TEXT W 20 A
WS-REF W 26 A
WS-ID W 18 A
*
**********************
JOB INPUT(NULL)
GET INFILE
DO WHILE NOT EOF INFILE
WS-MATCH-KEY = MATCH-KEY
WS-REF = REF
WS-ID = ID
GET INFILE
IF NOT EOF INFILE
IF WS-MATCH-KEY = MATCH-KEY
O-MATCH-KEY = WS-MATCH-KEY
O-REF = WS-REF
O-ID = WS-ID
IF WS-TEXT = 'mart0000'
Mart-flg = 'Y'
END-IF
ELSE
PUT OUTFILE
WS-COUNTER = WS-COUNTER + 1
END-IF
END-DO
GOTO JOB |
I dint get my expected results...flags are not setting correctly...can anyone help |
|
Back to top |
|
|
dick scherrer
Moderator Emeritus
Joined: 23 Nov 2006 Posts: 19244 Location: Inside the Matrix
|
|
|
|
Hello,
Suggest you read the input and build an array of the needed values.
After all of the input is read, process the array and create the output you want. |
|
Back to top |
|
|
|