On 11 Jul 2013 06:05,
larry_...@hotmail.com wrote:
> Here is my code:
>
> <<SNIP most of DSPF DDS>>
> A 23 36'CMD6: CALLP HPD0E'
> A COLOR(YLW)
> A 23 60'CMD7: CALL HPD0E'
> A COLOR(YLW)
>
> 0001.00
> 0002.00 *********************************************************
> 0003.00 FHPD0DS CF E WORKSTN
> 0004.00 *********************************************************
> 0005.00 **
> 0006.00 D HPD0E PR EXTPGM('HDP0E')
> 0007.00 *********************************************************
> 0008.00 /free
> <<SNIP>>
> 0020.00 // CF6 - THIS DOES NOT WORK
> 0021.00 IF *INKF = *ON ;
> 0022.00 CALLP HPD0E ();
> 0023.00 ENDIF ;
> 0024.00 /end-free
> 0025.00 *
> 0026.00 * CF7 - THIS WORKS
> 0027.00 C IF *INKG = *ON
> 0028.00 C CALL 'HPD0E'
> 0029.00 C Endif
> <<SNIP remainder of RPG source and other DSPF and RPG source>>
FWiW the actual program names, for example in the CRTxxx request that
compiles the RPG sources would have been very worthwhile to better
describe the problem.
Presumably the first program was created with the name HPD0D and the
second was created with the name HPD0E.
Presumably the error seen in the joblog was MCH3401 "Cannot resolve
to object HDP0E. Type and Subtype X'0201' Authority X'0000'." Copy and
paste the object name from the message, between the double quotes for
the following request, to see that no programs are presented:
WRKPGM *LIBL/"" /* i.e. issue WRKPGM *LIBL/"HDP0E" */
A subtle difference should be conspicuous, between the name of the
object that can not be resolved [aka found or located] and the name of
the program that is supposed to be called according to the text in the
display file *and* the name referenced in the fixed-format CALL. The
RPG called the program named on the EXTPGM(), just as coded, and the
run-time properly identified that no such program name existed in the
*LIBL of the job. Correct the literal on the EXTPGM() specification,
recompile the program from that modified RPG source, and the problem
should be resolved.
--
Regards, Chuck