The application sends the statements composing a procedure to the database, where they are compiled and saved for subsequent execution. The application that defines the procedure must send an SQL statement to create (CREATE PROCEDURE) or replace (REPLACE PROCEDURE) the procedure.
If the database does not support External Stored Procedures the SQL will be rejected (there is no capability provided to ensure that the SQL is supported).
If it is supported, an ElicitFile response parcel will be returned, whereupon the application uses the CLIv2 ContinueRequest function to send the procedure's statements to the database.
When all statements have been sent, the procedure is compiled and saved on the database. The character set used for compilation is the character set used when the procedure is created or replaced.