Search code examples
ibm-midrangerpglerpg

UPDSRVPGM and CRTSRVPGM difference in ile concept


Can someone explain the conceptual difference between UPDSRVPGM and CRTSRVPGM in the ile concepts. I mean to say why can't we always use CRTSRVPGM, why is there a need or advantage to use UPDSRVPGM.


Solution

  • You can always use CRTSRVPGM...In fact I recommend doing so as some of the meta data in the *SRVPGM object is not updated when UPDSRVPGM is used.

    The only real advantage to UPSRVPGM is when your *SRVPGM consists of multiple modules and your change management process has one or more of the following issues:

    • doesn't keep the *MODULE objects around.
    • you can't trust the *MODULE objects it finds.
    • doesn't support automated rebuilds of the other *MODULE objects

    In those case if you have a *SRVPGM made up of 5 modules, and you need to make a change to a single procedure in one of the modules. You can make the change, then use CRTxxxMOD and UPDSRVPGM to update that single module inside the existing service program.