When you call a program that has been called before and that has not been canceled, the data in the called program is in the same state as when it last exited. However, the data is reinitialized if:
- The called program was canceled after it last ran
- The called program has the INITIAL attribute in its PROGRAM-ID paragraph in the Identification Division.