Add ILODs to like SRC SCRATCHes
When you enter a scratch request of a like source, ChangeMan ZMF may or may not add one or more additional scratch requests to the package automatically. If added to the package, these extra scratch requests are actually for one or more ILOD related components that were created when the component (for which you entered the scratch request) was staged before. E.g.: if you request ABC10000 SRC to be scratched, the load module ABC10000.LOD that was created from it before should also be scratch (if not you end up with a LOD in production without the source that produced it ...).
For a novice the additional scratch requests seem to be added randomly. However, if the package that created such ILODs doesn't exist anymore in CMNPMAST (e.g.: it was archived due to package aging parms), these extra ILOD-scratch request are no longer stored in CMNPMAST, and therefor ChangeMan ZMF cannot retrieve that info anymore to add it as extra scratch request.
The result is that you risk to actually scratch like SRC components, while it's ILODs (EXEs, DBRs, LSTs, ...) will continue to exist in prodlibs (as orphans, without their corresponding like SRC component).
Therefor, during audit, a validation should be done that for scratches of like SRCs, the same package also contains scratch requests for their ILODs. If they are not included as scratch requests, then add them during audit, and make audit fail with some type of informational message to inform the audit requester that this happened. From there, the audit requester has these options:
- the new set of scratch requests (= the original scratch request and all automatically added scratch) are double checked/verified and accept.
- the original scratch request and all automatically added scratch requests are removed as scratch requests from the package again.
Then submit the audit again, which shouldn't fail anymore for the same reason.
Here are some challenges:
- since the ILODs cannot be found in CMNPMAST anymore, another "algorithm" has to be put in place. More specific, starting from a like SRC, it should be possible to administer the potential ILODs that ever may have come out of the like SRC. E.g.: for a like source of type SRB, what type of load modules (EXE, EXB, EXI, a combination?) can be produced from it?
- it should also be possible to specify the components that are "logically" related (e.g. a PKG or PSB component), and eventually also (automatically) generate a scratch request for those.
- also search for potential ILODs that can be found in "any" package pointed to via component history records of the like SRC component (but by limiting this search to only the CMN subsystem that contains the scratch req of the like SRC).
- also search for ILODs in the archive CMN subsystem.
Reminder: if you're in a hurry (anxious) to get Dr.Chgman to deliver this item faster, consider contributing via the Z-Bounties program.