DB2 Examples:
1. DB2 example of a call from a Stored Procedure:
Add the following to the declaration section of the stored procedure:
DECLARE v_result INTEGER;
DECLARE v_return_code VARCHAR(1);
DECLARE v_return_msg VARCHAR(256);
Then add the call to the procedure:
CALL [METABASE].Ws_Job_Create(p_sequence, p_job_name, p_task_name, p_job_id, p_task_id
, 'Daily Run', 'New Daily Run', 'This is the New Daily Run job.', 'ONCE'
, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL
, v_return_code, v_return_msg, v_result);
Perhaps add a check of the result:
IF ( v_result <> 1 ) THEN
SET p_status = v_result;
SET p_return_msg = 'Failed to create the Job. Return Code was ' || v_return_code;
SET p_return_msg = p_return_msg || '. ' || RTRIM(v_return_msg);
END IF;
2. DB2 example of a call from the DB2 Command Line Processor (db2.exe):
Enter the following after connecting (the metadata is in a schema called QAD Data Warehouse Designer):
call Data Warehouse Designer.Ws_Job_Create(0,'CreateJob','Create',0,0,'Daily Run','New Daily Run','This is the New Daily Run job.','ONCE',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,?,?,?)
The following out is typical:
Value of output parameters
--------------------------
Parameter Name : P_RETURN_CODE
Parameter Value : S
Parameter Name : P_RETURN_MSG
Parameter Value : Job New Daily Run created.
Parameter Name : P_RESULT
Parameter Value : 1
Return Status = 0
3. DB2 example of a call from QAD SQL Admin (the metadata is in a schema called QAD Data Warehouse Designer):
{Call Data Warehouse Designer.Ws_Job_Create(0,'CreateJob','Create',0,0,'Daily Run','New Daily Run','This is the New Daily Run job.','ONCE',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,?,?,?)}
Ws_Job_CreateWait
This procedure allows the automated creating of a new job from an existing job that is in either a holding or waiting state. The intended use of this function is to allow the creation of a job from within another job. Only jobs that are in a Hold state (i.e. Once and Hold jobs), or in a Waiting state can be used as a template for the new job. When a job is created via this function the release time is controllable.