home *** CD-ROM | disk | FTP | other *** search
- $set ans85 nestcall noosvs mf
- *******************************************************************
- * *
- * *
- * (C) Micro Focus Ltd. 1989 *
- * *
- * NESTED.CBL *
- * *
- * This demo shows how to structure a nested COBOL program. *
- * There are two nested programs NEST1 and NEST2 each of which *
- * have their own local data. It also demonstrates a simple use *
- * of GLOBAL data. *
- * *
- *******************************************************************
- identification division.
- program-id. main.
- working-storage section.
- 01 counter is global pic 9999.
- 01 local-item pic x(20) value all 'a'.
-
- procedure division.
- move 1 to counter.
- display 'in main program, '.
- display ' value of global counter = ', counter.
- display ' value of ''local-item'' = ', local-item.
- display 'calling nest1'.
- display ' '.
-
- call 'nest1'.
- display 'back in main program, '.
- display ' value of global counter = ', counter.
- display ' value of ''local-item'' = ', local-item.
- display ' '.
-
- display 'calling nest2, '.
- call 'nest2'.
- display 'back in main program, '.
- display ' value of global counter = ', counter.
- display ' value of ''local-item'' = ', local-item.
- display ' '.
- stop run.
-
- * Here is the first nested program.
- * Nested programs can access any GLOBAL data and have their own
- * local data.
- identification division.
- program-id. nest1.
- working-storage section.
- 01 local-item pic x(20) value all 'b'.
- procedure division.
- add 1 to counter.
- display 'in nest1, adding one to counter '.
- display ' value of ''local-item'' = ', local-item.
- display ' '.
- end program nest1.
-
- * here is the second nested program
- identification division.
- program-id. nest2.
- working-storage section.
- 01 local-item pic x(20) value all 'c'.
- procedure division.
- add 1 to counter.
- display 'in nest2, adding one to counter '.
- display ' value of ''local-item'' = ', local-item.
- display ' '.
- end program nest2.
-
- end program main.
-