Release-sensitive XPI call

You can use a release-sensitive XPI call so that the XPI call can execute successfully on all currently supported CICS® releases. To do this, replace the CALL XPI parameter with the RELSENSCALL XPI parameter, and assemble the program. You can use the release-sensitive XPI call alternative with all XPI commands.

The RELSENSCALL parameter ensures only that the call to the CICS XPI module that supports that function is successful. You must check that the parameters specified on the XPI call are valid for all the CICS releases on which that call is made. Apart from using a different call parameter, all other XPI syntax rules apply. For more details on the syntax rules, see XPI syntax.

The following example is an XPI GETMAIN call that uses the RELSENSCALL parameter:
DFHSMMCX RELSENSCALL,                                      -
      CLEAR,                                                  -
      IN,                                                     -
      FUNCTION(GETMAIN),                                      -
      GET_LENGTH((r6)),                                       -
      SUSPEND(YES),                                           -
      STORAGE_CLASS(USER),                                    -
      OUT,                                                    -
      ADDRESS((r5)),                                          -
      RESPONSE(*),                                            -
      REASON(*)            
The following example is the same XPI GETMAIN call that uses the CALL parameter:
DFHSMMCX CALL,                                             -
      CLEAR,                                                  -
      IN,                                                     -
      FUNCTION(GETMAIN),                                      -
      GET_LENGTH((r6)),                                       -
      SUSPEND(YES),                                           -
      STORAGE_CLASS(USER),                                    -
      OUT,                                                    -
      ADDRESS((r5)),                                          -
      RESPONSE(*),                                            -
      REASON(*)             

For further details about the effect of different CICS releases and release-sensitive calls on user exits, see Changes to the XPI.