I have an object (a module that contains 6 external Subroutines). Can anyone explain why NEE considers 2 of the 6 Subroutines in this object to be “missing;” the 2 that are “missing” are actually PERFORMed out of one of the other Subroutines in the same object. Thoughts? :?:
This should go to support with a sample to reproduce.
I am a bit confused though. You talk about external subroutines.
Module A PERFORMS SR1, SR2, SR3, SR4, SR5, SR6
Then one of those, say SR1 PERFORMS SR5 & SR6 - and it then states SR5 and SR6 are missing?
Your description of the problem is correct. I have an external subroutine object called FMCD72ES. I misspoke in my first post. It contains 4 (not 6) subroutines called:
Subroutine ‘NOTIFY-SUPERVISORS’ PERFORMS ‘SUPERVISOR-ACCOUNTANT-EMAIL’ and ‘TO-OTHER-SUPERVISOR’
NATURAL Engineer says this:
Missing Objects ------------------
SUPERVISOR-ACCOUNTANT-EMAIL Perform Subroutine FMCD72ES
TO-OTHER-SUPERVISOR Perform Subroutine FMCD72ES
****** End of Report ******
I have tried a basic replication of what I think you have. I have a program
0040 PERFORM NOTIFY-SUPERVISORS
0050 PERFORM ACCOUNTANT-SUPERVISOR-EMAIL
0060 PERFORM SUPERVISOR-ACCOUNTANT-EMAIL
0070 PERFORM TO-OTHER-SUPERVISOR
In external subroutine NOTIFY-SUPERVISORS I then have
0010 DEFINE SUBROUTINE NOTIFY-SUPERVISORS
0020 PERFORM SUPERVISOR-ACCOUNTANT-EMAIL
0030 PERFORM TO-OTHER-SUPERVISOR
0040 WRITE ‘IN NOTIFY-SUPERVISORS’
The other subroutines are similar to
0010 DEFINE SUBROUTINE ACCOUNTANT-SUPERVISOR-EMAIL
0020 WRITE ‘ACCOUNTANT-SUPERVISOR-EMAIL’
All objects are in one library. Running at NEE6216 I extract and load successfully with no errors. The Missing Objects report is empty and the Objects Referencing/Referenced Objects reports look correct.
What version of NEE are you using and what report shows the external subroutines as missing ? If you are at NEE6216 have you tried to re-extract and re-load your application ?
Running NEE 6216 on z/OS. I have deleted, re-created and re-Extracted / re-Loaded the complete application. Same results. The “Missing Objects” report shows the 2 Subroutines referenced above (SUPERVISOR-ACCOUNTANT-EMAIL and TO-OTHER-SUPERVISOR) as missing, even though the other 2 Subroutines in the same module are not. “Objects Referencing Objects” shows “NOTIFY-SUPERVISORS” (the first Subroutine in the module FMCD72ES) doing a Perform Subroutine to both “SUPERVISOR-ACCOUNTANT-EMAIL” and “TO-OTHER-SUPERVISOR” (the 2 identified as missing). None of the Subroutine names or FMCD72ES show up anywhere in the “Objects Referenced by Objects” report. Curious.
Ok I have run my simplistic example at NEE6216 on mf as well with no problems. Suggest you go to support. They will need the program, the external subroutines + any data areas or DDMs that are referenced. A copy of your INI file ###CINI might be useful as well.
Here is a bit more weirdness to add to this: If I change the order of the Subroutines in the object (moving the 3rd one, which is executed first, to the top), delete and reload the module in NEE, then NEE no longer considers the other 2 “missing”. :shock: