DECLARE
l_rec_profile_t hz_customer_profile_v2pub.customer_profile_rec_type;
l_rec_profile hz_customer_profile_v2pub.cust_profile_amt_rec_type;
l_profile_amt_id NUMBER;
l_profile_id NUMBER;
l_return_status1 VARCHAR2(30);
l_msg_count1 NUMBER;
l_msg_data1 VARCHAR2(2000);
l_return_status2 VARCHAR2(30);
l_msg_count2 NUMBER;
l_msg_data2 VARCHAR2(2000);
l_object_version_number NUMBER;
BEGIN
/* alter session set NLS_LANGUAGE = 'AMERICAN' ;*/
mo_global.init('AR');
fnd_global.apps_initialize(user_id => 1250,
resp_id => 50719,
resp_appl_id => 20005);
l_rec_profile_t.cust_account_profile_id := 1040;
l_rec_profile_t.cust_account_id := 1042; --CXY-TEST0028660
/* l_rec_profile_t.status := 'A';
l_rec_profile_t.collector_id := NULL;
l_rec_profile_t.credit_analyst_id := NULL;
l_rec_profile_t.credit_checking := NULL;
l_rec_profile_t.next_credit_review_date := NULL;
l_rec_profile_t.tolerance := NULL;
l_rec_profile_t.discount_terms := NULL;
l_rec_profile_t.dunning_letters := NULL;
l_rec_profile_t.interest_charges := NULL;
l_rec_profile_t.send_statements := NULL;
l_rec_profile_t.credit_balance_statements := NULL;*/
l_rec_profile_t.credit_hold := 'N';
/*l_rec_profile_t.profile_class_id := NULL;
l_rec_profile_t.site_use_id := 420072; --BILL_TO
l_rec_profile_t.credit_rating := NULL;
l_rec_profile_t.risk_code := NULL;
l_rec_profile_t.standard_terms := NULL;
l_rec_profile_t.override_terms := NULL;
l_rec_profile_t.dunning_letter_set_id := NULL;
l_rec_profile_t.interest_period_days := NULL;
l_rec_profile_t.payment_grace_days := NULL;
l_rec_profile_t.discount_grace_days := NULL;
l_rec_profile_t.statement_cycle_id := NULL;
l_rec_profile_t.account_status := NULL;
l_rec_profile_t.percent_collectable := NULL;
l_rec_profile_t.autocash_hierarchy_id := NULL;
l_rec_profile_t.auto_rec_incl_disputed_flag := NULL;
l_rec_profile_t.tax_printing_option := NULL;
l_rec_profile_t.charge_on_finance_charge_flag := NULL;
l_rec_profile_t.grouping_rule_id := NULL;
l_rec_profile_t.clearing_days := NULL;
l_rec_profile_t.cons_inv_flag := NULL;
l_rec_profile_t.cons_inv_type := NULL;
l_rec_profile_t.autocash_hierarchy_id_for_adr := NULL;
l_rec_profile_t.lockbox_matching_option := NULL;
l_rec_profile_t.created_by_module := 'BLC';
l_rec_profile_t.application_id := NULL;
l_rec_profile_t.review_cycle := NULL;
l_rec_profile_t.last_credit_review_date := NULL;
l_rec_profile_t.party_id := NULL;
l_rec_profile_t.credit_classification := NULL;
l_rec_profile_t.cons_bill_level := NULL;
l_rec_profile_t.late_charge_calculation_trx := NULL;
l_rec_profile_t.credit_items_flag := NULL;
l_rec_profile_t.disputed_transactions_flag := NULL;
l_rec_profile_t.late_charge_type := NULL;
l_rec_profile_t.late_charge_term_id := NULL;
l_rec_profile_t.interest_calculation_period := NULL;
l_rec_profile_t.hold_charged_invoices_flag := NULL;
l_rec_profile_t.message_text_id := NULL;
l_rec_profile_t.multiple_interest_rates_flag := NULL;
l_rec_profile_t.charge_begin_date := NULL;
l_rec_profile_t.automatch_set_id := NULL;*/
l_object_version_number := 5;--此值需为当前此配置文件的值,API里验证以下
/* IF NOT ((p_object_version_number IS NULL AND
l_object_version_number IS NULL) OR
(p_object_version_number IS NOT NULL AND
l_object_version_number IS NOT NULL AND
p_object_version_number = l_object_version_number)) THEN
fnd_message.set_name('AR', 'HZ_API_RECORD_CHANGED');
fnd_message.set_token('TABLE', 'hz_customer_profiles');
fnd_msg_pub.add;
RAISE fnd_api.g_exc_error;
由于另外一用户已更新了表 hz_customer_profiles 中的记录,因此没法锁定该记录。
END IF;*/
hz_customer_profile_v2pub.update_customer_profile(p_init_msg_list => fnd_api.g_false,
p_customer_profile_rec => l_rec_profile_t,
p_object_version_number => l_object_version_number,
x_return_status => l_return_status1,
x_msg_count => l_msg_count1,
x_msg_data => l_msg_data1);
FOR i IN 1 .. l_msg_count1 LOOP
l_msg_data1 := fnd_msg_pub.get(p_msg_index => i, p_encoded => 'F');
END LOOP; --FOR i IN 1 .. x_msg_count LOOP
dbms_output.put_line('x_return_status1:' || l_return_status1);
dbms_output.put_line('l_msg_count1:' || l_msg_count1);
dbms_output.put_line('l_msg_data1:' || l_msg_data1);
dbms_output.put_line('l_profile_amt_id:' || l_profile_amt_id);
EXCEPTION
WHEN OTHERS THEN
dbms_output.put_line('x_return_status:' || SQLERRM);
END;