Search code examples
ibm-midrangerational-developer-for-i

AS/400 Wont compile Printer File under RDP 8


I'm currently taking a college course on AS400 (IBM I) and i've been good until Chapter 11, dealing with RDP 8.0. Either way, i managed to get through the assignment up until the point where i'm required to copy a previously crafted physical file called "EMPPFLP" under the library "INTROCLASS".

I copied the file over to my personal library under "QDDSSRC" source and then right clicked on it (EMPPFLP) and selected Compile then CRTPRTF and i get this.

Job 942098/DDELAP01/QDFTJOBD submitted to job queue QBATCH in library QGPL.

CRTPRTF SRCFILE(DDELAP01/QDDSSRC) SRCMBR(EMPPFLP) REPLACE(*YES) OPTION(*EVENTF) FILE(DDELAP01/EMPPFLP) Errors in DDS not allowed with specified GENLVL. Cause . . . . . : Either the severity level of the errors found in DDS was greater than or equal to the error generation level (GENLVL parameter), or GENLVL(0) was specified. Recovery . . . : See the DDS source listing for the GENLVL value and error messages. Either correct the errors or change the GENLVL value on the command, and then try the request again. File EMPPFLP not created in library DDELAP01. Cause . . . . . : The file was not created because of errors. Recovery . . . : See the error messages previously listed. Correct the errors, and then try the request again.

enter image description here

I will appreciate any help guys, not sure whats going on here, I already posted questions for professor but i've received no response and i need to submit this assignment by 12am.


Solution

  • CPD5248: File specified on REF or REFFLD keyword not found.

    The library containing the file EMPPFL used in your REFFLD statement is not in your library list.

    Either replace *LIBL with the actual library name that contains the file or add it to your library list with the ADDLIBLE command (or other method appropriate for your development environment).

    CPD7528: Number of decimal replace positions not valid

    This is caused because the field definition can not be found because of the previous error.


    The REFFLD keyword allows you to pull field attributes from a file (table) instead of hardcoding every one.

    The error indicates that the file being referenced, EMPPFL, can not be found in your library list. The library list is similar to the PATH in Windows/Linux/etc.

    In order to resolve the error you must help the system find the EMPPFL file. This can be done by explicitly pointing to the library containing the file or including the file in a library within your library list.


    If you can provide the output from the following commands it will help resolve the issue:

    DSPLIBL OUTPUT(*PRINT)
    
    DSPOBJD *LIBL/EMPPFL *FILE OUTPUT(*PRINT)
    
    DSPOBJD *ALLUSR/EMPPFL *FILE OUTPUT(*PRINT)
    

    Note that the second command should return a message "Object EMPPFL in *LIBL type *FILE not found".