10 pts.
 AS400 Level Check
I am receiving a Level Check on a CL. The DSPPGMREF and DSPFD show matching Record Level Identifiers. I cannot figure out the cause or the fix. Can someone help me, please? Thanks.

Software/Hardware used:
AS/400
ASKED: September 6, 2011  4:39 PM
UPDATED: March 31, 2012  5:05 PM

Answer Wiki:
First, are you sure the level check is on the correct file? Or is there another file in the *LIBL that is is trying to open> If so, I would recompile the program making sure it is compiled over the correct file.
Last Wiki Answer Submitted:  September 6, 2011  5:43 pm  by  CharlieBrowne   32,945 pts.
All Answer Wiki Contributors:  CharlieBrowne   32,945 pts.
To see all answers submitted to the Answer Wiki: View Answer History.


Discuss This Question:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _


 

Are you trying to call the program with same library list which you used for compiling the program?

 3,370 pts.

 

MPCM,

You can check for the existence of multiple copies of your file by using the Work with Objects command, WRKOBJ OBJ(*ALL/MYFILE). This will show you what copies of MYFILE exist on the system, or at least the copies you have access to.

Hope this helps,
Bill Poulin

 2,480 pts.

 

The DSPPGMREF and DSPFD show matching Record Level Identifiers.

A DSPPGMREF showes program references for a specific *PGM object. A DSPFD will show file description attributes for a specific *FILE object.

It is also necessary to demonstrate that the program receiving the error is the same object displayed by DSPPGMREF. And it’s necessary to show that the file causing the error is the same object displayed by DSPFD.

Library lists are most commonly involved in mismatches like this. But other elements are possible. For example, an activated program may easily be called again after a new *PGM object is created — you’ll get the previous program instructions in such a case. Or a program might be called out of QRPLOBJ after being replaced, if the job has a previously resolved pointer to the program.

Regardless, if objects are displayed to determine their attributes, make sure that those are actually the objects being used.

Tom

 108,360 pts.