We have a issue with the way CA Endevor EINE does the CATALL of Natural objects.
That each object is processed singly so if we consider this:
A help-routine can use a map
A map can use a help-routine
Whichever way these 2 objects are promoted, it has the potential to cause issues.
If the CATALL is executed after all the Natural objects are added / moved into the Natural library the above scenario will not be an issue.
Need to create a special Natural element - ZZZCATL, that uses a special Generate Processor that will do the CATALL of the entire Natural library. If the CATALL step is successful, then delete the Natural source from the Natural library.
1) Create a new Generate Processor called GNATCATL or something like that, and a new Processor Group.
2) Create a new ZZZCATL NATPROG element. When it is added to Endevor, override the normal Processor Group and use the new NATCATL Processor Group.
Note: could actually have different ZZZCATLx elements that use different processors if there are different requirements by System or anything along those lines.
3) Modify the existing PNAT* processors and remove the CATALL and delete steps.
The way it will work is --
1) The Natural programmers will add all the Natural objects like they do now. Except now the PNATGEN processor will not perform the CATALL step and not delete the source of the Natural object from the Natural library.
2) After all the Natural objects have been added, they will do a Generate of the ZZZCATL element which will trigger the new Processor doing the CATALL of the entire library, and if the CATALL step is successful, then delete the source from the Natural library.