In this topic, we described about the CALL Statement with detailed example.
In this chapter, we will discuss about the CALL statement usage in CICS environment. CALL statement can be used an alternative to LINK/XCTL commands. CALL statement used to call another program which is at the same level or below level and expecting the control return back. A CALLed program does have a Program definition. Static calling was not allowed in CICS environments. CALL statement used in below scenarios in CICS environment -
- CALL can transfer multiple data element to the called program from calling program.
- CALL can transfer more than 32K data from calling program to called program.
- CALL used when subprogram is COBOL only program and no CICS statements existed.
- CALL used in a scenario when a subprogram required to call more than once which increases the efficiency and performance. CALL and LINK are equal if subprogram called only once. CALL much faster and uses less storage when subprogram called more than once.
- CALL can be used for calling CICS programs but those are existed in the same region.
CALLs are can't able to debug as they are invisible to CICS. CALL can't be used for the programs in remote region. For the multiple times call, the subprogram working storage has the values and to be cautious while using them second time. If working-storage not initialized, it may produce unpredictable results.