create or replace procedure XIU_BPA_TO_ASL_PROC(errbuf out varchar2,
errcode out number,
p_vendor in NUMBER,
p_blanket in VARCHAR2) as
l_vendor_id PO_HEADERS_ALL.vendor_id%type;
l_document_id PO_HEADERS_ALL.po_header_id%type;
l_purchasing_org_id PO_HEADERS_ALL.org_id%type;
l_vendor_site_id PO_HEADERS_ALL.vendor_site_id%type;
l_select_agreement_lines VARCHAR2(10);
l_assignment_set MRP_ASSIGNMENT_SETS.assignment_set_id%type;
l_sourcing_level VARCHAR2(20) := 'ITEM-ORGANIZATION';
l_inv_org HR_ALL_ORGANIZATION_UNITS.organization_id%type;
l_sourcing_rule_name MRP_SOURCING_RULES.sourcing_rule_name%type;
l_release_generation_method PO_ASL_ATTRIBUTES.release_generation_method%type;
l_api_version NUMBER := 1.0;
l_init_msg_list VARCHAR2(5) := FND_API.G_FALSE;
l_commit VARCHAR2(5) := FND_API.G_FALSE;
l_validation_level NUMBER := FND_API.G_VALID_LEVEL_FULL;
l_return_status VARCHAR2(5);
l_msg_count NUMBER;
l_msg_data VARCHAR2(2000);
l_progress VARCHAR2(3) := '000';
v_count number;
x_row_id VARCHAR2(30);
x_asl_id NUMBER;
x_using_organization_id NUMBER;
x_owning_organization_id NUMBER;
x_vendor_business_type VARCHAR2(30);
x_asl_status_id NUMBER;
x_last_update_date DATE;
x_last_updated_by NUMBER := fnd_profile.VALUE('USER_ID');
x_creation_date DATE;
x_created_by NUMBER;
x_manufacturer_id NUMBER;
x_vendor_id NUMBER;
x_item_id NUMBER;
x_category_id NUMBER;
x_vendor_site_id NUMBER;
x_primary_vendor_item VARCHAR2(30);
x_manufacturer_asl_id NUMBER;
x_comments VARCHAR2(30);
x_review_by_date DATE;
x_attribute_category VARCHAR2(30);
x_attribute1 VARCHAR2(150);
x_attribute2 VARCHAR2(150);
x_attribute3 VARCHAR2(150);
x_attribute4 VARCHAR2(150);
x_attribute5 VARCHAR2(150);
x_attribute6 VARCHAR2(150);
x_attribute7 VARCHAR2(150);
x_attribute8 VARCHAR2(150);
x_attribute9 VARCHAR2(150);
x_attribute10 VARCHAR2(150);
x_attribute11 VARCHAR2(150);
x_attribute12 VARCHAR2(150);
x_attribute13 VARCHAR2(150);
x_attribute14 VARCHAR2(150);
x_attribute15 VARCHAR2(150);
x_last_update_login NUMBER := fnd_profile.VALUE('LOGIN_ID');
x_disable_flag VARCHAR2(1);
v_min_rank number;
v_err_flag varchar2(1) := 'N';
v_head_err_flag VARCHAR2(1) := 'N';
x_err_flag VARCHAR2(1);
BEGIN
fnd_global.apps_initialize(user_id => 1110,
resp_id => 50597,
resp_appl_id => 20003);
-- Call the procedure to create Document Sourcing Rules
l_inv_org := 81; --fnd_profile.VALUE('MFG_ORGANIZATION_ID');
fnd_file.PUT_LINE(fnd_file.LOG, '==>l_inv_org' || l_inv_org);
if p_blanket is not null then
select count(*)
into v_count
from po_headers_all ph
WHERE PH.TYPE_LOOKUP_CODE = 'BLANKET'
AND PH.AU
EBS开发_BPA生成ASL列表
最新推荐文章于 2022-10-10 15:03:27 发布
这是一个Oracle EBS环境下的PL/SQL过程,用于根据一揽子采购协议(BPA)创建自动源列表(ASL)。过程首先初始化参数,然后通过查询符合条件的BPA头记录,调用`PO_CREATE_SR_ASL`接口生成自动源规则。接着,对于每个匹配的BPA行记录,更新相应的ASL属性,并处理委托供应商标志。如果所有操作成功,则提交更改,否则回滚事务。
摘要由CSDN通过智能技术生成