External Procedure logic is created by executing a preprocessor against user-written host-language source code. The program source code for the procedure must be preprocessed before the CREATE PROCEDURE statement is allowed to run.
The following in the CREATE PROCEDURE statement distinguishes External Procedures from SQL Procedures:
In a z/OS environment, COBOL, PL/I, and C procedures must be made Language Environment (LE) conforming by being written and compiled using COBOL for z/OS, PL/I for MVS, and z/OS C/C++. Assembler procedures must also be made LE-conforming by use of the CEEENTRY and associated macros.
In a z/VSE environment, COBOL, PL/I, and C procedures must be made Language Environment (LE) conforming by being written and compiled using COBOL for z/VSE, PL/I for z/VSE, IBM C for z/VSE, and High Level Assembler.
Because SQL has no way of verifying the compatibility of the user-written code with the procedure defined by the CREATE PROCEDURE statement, it is the sole responsibility of the creator of the procedure to ensure that the CREATE PROCEDURE statement precisely reflects the parameter list expected by the user-written program. Failure to properly coordinate parameter lists can cause the procedure subtask to abnormally terminate.
Note: As described in Multi-User Facility Considerations for Procedures, you should add to the Multi-User Facility library concatenation the libraries containing the programs to be executed as procedures, along with any associated subroutines. Also, if an existing procedure is being replaced, do a NEWCOPY console command, as described in the CA Datacom/DB Database and System Administration Guide, to that procedure so that the next job executes the latest copy. For additional information, see Multi-User Facility Considerations for Procedures.
|
Copyright © 2014 CA.
All rights reserved.
|
|