这篇文章的内容主要围绕在PL/SQL中调用Oracle ERP提交请求集的示例分析进行讲述,文章内容清晰易懂,条理清晰,非常适合新手学习,值得大家去阅读。感兴趣的朋友可以跟随小编一起阅读吧。希望大家通过这篇文章有所收获!
PROCEDURE prc_do_import_set(prm_org IN NUMBER,
prm_appcode OUT NUMBER,
prm_appmsg OUT VARCHAR2) IS
custom_exception EXCEPTION;
success BOOLEAN;
v_request_id NUMBER;
v_phase VARCHAR2(30);
v_status VARCHAR2(30);
v_dev_phase VARCHAR2(30);
v_dev_status VARCHAR2(30);
v_message VARCHAR2(1000);
v_request_flag BOOLEAN;
v_start_time VARCHAR2(30);
BEGIN
prm_appcode := 0;
--初始化设置
fnd_global.apps_initialize(user_id => global_user_id,
resp_id => global_resp_id,
resp_appl_id => global_resp_appl_id);
--设置请求集
success := fnd_submit.set_request_set('INV', 'PLM_ERP_IMPORT');
IF NOT success THEN
RAISE custom_exception;
END IF;
--设置单请求参数
success := fnd_submit.submit_program('INV',
'INCOIN',
'STAGE10',
prm_org,
'1',
'1',
'1',
'1',
'1',
'1',
chr(0));
IF NOT success THEN
RAISE custom_exception;
END IF;
v_start_time := to_char(SYSDATE, 'DD-MON-YYYY HH24:MI:SS');
v_request_id := fnd_submit.submit_set(v_start_time, FALSE);
IF v_request_id = 0 THEN
RAISE custom_exception;
ELSE
COMMIT;
END IF;
--等待
v_request_flag := fnd_concurrent.wait_for_request(request_id => v_request_id,
INTERVAL => 5,
max_wait => 0,
phase => v_phase,
status => v_status,
dev_phase => v_dev_phase,
dev_status => v_dev_status,
message => v_message);
IF v_request_flag THEN
IF v_dev_status = 'NORMAL' THEN
NULL;
ELSE
RAISE custom_exception;
END IF;
ELSE
RAISE custom_exception;
END IF;
EXCEPTION
WHEN custom_exception THEN
prm_appcode := -1;
prm_appmsg := '错误提示:导入ERP正式表出错!' || SQLERRM;
WHEN OTHERS THEN
prm_appcode := -1;
prm_appmsg := '错误提示:导入ERP正式表出错!' || SQLERRM;
END prc_do_import_set;
感谢你的阅读,相信你对“在PL/SQL中调用Oracle ERP提交请求集的示例分析”这一问题有一定的了解,快去动手实践吧,如果想了解更多相关知识点,可以关注编程网网站!小编会继续为大家带来更好的文章!