declare
v_row_id varchar2(250);
v_memo_line_id number;
V_org_id number:=93;
V_SET_OF_BOOKS_ID NUMBER:=2022;
V_LE_TYPE VARCHAR2(200):='LINE';
V_START_DATE DATE:= sysdate;
V_GL_ID_REV NUMBER :=4095;
V_TAX_CODE VARCHAR2(200):='VAT18_EXCLUDE';
V_UOM_CODE VARCHAR2(200):='EA';
V_UNIT_STD_PRICE NUMBER:=1;
V_VOICG_RULE_ID NUMBER;
V_ACCOUNTG_RULE_ID NUMBER;
V_END_DATE DATE;
V_ATTRIBUTE_CATEGORY VARCHAR2(200);
V_ATTRIBUTE1 VARCHAR2(200);
V_ATTRIBUTE2 VARCHAR2(200);
V_ATTRIBUTE3 VARCHAR2(200);
V_ATTRIBUTE4 VARCHAR2(200);
V_ATTRIBUTE5 VARCHAR2(200);
V_ATTRIBUTE6 VARCHAR2(200);
V_ATTRIBUTE7 VARCHAR2(200);
V_ATTRIBUTE8 VARCHAR2(200);
V_ATTRIBUTE9 VARCHAR2(200);
V_ATTRIBUTE10 VARCHAR2(200);
V_ATTRIBUTE11 VARCHAR2(200);
V_ATTRIBUTE12 VARCHAR2(200);
V_ATTRIBUTE13 VARCHAR2(200);
V_ATTRIBUTE14 VARCHAR2(200);
V_ATTRIBUTE15 VARCHAR2(200);
V_GLOBAL_ATTRIBUTE_CATEGORY VARCHAR2(200);
V_GLOBAL_ATTRIBUTE1 VARCHAR2(200);
V_GLOBAL_ATTRIBUTE2 VARCHAR2(200);
V_GLOBAL_ATTRIBUTE3 VARCHAR2(200);
V_GLOBAL_ATTRIBUTE4 VARCHAR2(200);
V_GLOBAL_ATTRIBUTE5 VARCHAR2(200);
V_GLOBAL_ATTRIBUTE6 VARCHAR2(200);
V_GLOBAL_ATTRIBUTE7 VARCHAR2(200);
V_GLOBAL_ATTRIBUTE8 VARCHAR2(200);
V_GLOBAL_ATTRIBUTE9 VARCHAR2(200);
V_GLOBAL_ATTRIBUTE10 VARCHAR2(200);
V_GLOBAL_ATTRIBUTE11 VARCHAR2(200);
V_GLOBAL_ATTRIBUTE12 VARCHAR2(200);
V_GLOBAL_ATTRIBUTE13 VARCHAR2(200);
V_GLOBAL_ATTRIBUTE14 VARCHAR2(200);
V_GLOBAL_ATTRIBUTE15 VARCHAR2(200);
V_GLOBAL_ATTRIBUTE16 VARCHAR2(200);
V_GLOBAL_ATTRIBUTE17 VARCHAR2(200);
V_GLOBAL_ATTRIBUTE18 VARCHAR2(200);
V_GLOBAL_ATTRIBUTE19 VARCHAR2(200);
V_GLOBAL_ATTRIBUTE20 VARCHAR2(200);
V_NAME VARCHAR2(200):='tetetete';
V_DESCRIPTION VARCHAR2(200):='tetete';
V_CREATION_DATE DATE:=sysdate;
V_CREATED_BY NUMBER;
V_LAST_UPDATE_DATE DATE;
V_LAST_UPDATED_BY NUMBER;
V_LAST_UPDATE_LOG NUMBER;
V_TAX_PRODUCT_CATEGORY VARCHAR2(200);
cursor c_memo_lines is
select ml.name,
ml.description,
ml.line_type,
ml.start_date,
ml.gl_id_rev,
ml.revenue_account,
ml.tax_code,
ml.uom_code,
ml.unit_std_price,
ml.memo_line_id,
ml.org_id,
ml.set_of_books_id
from temp_memo_line ml
;
begin
for c in c_memo_lines
loop
select ar_memo_lines_s.nextval into v_memo_line_id from dual;
AR_MEMO_LINES_PKG.LOAD_ROW(
X_org_id =>c.org_id,
X_MEMO_LINE_ID =>v_memo_line_id,
X_SET_OF_BOOKS_ID =>c.set_of_books_id,
X_LINE_TYPE =>c.line_type,
X_START_DATE =>c.start_date,
X_GL_ID_REV =>c.gl_id_rev,
X_TAX_CODE =>c.tax_code,
X_UOM_CODE =>c.uom_code,
X_UNIT_STD_PRICE => c.unit_std_price,
X_INVOICING_RULE_ID =>V_VOICG_RULE_ID,
X_ACCOUNTING_RULE_ID =>V_ACCOUNTG_RULE_ID,
X_END_DATE =>V_END_DATE,
X_ATTRIBUTE_CATEGORY =>V_ATTRIBUTE_CATEGORY,
X_ATTRIBUTE1 =>V_ATTRIBUTE1,
X_ATTRIBUTE2 =>V_ATTRIBUTE2,
X_ATTRIBUTE3 =>V_ATTRIBUTE3,
X_ATTRIBUTE4 =>V_ATTRIBUTE4,
X_ATTRIBUTE5 =>V_ATTRIBUTE5,
X_ATTRIBUTE6 =>V_ATTRIBUTE6,
X_ATTRIBUTE7 =>V_ATTRIBUTE7,
X_ATTRIBUTE8 =>V_ATTRIBUTE8,
X_ATTRIBUTE9 =>V_ATTRIBUTE9,
X_ATTRIBUTE10 =>V_ATTRIBUTE10,
X_ATTRIBUTE11 =>V_ATTRIBUTE11,
X_ATTRIBUTE12 =>V_ATTRIBUTE12,
X_ATTRIBUTE13 =>V_ATTRIBUTE13,
X_ATTRIBUTE14 =>V_ATTRIBUTE14,
X_ATTRIBUTE15 =>V_ATTRIBUTE15,
X_GLOBAL_ATTRIBUTE_CATEGORY =>V_GLOBAL_ATTRIBUTE_CATEGORY,
X_GLOBAL_ATTRIBUTE1 =>V_GLOBAL_ATTRIBUTE1,
X_GLOBAL_ATTRIBUTE2 =>V_GLOBAL_ATTRIBUTE2,
X_GLOBAL_ATTRIBUTE3 =>V_GLOBAL_ATTRIBUTE3,
X_GLOBAL_ATTRIBUTE4 =>V_GLOBAL_ATTRIBUTE4,
X_GLOBAL_ATTRIBUTE5 =>V_GLOBAL_ATTRIBUTE5,
X_GLOBAL_ATTRIBUTE6 =>V_GLOBAL_ATTRIBUTE6,
X_GLOBAL_ATTRIBUTE7 =>V_GLOBAL_ATTRIBUTE7,
X_GLOBAL_ATTRIBUTE8 =>V_GLOBAL_ATTRIBUTE8,
X_GLOBAL_ATTRIBUTE9 =>V_GLOBAL_ATTRIBUTE9,
X_GLOBAL_ATTRIBUTE10 =>V_GLOBAL_ATTRIBUTE10,
X_GLOBAL_ATTRIBUTE11 =>V_GLOBAL_ATTRIBUTE11,
X_GLOBAL_ATTRIBUTE12 =>V_GLOBAL_ATTRIBUTE12,
X_GLOBAL_ATTRIBUTE13 =>V_GLOBAL_ATTRIBUTE13,
X_GLOBAL_ATTRIBUTE14 =>V_GLOBAL_ATTRIBUTE14,
X_GLOBAL_ATTRIBUTE15 =>V_GLOBAL_ATTRIBUTE15,
X_GLOBAL_ATTRIBUTE16 =>V_GLOBAL_ATTRIBUTE16,
X_GLOBAL_ATTRIBUTE17 =>V_GLOBAL_ATTRIBUTE17,
X_GLOBAL_ATTRIBUTE18 =>V_GLOBAL_ATTRIBUTE18,
X_GLOBAL_ATTRIBUTE19 =>V_GLOBAL_ATTRIBUTE19,
X_GLOBAL_ATTRIBUTE20 =>V_GLOBAL_ATTRIBUTE20,
X_NAME =>c.name,
X_DESCRIPTION =>c.description,
X_OWNER => 'SEED',
/*X_CREATION_DATE =>V_CREATION_DATE,
X_CREATED_BY =>V_CREATED_BY,
X_LAST_UPDATE_DATE =>V_LAST_UPDATE_DATE,
X_LAST_UPDATED_BY =>V_LAST_UPDATED_BY,
X_LAST_UPDATE_LOG =>V_LAST_UPDATE_LOG,*/
X_TAX_PRODUCT_CATEGORY =>V_TAX_PRODUCT_CATEGORY
);
commit;
end loop;
end;
Monday, April 24, 2017
Tuesday, April 18, 2017
API to assign bank account number to suppliers
declare
p_api_version number;
p_init_msg_list varchar2(200);
p_commit varchar2(200);
x_return_status varchar2(200);
x_msg_count number;
x_msg_data varchar2(200);
p_payee apps.iby_disbursement_setup_pub.payeecontext_rec_type;
p_assignment_attribs apps.iby_fndcpt_setup_pub.pmtinstrassignment_rec_type;
lr_ext_bank_acct_dtl iby_ext_bank_accounts%rowtype;
x_assign_id number;
x_response apps.iby_fndcpt_common_pub.result_rec_type;
lv_vendor_site_code varchar2(100);
lv_vendor_id number;
lv_bank_acct_name varchar2(100);
lv_supp_site_id varchar2(100);
lv_supp_party_site_id varchar2(100);
lv_acct_owner_party_id varchar2(100);
lv_org_id varchar2(100);
l_msg varchar2(200);
cursor c_suppliers is
select
s.vendor_id,
s.vendor_site_code,
s.street,
s.address_line2,
s.address_line3,
s.city,
s.country,
s.bank_name,
s.branch_name,
s.bank_account_country,
s.bank_account_num,
s.currency_code,
s.iban,
s.bank_account_type,
s.payment_factor_flag,
s.foreign_payment_use_flag,
s.bank_account_name,
s.bank_account_num_electronic,
s.liability_code_id,
s.prepay_code_combination_id
from tem_suppliers s;
begin
-- initialize apps session
fnd_global.apps_initialize(user_id=>6837,
resp_id=>50558,
resp_appl_id=>200);
mo_global.init('S', null);
--fnd_client_info.set_org_context(101);
-- input values
for c in c_suppliers loop
lv_vendor_site_code := c.vendor_site_code;
lv_vendor_id := c.vendor_id;
lv_bank_acct_name := c.bank_account_name;
-- assign api parameters
p_api_version := 1.0;
p_init_msg_list := fnd_api.g_true;
p_commit := fnd_api.g_true;
-- get ext bank account details
begin
select *
into lr_ext_bank_acct_dtl
from iby_ext_bank_accounts
where bank_account_name = lv_bank_acct_name;
exception
when others then
dbms_output.put_line('Unable to derive the external bank details:' ||
sqlerrm);
end;
-- get supplier details
begin
select assa.vendor_site_id,
assa.party_site_id,
aps.party_id,
assa.org_id
into lv_supp_site_id,
lv_supp_party_site_id,
lv_acct_owner_party_id,
lv_org_id
from ap_suppliers aps, ap_supplier_sites_all assa
where aps.vendor_id = assa.vendor_id
and aps.vendor_id = c.vendor_id
and assa.vendor_site_code = lv_vendor_site_code;
exception
when others then
dbms_output.put_line('Error- Get supp_site_id and supp_party_site_id' ||
sqlcode || sqlerrm);
end;
-- assign payee values
p_payee.supplier_site_id := lv_supp_site_id;
p_payee.party_id := lv_acct_owner_party_id;
p_payee.party_site_id := lv_supp_party_site_id;
p_payee.payment_function := 'PAYABLES_DISB';
p_payee.org_id := lv_org_id;
p_payee.org_type := 'OPERATING_UNIT';
-- assignment values
p_assignment_attribs.instrument.instrument_type := 'BANKACCOUNT';
p_assignment_attribs.instrument.instrument_id := lr_ext_bank_acct_dtl.ext_bank_account_id;
-- external bank account id
p_assignment_attribs.priority := 1;
p_assignment_attribs.start_date := sysdate;
iby_disbursement_setup_pub.set_payee_instr_assignment
(p_api_version => p_api_version,
p_init_msg_list => p_init_msg_list,
p_commit => p_commit,
x_return_status => x_return_status,
x_msg_count => x_msg_count,
x_msg_data => x_msg_data,
p_payee => p_payee,
p_assignment_attribs => p_assignment_attribs,
x_assign_id => x_assign_id,
x_response => x_response
);
dbms_output.put_line('X_RETURN_STATUS = ' || x_return_status);
dbms_output.put_line('X_MSG_COUNT = ' || x_msg_count);
dbms_output.put_line('X_MSG_DATA = ' || x_msg_data);
dbms_output.put_line('X_ASSIGN_ID = ' || x_assign_id);
dbms_output.put_line('X_RESPONSE.Result_Code = ' ||
x_response.result_code);
dbms_output.put_line('X_RESPONSE.Result_Category = ' ||
x_response.result_category);
dbms_output.put_line('X_RESPONSE.Result_Message = ' ||
x_response.result_message);
commit;
if (x_return_status <> fnd_api.g_ret_sts_success) then
for i in 1 .. fnd_msg_pub.count_msg loop
l_msg := fnd_msg_pub.get(p_msg_index => i,
p_encoded => fnd_api.g_false);
dbms_output.put_line('The API call failed with error ' || l_msg);
end loop;
else
dbms_output.put_line('The API call ended with SUCESSS status');
end if;
end loop;
end;
p_api_version number;
p_init_msg_list varchar2(200);
p_commit varchar2(200);
x_return_status varchar2(200);
x_msg_count number;
x_msg_data varchar2(200);
p_payee apps.iby_disbursement_setup_pub.payeecontext_rec_type;
p_assignment_attribs apps.iby_fndcpt_setup_pub.pmtinstrassignment_rec_type;
lr_ext_bank_acct_dtl iby_ext_bank_accounts%rowtype;
x_assign_id number;
x_response apps.iby_fndcpt_common_pub.result_rec_type;
lv_vendor_site_code varchar2(100);
lv_vendor_id number;
lv_bank_acct_name varchar2(100);
lv_supp_site_id varchar2(100);
lv_supp_party_site_id varchar2(100);
lv_acct_owner_party_id varchar2(100);
lv_org_id varchar2(100);
l_msg varchar2(200);
cursor c_suppliers is
select
s.vendor_id,
s.vendor_site_code,
s.street,
s.address_line2,
s.address_line3,
s.city,
s.country,
s.bank_name,
s.branch_name,
s.bank_account_country,
s.bank_account_num,
s.currency_code,
s.iban,
s.bank_account_type,
s.payment_factor_flag,
s.foreign_payment_use_flag,
s.bank_account_name,
s.bank_account_num_electronic,
s.liability_code_id,
s.prepay_code_combination_id
from tem_suppliers s;
begin
-- initialize apps session
fnd_global.apps_initialize(user_id=>6837,
resp_id=>50558,
resp_appl_id=>200);
mo_global.init('S', null);
--fnd_client_info.set_org_context(101);
-- input values
for c in c_suppliers loop
lv_vendor_site_code := c.vendor_site_code;
lv_vendor_id := c.vendor_id;
lv_bank_acct_name := c.bank_account_name;
-- assign api parameters
p_api_version := 1.0;
p_init_msg_list := fnd_api.g_true;
p_commit := fnd_api.g_true;
-- get ext bank account details
begin
select *
into lr_ext_bank_acct_dtl
from iby_ext_bank_accounts
where bank_account_name = lv_bank_acct_name;
exception
when others then
dbms_output.put_line('Unable to derive the external bank details:' ||
sqlerrm);
end;
-- get supplier details
begin
select assa.vendor_site_id,
assa.party_site_id,
aps.party_id,
assa.org_id
into lv_supp_site_id,
lv_supp_party_site_id,
lv_acct_owner_party_id,
lv_org_id
from ap_suppliers aps, ap_supplier_sites_all assa
where aps.vendor_id = assa.vendor_id
and aps.vendor_id = c.vendor_id
and assa.vendor_site_code = lv_vendor_site_code;
exception
when others then
dbms_output.put_line('Error- Get supp_site_id and supp_party_site_id' ||
sqlcode || sqlerrm);
end;
-- assign payee values
p_payee.supplier_site_id := lv_supp_site_id;
p_payee.party_id := lv_acct_owner_party_id;
p_payee.party_site_id := lv_supp_party_site_id;
p_payee.payment_function := 'PAYABLES_DISB';
p_payee.org_id := lv_org_id;
p_payee.org_type := 'OPERATING_UNIT';
-- assignment values
p_assignment_attribs.instrument.instrument_type := 'BANKACCOUNT';
p_assignment_attribs.instrument.instrument_id := lr_ext_bank_acct_dtl.ext_bank_account_id;
-- external bank account id
p_assignment_attribs.priority := 1;
p_assignment_attribs.start_date := sysdate;
iby_disbursement_setup_pub.set_payee_instr_assignment
(p_api_version => p_api_version,
p_init_msg_list => p_init_msg_list,
p_commit => p_commit,
x_return_status => x_return_status,
x_msg_count => x_msg_count,
x_msg_data => x_msg_data,
p_payee => p_payee,
p_assignment_attribs => p_assignment_attribs,
x_assign_id => x_assign_id,
x_response => x_response
);
dbms_output.put_line('X_RETURN_STATUS = ' || x_return_status);
dbms_output.put_line('X_MSG_COUNT = ' || x_msg_count);
dbms_output.put_line('X_MSG_DATA = ' || x_msg_data);
dbms_output.put_line('X_ASSIGN_ID = ' || x_assign_id);
dbms_output.put_line('X_RESPONSE.Result_Code = ' ||
x_response.result_code);
dbms_output.put_line('X_RESPONSE.Result_Category = ' ||
x_response.result_category);
dbms_output.put_line('X_RESPONSE.Result_Message = ' ||
x_response.result_message);
commit;
if (x_return_status <> fnd_api.g_ret_sts_success) then
for i in 1 .. fnd_msg_pub.count_msg loop
l_msg := fnd_msg_pub.get(p_msg_index => i,
p_encoded => fnd_api.g_false);
dbms_output.put_line('The API call failed with error ' || l_msg);
end loop;
else
dbms_output.put_line('The API call ended with SUCESSS status');
end if;
end loop;
end;
Monday, April 17, 2017
API to Create Item Categories
declare
l_category_rec inv_item_category_pub .category_rec_type;
l_return_status varchar2(80);
l_error_code number;
l_msg_count number;
l_msg_data varchar2(80);
l_out_category_id number;
begin
l_category_rec.segment1 := 'London';
select f.id_flex_num
into l_category_rec.structure_id
from fnd_id_flex_structures f
where f.id_flex_structure_code = 'CITY';
l_category_rec.description := 'London is located in Uk';
inv_item_category_pub.create_category
(
p_api_version => 1.0,
p_init_msg_list => fnd_api.g_false,
p_commit => fnd_api.g_true,
x_return_status => l_return_status,
x_errorcode => l_error_code,
x_msg_count => l_msg_count,
x_msg_data => l_msg_data,
p_category_rec => l_category_rec,
x_category_id => l_out_category_id
);
if l_return_status = fnd_api.g_ret_sts_success then
commit;
dbms_output.put_line ('Creation of Item Category is Successful : '||l_out_category_id);
else
dbms_output.put_line ('Creation of Item Category Failed with the error :'||l_error_code);
rollback;
end if;
end ;
l_category_rec inv_item_category_pub .category_rec_type;
l_return_status varchar2(80);
l_error_code number;
l_msg_count number;
l_msg_data varchar2(80);
l_out_category_id number;
begin
l_category_rec.segment1 := 'London';
select f.id_flex_num
into l_category_rec.structure_id
from fnd_id_flex_structures f
where f.id_flex_structure_code = 'CITY';
l_category_rec.description := 'London is located in Uk';
inv_item_category_pub.create_category
(
p_api_version => 1.0,
p_init_msg_list => fnd_api.g_false,
p_commit => fnd_api.g_true,
x_return_status => l_return_status,
x_errorcode => l_error_code,
x_msg_count => l_msg_count,
x_msg_data => l_msg_data,
p_category_rec => l_category_rec,
x_category_id => l_out_category_id
);
if l_return_status = fnd_api.g_ret_sts_success then
commit;
dbms_output.put_line ('Creation of Item Category is Successful : '||l_out_category_id);
else
dbms_output.put_line ('Creation of Item Category Failed with the error :'||l_error_code);
rollback;
end if;
end ;
API to create AR customer
declare
l_num_user_id NUMBER;
l_num_appl_id NUMBER;
l_num_resp_id NUMBER;
cust_account_rec_type hz_cust_account_v2pub.cust_account_rec_type;
l_num_obj_ver_num NUMBER;
l_chr_return_status VARCHAR2 (2000);
l_num_msg_count NUMBER;
l_chr_msg_data VARCHAR2 (500);
l_num_profile_id NUMBER;
cust_account_rec HZ_CUST_ACCOUNT_V2PUB.CUST_ACCOUNT_REC_TYPE;
l_organization_rec hz_party_v2pub.organization_rec_type;
l_customer_profile_rec hz_customer_profile_v2pub.customer_profile_rec_type;
l_num_cust_id NUMBER;
l_chr_acct_num VARCHAR2 (500);
l_num_party_id NUMBER;
l_chr_party_number VARCHAR2 (500);
l_cust_acct_site_use_rec hz_cust_account_site_v2pub.cust_site_use_rec_type;
l_cust_acct_site_rec hz_cust_account_site_v2pub.cust_acct_site_rec_type;
l_chr_sit_return_status VARCHAR2 (500);
l_num_sit_msg_count NUMBER;
l_chr_sit_msg_data VARCHAR2 (500);
l_chr_situ_return_status VARCHAR2 (500);
l_num_situ_msg_count NUMBER;
l_chr_situ_msg_data VARCHAR2 (500);
l_num_site_use_id NUMBER;
CURSOR update_base_tables_cur
IS
select distinct ps.party_site_name, a.party_number, ps.party_site_number, a.party_id,
'CUST-' ||a.party_id||'-'||ass.org_id as customer_ref,
'ADD-'||ps.party_site_id||'-'||ass.org_id as address_ref,
ps.party_site_id,
ass.address_line1,
ass.city, ass.state, ass.zip, ass.country,
'N' primary_site_use_flag,
a.orig_system_reference as party_ref,
a.party_name as customer_name, ass.org_id
from apps.ap_suppliers ap,
apps.ap_supplier_sites_all ass,
apps.hz_parties a,
apps.hz_party_sites ps
where ap.vendor_id = ass.vendor_id
and a.party_id = ap.party_id
and ps.party_id = ap.party_id
and ass.party_site_id = ps.party_site_id
and a.party_name = ap.vendor_name
and not exists (select * from hz_cust_accounts ac
where ac.party_id = a.party_id);
begin
fnd_global.apps_initialize( 6837, 50546, 222); -- input from 1st sql
dbms_output.put_line('***************************');
for update_base_tables_rec in update_base_tables_cur
loop
null;
cust_account_rec_type.cust_account_id := fnd_api.g_miss_num;
cust_account_rec_type.account_name := update_base_tables_rec.customer_name;
cust_account_rec_type.customer_type := 'R';
--l_organization_rec.party_rec_type.category_code := 'ROAMING';
l_organization_rec.party_rec.party_id := update_base_tables_rec.party_id;
l_organization_rec.party_rec.party_number := update_base_tables_rec.party_number;
l_organization_rec.organization_name := update_base_tables_rec.customer_name;
cust_account_rec_type.orig_system_reference := update_base_tables_rec.customer_ref;
l_customer_profile_rec.party_id := update_base_tables_rec.party_id;
l_customer_profile_rec.profile_class_id := 0 ; -- use default profile with id=0
l_customer_profile_rec.created_by_module := 'HZ_CPUI';
cust_account_rec_type.created_by_module := 'HZ_CPUI';
hz_cust_account_v2pub.create_cust_account
(p_init_msg_list => fnd_api.g_false,
p_cust_account_rec => cust_account_rec_type,
p_organization_rec => l_organization_rec,
p_customer_profile_rec => l_customer_profile_rec,
p_create_profile_amt => fnd_api.g_true,
x_cust_account_id => l_num_cust_id,
x_account_number => l_chr_acct_num,
x_party_id => l_num_party_id,
x_party_number => l_chr_party_number,
x_profile_id => l_num_profile_id,
x_return_status => l_chr_return_status,
x_msg_count => l_num_msg_count,
x_msg_data => l_chr_msg_data
);
dbms_output.put_line('x_return_status: '||l_chr_return_status);
dbms_output.put_line('x_cust_account_id: '||l_num_cust_id);
dbms_output.put_line('x_account_number: '||l_chr_acct_num);
dbms_output.put_line('x_party_id: '||l_num_party_id);
dbms_output.put_line(l_chr_return_status ||' ' ||l_chr_msg_data );
if l_chr_return_status != 'S'
then
--display all the error messages
for j in 1 .. fnd_msg_pub.count_msg
loop
-- dbms_output.put_line (j);
l_chr_msg_data :=
fnd_msg_pub.get (p_msg_index => j,
p_encoded => 'F');
-- dbms_output.put_line ('Message(' || j || '):= ' || l_chr_msg_data);
end loop;
end if;
begin
select cust_account_id
into l_cust_acct_site_rec.cust_account_id
from hz_cust_accounts
where orig_system_reference = update_base_tables_rec.customer_ref;
dbms_output.put_line(2 );
exception
when others
then
l_cust_acct_site_rec.cust_account_id := fnd_api.g_miss_num;
end;
l_cust_acct_site_rec.party_site_id := update_base_tables_rec.party_site_id;
l_cust_acct_site_rec.created_by_module := 'HZ_CPUI';
l_cust_acct_site_rec.orig_system_reference := update_base_tables_rec.address_ref;
l_cust_acct_site_rec.org_id := update_base_tables_rec.org_id;
mo_global.init ('ONT');
mo_global.set_policy_context (p_access_mode => 'S',
p_org_id => update_base_tables_rec.org_id
);
dbms_output.put_line(3 );
hz_cust_account_site_v2pub.create_cust_acct_site
(p_init_msg_list => 'T',
p_cust_acct_site_rec => l_cust_acct_site_rec,
x_cust_acct_site_id => l_num_obj_ver_num,
x_return_status => l_chr_sit_return_status,
x_msg_count => l_num_sit_msg_count,
x_msg_data => l_chr_sit_msg_data
);
dbms_output.put_line('x_cust_acct_site_id: '||l_num_obj_ver_num);
dbms_output.put_line('x_return_status: '||l_chr_sit_return_status);
dbms_output.put_line(4||' '|| l_chr_sit_return_status );
if l_chr_sit_return_status != 'S'
then
--display all the error messages
for j in 1 .. fnd_msg_pub.count_msg
loop
l_chr_sit_msg_data :=
fnd_msg_pub.get (p_msg_index => j,
p_encoded => 'F');
end loop;
end if;
begin
select cust_acct_site_id
into l_cust_acct_site_use_rec.cust_acct_site_id
from hz_cust_acct_sites_all
where orig_system_reference = update_base_tables_rec.address_ref;
exception
when others
then
l_cust_acct_site_use_rec.cust_acct_site_id := fnd_api.g_miss_num;
end;
l_cust_acct_site_use_rec.org_id := update_base_tables_rec.org_id;
l_cust_acct_site_use_rec.site_use_code := 'BILL_TO';
l_cust_acct_site_use_rec.status := 'A';
l_cust_acct_site_use_rec.location := update_base_tables_rec.party_site_name;
l_cust_acct_site_use_rec.primary_flag := 'Y';
l_cust_acct_site_use_rec.orig_system_reference :=
update_base_tables_rec.address_ref;
l_cust_acct_site_use_rec.created_by_module := 'HZ_CPUI';
mo_global.set_policy_context (p_access_mode => 'S',
p_org_id => update_base_tables_rec.org_id
);
hz_cust_account_site_v2pub.create_cust_site_use
(p_init_msg_list => 'T',
p_cust_site_use_rec => l_cust_acct_site_use_rec,
p_customer_profile_rec => l_customer_profile_rec,
p_create_profile => fnd_api.g_true,
p_create_profile_amt => fnd_api.g_true,
x_site_use_id => l_num_site_use_id,
x_return_status => l_chr_situ_return_status,
x_msg_count => l_num_situ_msg_count,
x_msg_data => l_chr_situ_msg_data
);
dbms_output.put_line('x_site_use_id: '||l_num_site_use_id);
dbms_output.put_line('x_return_status: '||l_chr_situ_return_status);
if l_chr_situ_return_status != 'S'
then
--display all the error messages
for j in 1 .. fnd_msg_pub.count_msg
loop
l_chr_situ_msg_data :=
fnd_msg_pub.get (p_msg_index => j,
p_encoded => 'F');
end loop;
end if;
end loop;
end;
l_num_user_id NUMBER;
l_num_appl_id NUMBER;
l_num_resp_id NUMBER;
cust_account_rec_type hz_cust_account_v2pub.cust_account_rec_type;
l_num_obj_ver_num NUMBER;
l_chr_return_status VARCHAR2 (2000);
l_num_msg_count NUMBER;
l_chr_msg_data VARCHAR2 (500);
l_num_profile_id NUMBER;
cust_account_rec HZ_CUST_ACCOUNT_V2PUB.CUST_ACCOUNT_REC_TYPE;
l_organization_rec hz_party_v2pub.organization_rec_type;
l_customer_profile_rec hz_customer_profile_v2pub.customer_profile_rec_type;
l_num_cust_id NUMBER;
l_chr_acct_num VARCHAR2 (500);
l_num_party_id NUMBER;
l_chr_party_number VARCHAR2 (500);
l_cust_acct_site_use_rec hz_cust_account_site_v2pub.cust_site_use_rec_type;
l_cust_acct_site_rec hz_cust_account_site_v2pub.cust_acct_site_rec_type;
l_chr_sit_return_status VARCHAR2 (500);
l_num_sit_msg_count NUMBER;
l_chr_sit_msg_data VARCHAR2 (500);
l_chr_situ_return_status VARCHAR2 (500);
l_num_situ_msg_count NUMBER;
l_chr_situ_msg_data VARCHAR2 (500);
l_num_site_use_id NUMBER;
CURSOR update_base_tables_cur
IS
select distinct ps.party_site_name, a.party_number, ps.party_site_number, a.party_id,
'CUST-' ||a.party_id||'-'||ass.org_id as customer_ref,
'ADD-'||ps.party_site_id||'-'||ass.org_id as address_ref,
ps.party_site_id,
ass.address_line1,
ass.city, ass.state, ass.zip, ass.country,
'N' primary_site_use_flag,
a.orig_system_reference as party_ref,
a.party_name as customer_name, ass.org_id
from apps.ap_suppliers ap,
apps.ap_supplier_sites_all ass,
apps.hz_parties a,
apps.hz_party_sites ps
where ap.vendor_id = ass.vendor_id
and a.party_id = ap.party_id
and ps.party_id = ap.party_id
and ass.party_site_id = ps.party_site_id
and a.party_name = ap.vendor_name
and not exists (select * from hz_cust_accounts ac
where ac.party_id = a.party_id);
begin
fnd_global.apps_initialize( 6837, 50546, 222); -- input from 1st sql
dbms_output.put_line('***************************');
for update_base_tables_rec in update_base_tables_cur
loop
null;
cust_account_rec_type.cust_account_id := fnd_api.g_miss_num;
cust_account_rec_type.account_name := update_base_tables_rec.customer_name;
cust_account_rec_type.customer_type := 'R';
--l_organization_rec.party_rec_type.category_code := 'ROAMING';
l_organization_rec.party_rec.party_id := update_base_tables_rec.party_id;
l_organization_rec.party_rec.party_number := update_base_tables_rec.party_number;
l_organization_rec.organization_name := update_base_tables_rec.customer_name;
cust_account_rec_type.orig_system_reference := update_base_tables_rec.customer_ref;
l_customer_profile_rec.party_id := update_base_tables_rec.party_id;
l_customer_profile_rec.profile_class_id := 0 ; -- use default profile with id=0
l_customer_profile_rec.created_by_module := 'HZ_CPUI';
cust_account_rec_type.created_by_module := 'HZ_CPUI';
hz_cust_account_v2pub.create_cust_account
(p_init_msg_list => fnd_api.g_false,
p_cust_account_rec => cust_account_rec_type,
p_organization_rec => l_organization_rec,
p_customer_profile_rec => l_customer_profile_rec,
p_create_profile_amt => fnd_api.g_true,
x_cust_account_id => l_num_cust_id,
x_account_number => l_chr_acct_num,
x_party_id => l_num_party_id,
x_party_number => l_chr_party_number,
x_profile_id => l_num_profile_id,
x_return_status => l_chr_return_status,
x_msg_count => l_num_msg_count,
x_msg_data => l_chr_msg_data
);
dbms_output.put_line('x_return_status: '||l_chr_return_status);
dbms_output.put_line('x_cust_account_id: '||l_num_cust_id);
dbms_output.put_line('x_account_number: '||l_chr_acct_num);
dbms_output.put_line('x_party_id: '||l_num_party_id);
dbms_output.put_line(l_chr_return_status ||' ' ||l_chr_msg_data );
if l_chr_return_status != 'S'
then
--display all the error messages
for j in 1 .. fnd_msg_pub.count_msg
loop
-- dbms_output.put_line (j);
l_chr_msg_data :=
fnd_msg_pub.get (p_msg_index => j,
p_encoded => 'F');
-- dbms_output.put_line ('Message(' || j || '):= ' || l_chr_msg_data);
end loop;
end if;
begin
select cust_account_id
into l_cust_acct_site_rec.cust_account_id
from hz_cust_accounts
where orig_system_reference = update_base_tables_rec.customer_ref;
dbms_output.put_line(2 );
exception
when others
then
l_cust_acct_site_rec.cust_account_id := fnd_api.g_miss_num;
end;
l_cust_acct_site_rec.party_site_id := update_base_tables_rec.party_site_id;
l_cust_acct_site_rec.created_by_module := 'HZ_CPUI';
l_cust_acct_site_rec.orig_system_reference := update_base_tables_rec.address_ref;
l_cust_acct_site_rec.org_id := update_base_tables_rec.org_id;
mo_global.init ('ONT');
mo_global.set_policy_context (p_access_mode => 'S',
p_org_id => update_base_tables_rec.org_id
);
dbms_output.put_line(3 );
hz_cust_account_site_v2pub.create_cust_acct_site
(p_init_msg_list => 'T',
p_cust_acct_site_rec => l_cust_acct_site_rec,
x_cust_acct_site_id => l_num_obj_ver_num,
x_return_status => l_chr_sit_return_status,
x_msg_count => l_num_sit_msg_count,
x_msg_data => l_chr_sit_msg_data
);
dbms_output.put_line('x_cust_acct_site_id: '||l_num_obj_ver_num);
dbms_output.put_line('x_return_status: '||l_chr_sit_return_status);
dbms_output.put_line(4||' '|| l_chr_sit_return_status );
if l_chr_sit_return_status != 'S'
then
--display all the error messages
for j in 1 .. fnd_msg_pub.count_msg
loop
l_chr_sit_msg_data :=
fnd_msg_pub.get (p_msg_index => j,
p_encoded => 'F');
end loop;
end if;
begin
select cust_acct_site_id
into l_cust_acct_site_use_rec.cust_acct_site_id
from hz_cust_acct_sites_all
where orig_system_reference = update_base_tables_rec.address_ref;
exception
when others
then
l_cust_acct_site_use_rec.cust_acct_site_id := fnd_api.g_miss_num;
end;
l_cust_acct_site_use_rec.org_id := update_base_tables_rec.org_id;
l_cust_acct_site_use_rec.site_use_code := 'BILL_TO';
l_cust_acct_site_use_rec.status := 'A';
l_cust_acct_site_use_rec.location := update_base_tables_rec.party_site_name;
l_cust_acct_site_use_rec.primary_flag := 'Y';
l_cust_acct_site_use_rec.orig_system_reference :=
update_base_tables_rec.address_ref;
l_cust_acct_site_use_rec.created_by_module := 'HZ_CPUI';
mo_global.set_policy_context (p_access_mode => 'S',
p_org_id => update_base_tables_rec.org_id
);
hz_cust_account_site_v2pub.create_cust_site_use
(p_init_msg_list => 'T',
p_cust_site_use_rec => l_cust_acct_site_use_rec,
p_customer_profile_rec => l_customer_profile_rec,
p_create_profile => fnd_api.g_true,
p_create_profile_amt => fnd_api.g_true,
x_site_use_id => l_num_site_use_id,
x_return_status => l_chr_situ_return_status,
x_msg_count => l_num_situ_msg_count,
x_msg_data => l_chr_situ_msg_data
);
dbms_output.put_line('x_site_use_id: '||l_num_site_use_id);
dbms_output.put_line('x_return_status: '||l_chr_situ_return_status);
if l_chr_situ_return_status != 'S'
then
--display all the error messages
for j in 1 .. fnd_msg_pub.count_msg
loop
l_chr_situ_msg_data :=
fnd_msg_pub.get (p_msg_index => j,
p_encoded => 'F');
end loop;
end if;
end loop;
end;
How to find user id,responsibility id, application id for FND_GLOBAL.APPS_INITIALIZE
How to find USER_ID:
select user_id from fnd_user where user_name='test';
How to find RESPONSIBILITY_ID:
select responsibility_id from fnd_responsibility_vl where responsibility_name like 'AP Accountant';
How to get APPLICATION_ID:
select * from fnd_responsibility_vl where responsibility_id=223;
Sunday, April 16, 2017
How to find a word with different endings in the string
SELECT
REGEXP_SUBSTR('I have earned 100 dollars today ','earn((ing)|(ed))')
FROM dual;
result : earned
SELECT
REGEXP_SUBSTR('I have been earning 100 dollars today ','earn((ing)|(ed))')
FROM dual;
result: earning
API to create JOBS
declare
l_business_group_id number;
l_job_group_id number;
l_job_id number;
l_object_version_number number;
l_job_definition_id number;
l_job_name varchar2(200);
l_group_name; varchar2(200) :='test';
begin
-- get group id and business group id
begin
select business_group_id,
job_group_id
into l_business_group_id,
l_job_group_id
from per_job_groups
where displayed_name = l_group_name;
exception
when others then
dbms_output.put_line('Unable to get the job group details.Error:'||sqlerrm);
raise;
end;
--- loop values from temporary table
for i in (
select
name,
date_from,
vacation_days
from temp_jobs
)
loop
HR_JOB_API .CREATE_JOB
(p_validate => FALSE
,p_business_group_id => l_business_group_id
,p_date_from =>i.date_from
,p_comments => 'test for nar'
,p_date_to => NULL
,p_job_group_id => l_job_group_id
,p_concat_segments => i.name
--output
,p_job_id => l_job_id
,p_object_version_number => l_object_version_number
,p_job_definition_id => l_job_definition_id
,p_name => l_job_name
,p_attribute11 => i.vacation_days-- annual vacation days
);
commit;
end loop;
DBMS_OUTPUT.PUT_LINE('job id: '||l_job_id);
DBMS_OUTPUT.PUT_LINE('object_version_number: '||l_object_version_number);
DBMS_OUTPUT.PUT_LINE('job_definition_id: '||l_job_definition_id);
DBMS_OUTPUT.PUT_LINE('job_name: '||l_job_name);
EXCEPTION
WHEN OTHERS THEN
dbms_output.put_line('unable to create a job.error:'||SQLERRM);
rollback;
RAISE;
END;