How can read PF in reverse order (end to start) in CL pgm..
Answers were Sorted based on User's Feedback
Answer / shyam
Use OVRDBF Share(*yes)
Use the Openqry file by specified the values on opnqry file
Key field . . . . . . . . . . *NONE
Key field order . . . . . . . *DESCEND
now read file using RCVF command.
| Is This Answer Correct ? | 26 Yes | 11 No |
Answer / kavitha
POSDBF (*END) points to last record, wont the RCVF command sets on EOF indicator?
| Is This Answer Correct ? | 11 Yes | 7 No |
Answer / harkesh
you can read a physical file in DESENDING ORDER. You can
first sort the physical file in decending order through
OPNQRYF using KEYFLD. This will sort your PF in decending
order based on your key field and then do the RCVF on this
file.
But for this you first need to do OVRDBF on the file.
THIS IS ONLY THE WAY ON THE WE CAN READ PF IN REVERSE ORDER
BUT FOR THIS FILE SHOULD BE KEYED FILE.
ANOTHER WAY FOR THIS ON THE BASIS OF RRN. FIRST FIND OUT
TOTAL NO OF RECORD USING RTVMBRDSC COMMMAND IN CL PROGRAM.
THEN MOVE TOTAL NO TO RRN. THEN BY USING OVRDBF COMMAND SET
POINTER ON THE BASIS OF RRN. AND IN LOOP ON THE BASIS OF
RRN. LIKE
LOOP: OVERDBF FILENAME POINTER = &RRN
IF RRN NOT = 0
RCVF RCDFMTNAME.
RRN= RRN-1.
ELSE
ENDPGM
END-IF.
| Is This Answer Correct ? | 5 Yes | 2 No |
Answer / sumit gupta
We can not read a pf in reverse order in CL/CLLE. As POSDBF
only set the pointer to *START or *END and once you set it
to *END and then do the read operation, end of file will
reach and there is not such condition(MONMSG) through which
you can read the pf in reverse order.
you can read a physical file in DESENDING ORDER. You can
first sort the physical file in decending order through
OPNQRYF using KEYFLD. This will sort your PF in decending
order based on your key field and then do the RCVF on this
file.
But for this you first need to do OVRDBF on the file.
| Is This Answer Correct ? | 9 Yes | 7 No |
Answer / suresh
Since the requirement is to Read from end to start, the
parameter *END should be provided to Position.
The statement should look like:
POSDBF OPNID(file name) position(*END)
| Is This Answer Correct ? | 16 Yes | 15 No |
Answer / amit
See Opnqryf is the right answer. Use the keyfield as told
by others. But it is not necessary to overide the file.
| Is This Answer Correct ? | 0 Yes | 0 No |
i hav 2 logical files(L1,L2) both r derived from one physical file(P1). how can i use both the logical files in one RPG program? if yes what i have to d.
What is the difference between RPG/400 and RPG4
Suppose I have 3 jobs a b and c. I want to submit b after successful completion of a and want to submit c after successful completion of b. Without using job scheduler or job queue, how can I do that through cl program?
there is any limit to display the members in rpg400?
when will come session device error?
what are the parameters of jobd?give in detail.&what are the parameters of subsystem...????
Setps to create .csv file on IFS folder in AS/400( V4R3)....?
I have some doubts on subfile----------- -----I wrote a prog on subfile to display the records. Every thing is clear but i defined a field called "opt" as input field in subfile record format from that input field i wish to enter into new screen called "EDIT" which i created it as a separate RCD in display file. i gave opt as 2 for edit just like in WRKMBRPDM screen please telll me the code and how can i code for it in RPG.
is this a rpg channel?
What is file identifier where we can use?
how can i retrieve the field name from display file at run time? Devendra Singh Tomar
What are different ways to pass data between programs and which one is the efficient way?