原文:http://blog.csdn.net/cunxiyuan108/article/details/5805762
需求:实现供应商的接口导入:
导入供应商、供应商地址和供应商联系人的信息。
定义变量:
--提交标准并发请求时的参数
l_request_id1 NUMBER;
l_request_id2 NUMBER;
l_request_id3 NUMBER;
l_request_id4 NUMBER;
l_bl_result1 BOOLEAN;
l_bl_result2 BOOLEAN;
l_bl_result3 BOOLEAN;
调用标准的请求,将三个接口表中的数据导入到系统中。
实现sql如下:
IF v_supplier_error_flag = 'N' AND v_supplier_site_error_flag = 'N' AND
v_supplier_contact_error_flag = 'N' THEN
--分ou的导入,并且初始化OU
FOR l_cur_submit IN cur_submit LOOP
v_org_id := NULL; --初始化ou
v_org_id := get_org_id(l_cur_submit.org_name);
--初始化环境变量
set_policy_context(v_org_id);
--调用标准的并发请求
--调用供应商的并发请求
l_request_id1 := fnd_request.submit_request('SQLAP', --应用简称
'APXSUIMP', --并发程序
'',
'',
FALSE,
'NEW',
1000,
'N',
'N',
'N',
chr(0));
COMMIT;
IF l_request_id1 IS NULL OR l_request_id1 = 0 THEN
retcode := 2;
errbuf := '供应商接口导入标准表出错!';
RETURN;
END IF;
l_bl_result1 := fnd_concurrent.wait_for_request(l_request_id1, --等待的请求
1, --间隔时间
0, --等待时间
v_phase,
v_status,
v_dev_phase,
v_dev_status,
v_message);
IF v_dev_phase = 'COMPLETE' AND v_dev_status = 'NORMAL' THEN
--调用供应商地点的并发请求
l_request_id2 := fnd_request.submit_request('SQLAP', --应用简称
'APXSSIMP', --并发程序
'',
'',
FALSE,
'NEW',
1000,
'N',
'N',
'N',
chr(0));
COMMIT;
IF l_request_id2 IS NULL OR l_request_id2 = 0 THEN
retcode := 2;
errbuf := '供应商地点接口导入标准表出错!';
RETURN;
END IF;
l_bl_result2 := fnd_concurrent.wait_for_request(l_request_id2, --等待的请求
1, --间隔时间
0, --等待时间
v_phase,
v_status,
v_dev_phase,
v_dev_status,
v_message);
IF v_dev_phase = 'COMPLETE' AND v_dev_status = 'NORMAL' THEN
--调用供应商地点联系人的并发请求
l_request_id3 := fnd_request.submit_request('SQLAP', --应用简称
'APXSCIMP', --并发程序
'',
'',
FALSE,
'NEW',
1000,
'N',
'N',
'N',
chr(0));
COMMIT;
IF l_request_id3 IS NULL OR l_request_id3 = 0 THEN
retcode := 2;
errbuf := '供应商地点联系人接口导入标准表出错!';
RETURN;
END IF;
l_bl_result3 := fnd_concurrent.wait_for_request(l_request_id3, --等待的请求
1, --间隔时间
0, --等待时间
v_phase,
v_status,
v_dev_phase,
v_dev_status,
v_message);
IF v_dev_phase <> 'COMPLETE' AND v_dev_status <> 'NORMAL' THEN
retcode := 2;
errbuf := '供应商地点联系人接口导入标准表出错!';
RETURN;
END IF;
END IF;
END IF;
COMMIT;
END LOOP; --结束loop循环
END IF;