Adjustment API's
Did anybody use Adjustment API's? I am having a hard time to create an adjustment using the below API.
ar_adjust_pub.create_adjustment
It is giving me a lot of errors. Most of the errors are from Oracle packages.
EXCEPTION: arp_adjustments_pkg.insert_p()
EXCEPTION: ar_process_adjustment.insert_adjustment()
Error in Insert Entity handler. Rolling back and setting status to ERROR
Any help is appreciated.
Thank you.
declare
v_msg_count number;
v_msg_data varchar2(240);
v_return_status varchar2(1);
v_new_adj_num number;
v_new_adj_id number;
v_count number;
Type adj_rec IS Record
p_last_updated_by number := -1,
p_last_update_date date := trunc(sysdate),
p_last_update_login number := -1,
p_created_by number := -1,
p_creation_date date := trunc(sysdate),
p_amount number := 30.00,
p_apply_date date := trunc(sysdate),
p_gl_date date := trunc(sysdate),
p_set_of_books_id number := 1001,
p_code_combination_id number := 1138,
p_type varchar2(10) := 'LINE',
p_adjustment_type varchar2(1) := 'M',
p_status varchar2(1) := 'w',
p_associated_cash_receipt_id number := 21296,
p_customer_trx_id number := 147599,
p_payment_schedule_id number := 123624,
p_receivables_trx_id number := 1019,
p_created_from varchar2(10) := 'ARXTWADJ',
p_postable varchar2(1) := 'N',
p_posting_control_id number := -3,
p_acctd_amount number := 30.00,
p_program_application_id number := -1,
p_program_id number := -1,
p_program_update_date date := trunc(sysdate),
p_org_id number := 91
v_adj_rec adj_rec;
begin
dbms_output.put_line('Start API');
AR_ADJUST_PUB.create_adjustment
p_api_name => 'AR_ADJUST_PUB',
p_api_version => 1.0,
p_msg_count => v_msg_count,
p_msg_data => v_msg_data,
p_return_status => v_return_status,
p_adj_rec => v_adj_rec,
p_new_adjust_number => v_new_adj_num,
p_new_adjust_id => v_new_adj_id
dbms_output.put_line('Adjust Number: '||v_new_adj_num);
dbms_output.put_line('Adjust Id: '||v_new_adj_id);
end;
Regards
GS
Similar Messages
-
제품 : FIN_AR
작성날짜 : 2005-11-28
AR ADJUSTMENT API 종류
=====================
PURPOSE
AR ADJUSTMENT API 사용 방법에 대한 문의
Explanation
API는 아래의 4개의 경우에 사용할수 있도록 만들어 졌습니다.
a) Creating an adjustment
b) Modifying an adjustment
c) Approving an adjustment
d) Reversing an adjustment
1 AR_ADJUST_PUB.CREATE_ADJUSTMENT
2 AR_ADJUST_PUB.MODIFY_ADJUSTMENT
adjustment status 'A' or 'R' 에 대해서는 사용하지 못함
3 AR_ADJUST_PUB.APPROVE_ADJUSTMENT
4 AR_ADJUST_PUB.REVERSE_ADJUSTMENT
Example
Reference Documents
177129.1Could you please send us the details of API code?
Thanks,
Anil -
Problem In Calling API fa_addition_pub.do_addition
Hello friends,
I am workin on the addition Of asset program
In which i called API fa_addition_pub.do_addition
but when i am executing it it gives me error
Error(157,1): PLS-00306: wrong number or types of arguments in call to 'DO_ADDITION'
Error(196,1): PLS-00201: identifier 'UPDATE_ERROR_MSG' must be declared
THE CODE WHICH I USED IS GIVEN BELOW
PLZ HELP ME TO SOLVE THIS PROBLEM.
CREATE OR REPLACE PROCEDURE APPS.FA_ADDITION_API (p_row_number NUMBER) AS
l_trans_rec fa_api_types.trans_rec_type;
l_dist_trans_rec fa_api_types.trans_rec_type;
l_asset_hdr_rec fa_api_types.asset_hdr_rec_type;
l_asset_fin_rec_old fa_api_types.asset_fin_rec_type;
l_asset_fin_rec fa_api_types.asset_fin_rec_type;
l_asset_fin_rec_new fa_api_types.asset_fin_rec_type;
l_asset_fin_mrc_tbl_new fa_api_types.asset_fin_tbl_type;
l_asset_deprn_rec fa_api_types.asset_deprn_rec_type;
l_asset_deprn_rec_new fa_api_types.asset_deprn_rec_type;
l_asset_deprn_mrc_tbl fa_api_types.asset_deprn_tbl_type;
l_asset_desc_rec fa_api_types.asset_desc_rec_type;
l_asset_type_rec fa_api_types.asset_type_rec_type;
l_asset_cat_rec fa_api_types.asset_cat_rec_type;
l_asset_dist_rec fa_api_types.asset_dist_rec_type;
l_asset_hierarchy_rec fa_api_types.asset_hierarchy_rec_type;
l_inv_rec fa_api_types.inv_rec_type;
l_inv_trans_rec fa_api_types.inv_trans_rec_type;
l_period_rec fa_api_types.period_rec_type;
l_who_rec fa_api_types.standard_who_rec_type;
l_inv_tbl fa_api_types.inv_tbl_type;
l_inv_rate_tbl fa_api_types.inv_rate_tbl_type;
l_asset_dist_tbl fa_api_types.asset_dist_tbl_type;
l_tax_book_tbl fa_cache_pkg.fazctbk_tbl_type;
l_initial_book boolean := TRUE;
CURSOR xx_addition_cur (p_row_number NUMBER)
IS
SELECT *
FROM xx_reg_book_load_interface
WHERE ROW_NUMBER = p_row_number;
-- Get the inventory details for Asset Addition API
CURSOR xx_dist_info_cur (p_asset_id NUMBER)
IS
SELECT fdh.*
FROM fa_distribution_history fdh
WHERE fdh.transaction_header_id_in = (SELECT MIN(transaction_header_id)
FROM fa_transaction_headers fth
WHERE fth.asset_id = p_asset_id
AND fth.transaction_type_code in ('TRANSFER IN', 'TRANSFER IN/VOID') );
-- AND transaction_header_id_in = p_transaction_id
-- AND NVL (transaction_units, 1) > 0;
-- Get the inventory details for Asset Adjustment API
CURSOR xx_inv_rec_type_adj_cur (p_row_number NUMBER)
IS
SELECT fai.invoice_transaction_id_in, fai.deleted_flag,
fai.invoice_number, fai.po_number, fai.unrevalued_cost,
fai.project_id, fai.task_id, fai.payables_code_combination_id,
fai.fixed_assets_cost, fai.source_line_id, fai.payables_cost,
xrbli.transaction_type_code, fai.ap_distribution_line_number,
fai.description, fai.po_vendor_id,
fai.payables_units,
fai.invoice_id,
fai.invoice_date
FROM fa_asset_invoices fai, xx_reg_book_load_interface xrbli
WHERE fai.invoice_transaction_id_in = xrbli.invoice_transaction_id
AND xrbli.ROW_NUMBER = p_row_number;
-- Out parameter for Addition API
l_return_status VARCHAR2 (1);
-- Out parameter for Addition API
l_mesg_count NUMBER := 0;
-- Out parameter for Addition API and used for error tracking
l_mesg VARCHAR2 (4000);
-- Index for inventory record table
l_dist_rec_count NUMBER := 0;
l_inv_rec_count NUMBER := 0;
l_stat_class VARCHAR2(50) ;
BEGIN
-- Open XX_ADDITION_CUR cursor by passing the period
FOR p_asset_addition IN xx_addition_cur (p_row_number)
LOOP
-- ASSET_FIN_REC_TYPE Asset Structure
l_asset_fin_rec.date_placed_in_service :=p_asset_addition.date_placed_in_service;
l_asset_fin_rec.COST := p_asset_addition.COST;
l_asset_fin_rec.depreciate_flag := 'YES'; -- YES for all the records
-- Transaction Info
/* BEGIN
SELECT segment4
INTO l_stat_class
FROM fa_categories_b fcb
WHERE fcb.category_id = p_asset_addition.asset_category_id ;
EXCEPTION WHEN OTHERS THEN
l_stat_class := NULL ;
END ;
IF ( NVL(l_stat_class,'*') = 'I' ) THEN
l_trans_rec.transaction_subtype := 'AMORTIZED' ;
END IF ;
l_trans_rec.who_info := l_who_rec;
-- ASSET_HDR_REC_TYPE Asset Structure (Asset ID should not be there for Addition API)
l_asset_hdr_rec.book_type_code := p_asset_addition.book_type_code;
-- ASSET_DESC_REC_TYPE Asset Structure
l_asset_desc_rec.asset_number := p_asset_addition.asset_number;
l_asset_desc_rec.description := p_asset_addition.description; ----modify by anand
l_asset_desc_rec.current_units := p_asset_addition.current_units;
l_asset_desc_rec.asset_key_ccid := p_asset_addition.asset_key_ccid;
-- ASSET_TYPE_REC_TYPE Asset Structure
l_asset_type_rec.asset_type := p_asset_addition.asset_type;
-- ASSET_CAT_REC_TYPE Asset Structure
l_asset_cat_rec.category_id := p_asset_addition.asset_category_id;
-- Initialize the count
l_inv_rec_count := 0;
-- INV_REC_TYPE Invoice Structure
FOR i IN xx_inv_rec_type_adj_cur (p_row_number)
LOOP
--IF l_asset_id_count p_asset_adjustment.asset_id THEN
l_inv_rec_count := l_inv_rec_count + 1;
l_inv_trans_rec.transaction_type := i.transaction_type_code;
--l_inv_rec.source_line_id := i.source_line_id;
l_inv_rec.fixed_assets_cost := i.fixed_assets_cost;
l_inv_rec.payables_cost := i.payables_cost;
l_inv_rec.payables_code_combination_id :=i.payables_code_combination_id;
l_inv_rec.invoice_number := i.invoice_number;
l_inv_rec.po_number := i.po_number;
l_inv_rec.unrevalued_cost := i.unrevalued_cost;
l_inv_rec.project_id := i.project_id;
l_inv_rec.task_id := i.task_id;
l_inv_rec.deleted_flag := i.deleted_flag;
l_inv_rec.description := i.description;
l_inv_rec.po_vendor_id := i.po_vendor_id;
l_inv_rec.ap_distribution_line_number :=i.ap_distribution_line_number;
l_inv_rec.payables_units := i.payables_units;
l_inv_rec.invoice_id := i.invoice_id;
l_inv_rec.invoice_date := i.invoice_date;
l_inv_tbl (l_inv_rec_count) := l_inv_rec;
--l_asset_id_count := p_asset_adjustment.asset_id;
--END IF;
END LOOP;
-- ASSET_DIST_REC_TYPE and ASSET_DIST_TBL_TYPE Asset Structure
FOR i IN xx_dist_info_cur (p_asset_addition.asset_id
-- , p_asset_addition.transaction_header_id
LOOP
l_dist_rec_count := l_dist_rec_count + 1;
-- l_asset_dist_rec.assigned_to := i.assigned_to;
l_asset_dist_rec.units_assigned := i.units_assigned;
l_asset_dist_rec.expense_ccid := i.code_combination_id;
l_asset_dist_rec.location_ccid := i.location_id;
l_asset_dist_tbl (l_dist_rec_count) := l_asset_dist_rec;
END LOOP;
-- Update to 0 for further use
l_dist_rec_count := 0;
--fnd_file.put_line(fnd_file.log, 'Calling the Addition API') ;
-- Call Addition api
fa_addition_pub.do_addition
(p_api_version => 1.0,
p_init_msg_list => fnd_api.g_false,
p_commit => fnd_api.g_false,
p_validation_level => fnd_api.g_valid_level_full,
x_return_status => l_return_status,
x_msg_count => l_mesg_count,
x_msg_data => l_mesg,
p_calling_fn => 'FA_ADDITION_API', ---modify by anand
px_trans_rec => l_trans_rec,
px_dist_trans_rec => l_dist_trans_rec,
px_asset_hdr_rec => l_asset_hdr_rec,
px_asset_desc_rec => l_asset_desc_rec,
px_asset_type_rec => l_asset_type_rec,
px_asset_cat_rec => l_asset_cat_rec,
px_asset_hierarchy_rec => l_asset_hierarchy_rec,
px_asset_fin_rec => l_asset_fin_rec,
px_asset_deprn_rec => l_asset_deprn_rec,
px_asset_dist_tbl => l_asset_dist_tbl,
px_inv_tbl => l_inv_tbl,
px_inv_rate_tbl => l_inv_rate_tbl
--fnd_file.put_line(fnd_file.log, 'Addition API returned status as : '|| l_return_status) ;
IF (l_return_status = fnd_api.g_ret_sts_success)
THEN
l_mesg_count := fnd_msg_pub.count_msg;
IF l_mesg_count > 0
THEN
l_mesg :=CHR (10)|| SUBSTR (fnd_msg_pub.get (fnd_msg_pub.g_first,fnd_api.g_false),1,512);
FOR i IN 1 .. (l_mesg_count - 1)
LOOP
l_mesg :=l_mesg|| CHR (10)|| SUBSTR (fnd_msg_pub.get (fnd_msg_pub.g_next,fnd_api.g_false),1,512);
END LOOP;
fnd_msg_pub.delete_msg ();
END IF;
l_mesg := 'FAILED (' || SQLERRM || '): ' || l_mesg;
-- Procedure to update XX_REG_BOOK_LOAD_INTERFACE table with rejection reason
update_error_msg ('Addition', l_mesg, p_asset_addition.ROW_NUMBER);
ELSE
-- Display the successful record
fnd_file.put_line (fnd_file.output,p_asset_addition.asset_number|| ' -> '|| p_asset_addition.description|| ' for asset Addition Success.'); --- modify by anand
END IF;
-- Delete PLSQL table and record type variables data
--empty_rec;
END LOOP;
END fa_addition_api;
tahnk youYou call do_addition with a wrong set of parameters or you use the wrong datatypes from your parameters.
Check what parameters ( and their datatypes ) that procedure expects.
Also check if you have the right privileges for using UPDATE_ERROR_MSG and that a synonym exists for it.
fa_addition_pub.do_addition
(p_api_version => 1.0,
p_init_msg_list => fnd_api.g_false,
p_commit => fnd_api.g_false,
p_validation_level => fnd_api.g_valid_level_full,
x_return_status => l_return_status,
x_msg_count => l_mesg_count,
x_msg_data => l_mesg,
p_calling_fn => 'FA_ADDITION_API', ---modify by anand
px_trans_rec => l_trans_rec,
px_dist_trans_rec => l_dist_trans_rec,
px_asset_hdr_rec => l_asset_hdr_rec,
px_asset_desc_rec => l_asset_desc_rec,
px_asset_type_rec => l_asset_type_rec,
px_asset_cat_rec => l_asset_cat_rec,
px_asset_hierarchy_rec => l_asset_hierarchy_rec,
px_asset_fin_rec => l_asset_fin_rec,
px_asset_deprn_rec => l_asset_deprn_rec,
px_asset_dist_tbl => l_asset_dist_tbl,
px_inv_tbl => l_inv_tbl,
px_inv_rate_tbl => l_inv_rate_tbl
); -
Getting Error - CREATE_CASH : ORA-01403: no data found
When i use api AR_RECEIPT_API_PUB.CREATE_CASH in loop then i get error 'CREATE_CASH : ORA-01403: no data found' for second record.
AR_RECEIPT_API_PUB.CREATE_CASH(p_api_version => 1.0
,p_init_msg_list => fnd_api.g_true
,p_commit => fnd_api.g_true
,p_receipt_number => i_receipt_number
,p_receipt_date => TRUNC(SYSDATE)
,p_gl_date => TRUNC(SYSDATE)
,p_amount => i_receipt_amount
,p_currency_code => g_currency_code
,p_receipt_method_id => i_receipt_method_id
,p_customer_id => i_customer_id
,p_cr_id => l_cr_id
,p_org_id => i_org_id
,x_return_status => l_return_status
,x_msg_count => l_msg_count
,x_msg_data => l_msg_data
I run it for different org. First org it's running fine but for second it's fail -
Here is output -
Start, Org ID - 84
l_receipt_number - 43164
l_receipt_amount - 74.55
g_currency_code - USD
l_receipt_method_id - 4000
l_customer_id - 7040
l_cr_id -
l_return_status -
l_msg_count -
l_msg_data -
Status - S
Start, Org ID - 81
l_receipt_number - 43166
l_receipt_amount - 30
g_currency_code - USD
l_receipt_method_id - 4000
l_customer_id - 7047
l_cr_id -
l_return_status -
l_msg_count -
l_msg_data -
Error count/msg - 2-
Error msg - CREATE_CASH : ORA-01403: no data found
Error msg - ORA-01403: no data found in Package AR_RECEIPT_API_PUB Procedure Create_cash
PLease help it's urgentHere is code which i am using...
IF l_ar_pay_rec > 0 THEN
l_receipt_number := ar_cash_receipts_s.NEXTVAL;
FOR r_ar_org_records IN cr_ar_org_records
LOOP
IF r_ar_org_records.org_id = 81 THEN
l_resp_id := 50677;
ELSE
l_resp_id := 50681;
END IF;
MO_GLOBAL.INIT('AR');
MO_GLOBAL.SET_POLICY_CONTEXT('S',r_ar_org_records.org_id);
FND_GLOBAL.APPS_INITIALIZE(g_user_id,l_resp_id,l_appl_id,0);
DBMS_OUTPUT.PUT_LINE('User,Resp,App,Org - '||g_user_id||','||l_resp_id||','||l_appl_id||','||r_ar_org_records.org_id);
-- Derive Receipt Method ID
BEGIN
SELECT receipt_method_id
INTO l_receipt_method_id
FROM ar_receipt_methods
WHERE name = g_receipt_method;
EXCEPTION
WHEN OTHERS THEN
g_ar_error := 'Y';
g_ar_error_msg := g_ar_error_msg||'Receipet Method Not Found, ';
FND_FILE.PUT_LINE(FND_FILE.LOG,'Error While Derive Receipt Method ID');
END;
-- Derive Customer ID
BEGIN
SELECT customer_id
,SUM(AMOUNT_PAID)
INTO l_customer_id
,l_receipt_amount
FROM xxar_third_party_validation
WHERE raf_code = i_raf
AND receipt_date = i_date_paid
AND org_id = r_ar_org_records.org_id
AND customer_id is not null
GROUP BY customer_id;
EXCEPTION
WHEN OTHERS THEN
g_ar_error := 'Y';
g_ar_error_msg := g_ar_error_msg||' Customer ID Not Found, ';
FND_FILE.PUT_LINE(FND_FILE.LOG,'Error While Customer ID');
END;
fnd_msg_pub.initialize;
l_return_status := NULL;
l_msg_count := NULL;
l_msg_data := NULL;
l_cr_id := NULL;
g_currency_code := 'USD';
DBMS_OUTPUT.PUT_LINE('Start, Org ID - '||r_ar_org_records.org_id);
-- Create Cash for Customer
DBMS_OUTPUT.PUT_LINE('l_receipt_number - '||l_receipt_number);
DBMS_OUTPUT.PUT_LINE('l_receipt_amount - '||l_receipt_amount);
DBMS_OUTPUT.PUT_LINE('g_currency_code - '||g_currency_code);
DBMS_OUTPUT.PUT_LINE('l_receipt_method_id - '||l_receipt_method_id);
DBMS_OUTPUT.PUT_LINE('l_customer_id - '||l_customer_id);
DBMS_OUTPUT.PUT_LINE('l_cr_id - '||l_cr_id);
DBMS_OUTPUT.PUT_LINE('l_return_status - '||l_return_status);
DBMS_OUTPUT.PUT_LINE('l_msg_count - '||l_msg_count);
DBMS_OUTPUT.PUT_LINE('l_msg_data - '||l_msg_data);
AR_RECEIPT_API_PUB.CREATE_CASH(p_api_version => 1.0
,p_init_msg_list => fnd_api.g_true
,p_receipt_number => l_receipt_number
,p_receipt_date => TRUNC(SYSDATE)
,p_gl_date => TRUNC(SYSDATE)
,p_amount => l_receipt_amount
,p_currency_code => g_currency_code
,p_receipt_method_id => l_receipt_method_id
,p_customer_id => l_customer_id
,p_cr_id => l_cr_id
,p_org_id => r_ar_org_records.org_id
,x_return_status => l_return_status
,x_msg_count => l_msg_count
,x_msg_data => l_msg_data
DBMS_OUTPUT.PUT_LINE('Status - '||l_return_status);
IF l_return_status <> 'S' THEN
g_ar_error := 'Y';
DBMS_OUTPUT.PUT_LINE('Error count/msg - '||l_msg_count||'-'||l_msg_data);
IF l_msg_count = 1 THEN
g_ar_error_msg := g_ar_error_msg||l_msg_data;
DBMS_OUTPUT.PUT_LINE('Error msg - '||l_msg_data);
ELSIF l_msg_count > 1 THEN
LOOP
l_msg_data := fnd_msg_pub.get (fnd_msg_pub.g_next
,fnd_api.g_false);
IF l_msg_data IS NULL THEN
EXIT;
END IF;
g_ar_error_msg := g_ar_error_msg||l_msg_data;
DBMS_OUTPUT.PUT_LINE('Error msg - '||l_msg_data);
END LOOP;
END IF;
xxar_log_error(r_ar_org_records.record_id,SUBSTR(g_ar_error_msg,1,120));
ELSE
DBMS_OUTPUT.PUT_LINE('Status - '||l_return_status);
FOR r_ar_records IN cr_ar_records(r_ar_org_records.org_id)
LOOP
fnd_msg_pub.initialize;
l_return_status := NULL;
l_msg_count := NULL;
l_msg_data := NULL;
l_cr_id := NULL;
l_receipt_amount := r_ar_records.amount_paid;
l_trx_number := r_ar_records.transaction_number;
g_currency_code := r_ar_records.currency_code;
l_receipt_date := SYSDATE;
l_gl_date := SYSDATE;
-- Apply payments for the RAF and Date Paid
AR_RECEIPT_API_PUB.APPLY(p_api_version => 1.0
,p_init_msg_list => fnd_api.g_true
,p_commit => fnd_api.g_false
,x_return_status => l_return_status
,x_msg_count => l_msg_count
,x_msg_data => l_msg_data
,p_receipt_number => l_receipt_number
,p_trx_number => l_trx_number
,p_amount_applied => l_receipt_amount
,p_org_id => r_ar_org_records.org_id
IF l_return_status <> 'S' THEN
g_ar_error := 'Y';
IF l_msg_count = 1 THEN
g_ar_error_msg := g_ar_error_msg||l_msg_data;
ELSIF l_msg_count > 1 THEN
LOOP
l_msg_data := fnd_msg_pub.get (fnd_msg_pub.g_next
,fnd_api.g_false);
IF l_msg_data IS NULL THEN
EXIT;
END IF;
g_ar_error_msg := g_ar_error_msg||l_msg_data;
END LOOP;
END IF;
xxar_log_error(r_ar_records.record_id,SUBSTR(g_ar_error_msg,1,240));
ELSE
DBMS_OUTPUT.PUT_LINE('Sucess 2 - ');
NULL;
/* -- Call Adjustment API for Contractual Allowance
IF NVL(r_ar_records.contractual_allowance_amt,0) > 0 THEN
xxar_third_party_rcpt_adj(r_ar_records.record_id
,r_ar_records.transaction_number
,r_ar_records.contractual_allowance_amt
,i_user_id
END IF; */
END IF;
END LOOP;
END IF;
DBMS_OUTPUT.PUT_LINE('Error Flag AR - '||g_ar_error);
IF g_ar_error = 'Y' THEN
xxar_log_error(r_ar_org_records.record_id,SUBSTR(g_ar_error_msg,1,240));
END IF;
END LOOP; -
Wrong GL Dates for Distributions for Credit Memo with Rules
Hi all
Using Autoinvoice, Ive created Invoice with Invoice date 17-APR-08 and 12 month payment term. Invoice line has amount of $460 and deferred accounting rule of type "Accounting, Fixed Duration". Rule start date is 17-APR-08 and duration is 1.
I run the Revenue Recognition and then Revenue Adjustment API "ar_revenueadjust_pub.earn_revenue" to create revenue account schedule for 12 month period based on business rules. Now I issue credit memo of $60 on 18-JUN-08 with LIFO rule method and LIFO split term method, against the above invoice line.
I run revenue recognition, go to the credit memo distributions. All the distributions show GL Date as 17-APR-08 with correct percentages and amount as in the original invoice line.
Can anyone help me understand why all distributions of credit memo have same gl date?Hi Nagamohan,
Credit Memo is applied to invoice line with deferred rule.
If I issue credit memo on 18-JUN-08 with LIFO against a Invoice line which uses "Daily Revenue - All Periods" rule, the distributions show
GL Date - Dr - Cr - Amount
17-FEB-09 REV UNEARN 0.77
17-MAR-09 REV UNEARN 39.07
16-MAR-09 REV UNEARN 20.16
The above amounts are exactly the reverse distributions as in Original Invoice line.
I was expecting the same thing to happen in Deferred Fixed rule, but the only difference is for Fixed rule I cannot populate Rule_End_Date through Autoinvoice or manually.
Kishore.
Message was edited by:
chakoo -
Hi All,
We have a requirement for adjusting AR Invoices. This is a conversion activity and hence we have millions of records. Can anyone please suggest whether there is an API for making adjustments to AR Invoices.
Thanks.All APIs are listed in Oracle Integration Repository
http://irep.oracle.com/index.html
API User Notes - HTML Format [ID 236937.1]
R12.0.[3-4] : Oracle Install Base Api / Open Interface Setup Test [ID 427566.1]
Oracle Trading Community Architecture API User Notes, June 2003 [ID 241320.1]
Technical Uses of Customer Interface and TCA-API [ID 269121.1]
Pelase also check below:
Api's in EBS
Re: Api's in EBS
http://sairamgoudmalla.blogspot.com/2009/05/script-to-find-oracle-apis-for-any.html
API
Fixed Asset API
List of API
Re: List of APIs
Oracle Common Application Components API Reference Guide
download.oracle.com/docs/cd/B25284_01/current/acrobat/jta115api.pdf
List of APIs and open interface R12
Re: List of APIs and open interface R12
Regard
Helios -
How to adjust line sampling frequency in photoshop CC on surface pro 3
I just got a Surface Pro 3 so that I could work on my art on the go. I am used to working on a mac with a cintiq, but fell for the hype that photoshop was optimized to work with SP3. However, when I try to use the brush tool, my lines look AWFUL! no matter what I do, the lines are wavy and messy looking. I read that PSCC raised the sampling frequency rate so that the line would look better, but I think THAT is exactly why it looks awful. the Surface pro seems to be picking up EVERY microscopic twitch. I cant work like this ... and I am surely not the only person using PSCC on the SP3, as they're ADVERTISED to work together. How do I adjust the sampling frequency so that my line looks as smooth as it does on a Wacom in photoshop? ...because THAT image below.. looks like crap.
I'm not an artist so I don't draw using my Surface pro 3. Many have the same issue with wacom tablets and cintigu from what I read. They seem to be able to solve their concerns by installing a plugin Lazy Nezumi Pro - Mouse and Pen Smoothing for PhotoShop and other Apps Remember I don't draw and have not installed that plug-in so I can not state that it works well on a surface pro 3.
Doing a Web search I found this I quote
Hi guys,
I'm the author of Lazy Nezumi Pro!
Here's the situation with the Surface Pro 3: I'm not 100% sure, but I think the people who got LNP to work with the SP3 the ones who have Photoshop CC 2014, which uses the new Windows 8 native tablet API (instead of Wintab, which is very old tech). If you have this version, make sure you enable Windows Ink for it to work right. It's possible that the N-Trig Wintab implementation is just buggy, or that it's doing something very differently than what LNP is expecting (this is probably the case since I have reports that PS works fine without LNP). Unfortunately I won't know more until I get a SP3 myself and do some testing/debugging.
I'm sorry I can't help more right now, but I'll keep you updated! -
Date Calculations - Adding 1 to the day and adjusting month/year
Hi all,
I have a date field in MM/ DD/ YYYY format. If I add 1 to the DD (day) field, and I hit the end
of the month/year I need to adjust the MM and YYYY accordingly.
Is there is an existing class/method in the JAVA API that would handle somthing like this??
If so , I can't find it..... I don't want to re-invent the wheel creating a Date Handling routine just
for this program.......
Thanks very muchThis is overkill... (and sorry that this post is over a year later than the original post... hopefully somebody will benefit from it :)
Calendar.getInstance() by default instanciates a GregorianCalendar
object. (check the src).
Therefore:
Calendar cal = Calendar.getInstance();
cal.setTime(d); // where d = java.util.Date or java.sql.Timestamp
cal.add(Calendar.DATE, numberOfDays);
return cal.getTime();
public static java.util.Date
adjustDateBy(java.util.Date d, int numberOfDays) {
java.util.GregorianCalendar cal = new
java.util.GregorianCalendar();
cal.setTime(d);
cal.add(java.util.GregorianCalendar.DATE,
numberOfDays);
return cal.getTime(); -
Why FlowLayout - JPane will NOT auto adjust in size?
Hello java friends,
I don't understand why my little demo program's JPane(use FlowLayout manager) will not adjust the size correctly. When run, I see one row of buttons, which only show 11 of them; the rest are shown on secon row which only visible if I go resize the window. Why is that? Wouldn't FlowLayout manager will auto size the pane? My main frame used the pack() method, so it's up to the pane's preferredsize. Please give me some ideas. Thanks.
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class Template {
public static void main(String[] args) {
JFrame mainFrame =new JFrame("Template");
mainFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
mainFrame.setContentPane(new TemplatePane());
//Display the window.
mainFrame.pack();
mainFrame.setVisible(true);
class TemplatePane extends JPanel
implements ActionListener {
JButton componentAry[] =new JButton[100];
TemplatePane() {
this.setLayout(new FlowLayout());
for(int i=0; i<componentAry.length; i++) {
componentAry[i] =new JButton("Test#"+i);
componentAry.addActionListener(this);
this.add(componentAry[i]);
public void actionPerformed(ActionEvent ae) {
System.out.println(ae.getActionCommand());I did read the API doc:
>>>>
A flow layout arranges components in a left-to-right flow, much like lines of text in a paragraph. Flow layouts are typically used to arrange buttons in a panel. It will arrange buttons left to right until no more buttons fit on the same line. Each line is centered.
>>>>
My question is why won't it adjust the pane size if the there is more than one line? It did draw the second line for things that won't fit in the first line... just not visible unless the whole window is resized to a bigger view. Can you please provide an explanation? -
How to change the default name of new adjustment layers? (and other Q's)
How do I change the default name of new adjustment layers?
How can I make it so that adjustment layers don't come with a mask when I create them (unless I have a selection active)?
Why isn't the Shadows/Highlights functionality an adjustment layer? It's accessable under "adjustments" but you can't use it non-destructive
Where can I find documentation on Photoshop's API? (I want o make tools for it - javascript)Forgive me for not looking into your Maya-specific links, but one can automate Photoshop using JavaScript indeed (on Windows also VB, on Mac also AppleScript).
Not everything can be automated naturally, but a lot – and it can really speed up many tasks; and with the »small« repetitive ones like saving copies off of files etc. combining Scripts with Configurator Panels can be especially convenient.
There is a Scripting Forum over at
http://forums.adobe.com/community/photoshop/photoshop_scripting
As for plugins: it's something I would like to learn some day (I guess you would have to go with Flash and AS3 for making actual plugins)
I think you might also have to learn C++ or C.
There is Forum the contributors to which might be able to give you pointers if you get to that.
http://forums.adobe.com/community/photoshop/photoshop_sdk -
ORABPEL-11811 - Error while calling PL/Sql API Into BPEL Process
Hi,
I have created a BPEL Process for creating a Order in Oracle using the synchronous process.
I have followed the below steps.
1) Created a Stored procedure using the Order Creation API's by passing Recard Type IN parameters.
2) Created Synchronous BPEL Process and called the above Procedure using APPS Adapter.
3) Created a xsd file and mapped the input and output parameter values using Transform Activity.
After the above steps, when I try to run the BPEL process I am getting the below error:
An error occurred while preparing and executing the APPS.PROC_PROC_NAME API. Cause: java.sql.SQLException: ORA-06531: Reference to uninitialized collection
ORA-06512: at "APPS.PROC_PROC_NAME ", line 149
ORA-06512: at line 1
[Caused by: ORA-06531: Reference to uninitialized collection
ORA-06512: at "APPS.PROC_NAME", line 149
ORA-06512: at line 1
; nested exception is:
ORABPEL-11811
Error while trying to prepare and execute an API.
An error occurred while preparing and executing the APPS.PROC_PROC_NAME API. Cause: java.sql.SQLException: ORA-06531: Reference to uninitialized collection.
Can anybody help in resolving the error?
Thanks,
Mastanvali.Here is the API Code..
CREATE OR REPLACE PROCEDURE XXMAST_PRC(
arg_in_p_header_rec IN HeaderObject,
arg_in_p_line_tbl IN arrayLines,
arg_out_x_return_status OUT VARCHAR2,
arg_out_order_number OUT NUMBER,
arg_out_header_id OUT NUMBER,
arg_out_flow_status_code OUT VARCHAR2
) AS
p_api_version_number NUMBER;
x_return_status VARCHAR2(2);
x_msg_count NUMBER;
x_msg_data VARCHAR2(2000);
v_msg_data VARCHAR2(8000);
v_msg_index_out NUMBER(10);
p_header_rec OE_ORDER_PUB.HEADER_REC_TYPE;
p_old_header_rec OE_ORDER_PUB.HEADER_REC_TYPE;
p_header_val_rec OE_ORDER_PUB.Header_Val_Rec_Type;
p_old_header_val_rec OE_ORDER_PUB.Header_Val_Rec_Type;
p_Header_Adj_tbl OE_ORDER_PUB.Header_Adj_Tbl_Type;
p_old_Header_Adj_tbl OE_ORDER_PUB.Header_Adj_Tbl_Type;
p_Header_Adj_val_tbl OE_ORDER_PUB.Header_Adj_Val_Tbl_Type;
p_old_Header_Adj_val_tbl OE_ORDER_PUB.Header_Adj_Val_Tbl_Type;
p_Header_price_Att_tbl OE_ORDER_PUB.Header_Price_Att_Tbl_Type;
p_old_Header_Price_Att_tbl OE_ORDER_PUB.Header_Price_Att_Tbl_Type;
p_Header_Adj_Att_tbl OE_ORDER_PUB.Header_Adj_Att_Tbl_Type;
p_old_Header_Adj_Att_tbl OE_ORDER_PUB.Header_Adj_Att_Tbl_Type;
p_Header_Adj_Assoc_tbl OE_ORDER_PUB.Header_Adj_Assoc_Tbl_Type;
p_old_Header_Adj_Assoc_tbl OE_ORDER_PUB.Header_Adj_Assoc_Tbl_Type;
p_Header_Scredit_tbl OE_ORDER_PUB.Header_Scredit_Tbl_Type;
p_old_Header_Scredit_tbl OE_ORDER_PUB.Header_Scredit_Tbl_Type;
p_Header_Scredit_val_tbl OE_ORDER_PUB.Header_Scredit_Val_Tbl_Type;
p_old_Header_Scredit_val_tbl OE_ORDER_PUB.Header_Scredit_Val_Tbl_Type;
p_line_tbl OE_ORDER_PUB.Line_Tbl_Type;
p_old_line_tbl OE_ORDER_PUB.Line_Tbl_Type;
p_line_val_tbl OE_ORDER_PUB.Line_Val_Tbl_Type;
p_old_line_val_tbl OE_ORDER_PUB.Line_Val_Tbl_Type;
p_Line_Adj_tbl OE_ORDER_PUB.Line_Adj_Tbl_Type;
p_old_Line_Adj_tbl OE_ORDER_PUB.Line_Adj_Tbl_Type;
p_Line_Adj_val_tbl OE_ORDER_PUB.Line_Adj_Val_Tbl_Type;
p_old_Line_Adj_val_tbl OE_ORDER_PUB.Line_Adj_Val_Tbl_Type;
p_Line_price_Att_tbl OE_ORDER_PUB.Line_Price_Att_Tbl_Type;
p_old_Line_Price_Att_tbl OE_ORDER_PUB.Line_Price_Att_Tbl_Type;
p_Line_Adj_Att_tbl OE_ORDER_PUB.Line_Adj_Att_Tbl_Type;
p_old_Line_Adj_Att_tbl OE_ORDER_PUB.Line_Adj_Att_Tbl_Type;
p_Line_Adj_Assoc_tbl OE_ORDER_PUB.Line_Adj_Assoc_Tbl_Type;
p_old_Line_Adj_Assoc_tbl OE_ORDER_PUB.Line_Adj_Assoc_Tbl_Type;
p_Line_Scredit_tbl OE_ORDER_PUB.Line_Scredit_Tbl_Type;
p_old_Line_Scredit_tbl OE_ORDER_PUB.Line_Scredit_Tbl_Type;
p_Line_Scredit_val_tbl OE_ORDER_PUB.Line_Scredit_Val_Tbl_Type;
p_old_Line_Scredit_val_tbl OE_ORDER_PUB.Line_Scredit_Val_Tbl_Type;
p_Lot_Serial_tbl OE_ORDER_PUB.Lot_Serial_Tbl_Type;
p_old_Lot_Serial_tbl OE_ORDER_PUB.Lot_Serial_Tbl_Type;
p_Lot_Serial_val_tbl OE_ORDER_PUB.Lot_Serial_Val_Tbl_Type;
p_old_Lot_Serial_val_tbl OE_ORDER_PUB.Lot_Serial_Val_Tbl_Type;
p_action_request_tbl OE_ORDER_PUB.Request_Tbl_Type;
x_header_rec OE_ORDER_PUB.Header_Rec_Type;
x_header_val_rec OE_ORDER_PUB.Header_Val_Rec_Type;
x_Header_Adj_tbl OE_ORDER_PUB.Header_Adj_Tbl_Type;
x_Header_Adj_val_tbl OE_ORDER_PUB.Header_Adj_Val_Tbl_Type;
x_Header_price_Att_tbl OE_ORDER_PUB.Header_Price_Att_Tbl_Type;
x_Header_Adj_Att_tbl OE_ORDER_PUB.Header_Adj_Att_Tbl_Type;
x_Header_Adj_Assoc_tbl OE_ORDER_PUB.Header_Adj_Assoc_Tbl_Type;
x_Header_Scredit_tbl OE_ORDER_PUB.Header_Scredit_Tbl_Type;
x_Header_Scredit_val_tbl OE_ORDER_PUB.Header_Scredit_Val_Tbl_Type;
x_line_tbl OE_ORDER_PUB.Line_Tbl_Type;
x_line_val_tbl OE_ORDER_PUB.Line_Val_Tbl_Type;
x_Line_Adj_tbl OE_ORDER_PUB.Line_Adj_Tbl_Type;
x_Line_Adj_val_tbl OE_ORDER_PUB.Line_Adj_Val_Tbl_Type;
x_Line_price_Att_tbl OE_ORDER_PUB.Line_Price_Att_Tbl_Type;
x_Line_Adj_Att_tbl OE_ORDER_PUB.Line_Adj_Att_Tbl_Type;
x_Line_Adj_Assoc_tbl OE_ORDER_PUB.Line_Adj_Assoc_Tbl_Type;
x_Line_Scredit_tbl OE_ORDER_PUB.Line_Scredit_Tbl_Type;
x_Line_Scredit_val_tbl OE_ORDER_PUB.Line_Scredit_Val_Tbl_Type;
x_Lot_Serial_tbl OE_ORDER_PUB.Lot_Serial_Tbl_Type;
x_Lot_Serial_val_tbl OE_ORDER_PUB.Lot_Serial_Val_Tbl_Type;
x_action_request_tbl OE_ORDER_PUB.Request_Tbl_Type;
icount NUMBER :=0;
BEGIN
fnd_global.apps_initialize(1318,21623,660);
fnd_client_info.set_org_context(204);
p_header_rec:= OE_ORDER_PUB.G_MISS_HEADER_REC;
SELECT OE_ORDER_HEADERS_S.NEXTVAL INTO p_header_rec.header_id FROM DUAL;
dbms_output.put_line('Header ID = '|| p_header_rec.header_id);
p_api_version_number := 1.0;
------------------------------------------header code-----------------------------------------------------------------------
p_header_rec.order_type_id := arg_in_p_header_rec.order_type_id;
p_header_rec.sold_to_org_id := arg_in_p_header_rec.sold_to_org_id;
p_header_rec.ship_to_org_id := arg_in_p_header_rec.ship_to_org_id;
p_header_rec.transactional_curr_code:= arg_in_p_header_rec.transactional_curr_code;
p_header_rec.order_source_id := arg_in_p_header_rec.order_source_id;
p_header_rec.org_id := arg_in_p_header_rec.org_id;
p_header_rec.ship_from_org_id := arg_in_p_header_rec.ship_from_org_id;
p_header_rec.payment_term_id := arg_in_p_header_rec.payment_term_id;
p_header_rec.price_list_id := 1000;
p_header_rec.freight_terms_code := 'Due'; -- Prepay and Add
p_header_rec.operation := OE_GLOBALS.G_OPR_CREATE;
p_header_rec.pricing_date := SYSDATE;
p_header_rec.creation_date := SYSDATE;
p_header_rec.booked_flag := 'N';
p_header_rec.created_by := 1318;
p_header_rec.last_updated_by := 1318;
p_header_rec.last_update_date := SYSDATE;
p_header_rec.invoice_to_org_id := 1424;
p_header_rec.version_number := 1;
p_header_rec.open_flag := 'Y';
p_header_rec.ordered_date := SYSDATE;
p_header_rec.flow_status_code := 'ENTERED';
p_header_rec.tax_exempt_flag := 'S';
p_header_rec.salesrep_id := -3;
--------------------------------------------LINES CODE------------------------------------------------------------
icount := 0;
for icount in 1 .. arg_in_p_line_tbl.count loop
p_line_tbl(icount) := Oe_Order_Pub.G_MISS_LINE_REC;
SELECT OE_ORDER_LINES_S.NEXTVAL INTO p_line_tbl(icount).line_id FROM DUAL;
dbms_output.put_line('Line ID = '|| p_line_tbl(icount).line_id);
p_line_tbl(icount).inventory_item_id := arg_in_p_line_tbl(icount).inventory_item_id;
p_line_tbl(icount).ordered_quantity := arg_in_p_line_tbl(icount).ordered_quantity;
p_line_tbl(icount).pricing_quantity := arg_in_p_line_tbl(icount).pricing_quantity;
p_line_tbl(icount).line_type_id := arg_in_p_line_tbl(icount).line_type_id;
p_line_tbl(icount).line_number := icount;
p_line_tbl(icount).shipment_number := arg_in_p_line_tbl(icount).shipment_number;
p_line_tbl(icount).ship_to_org_id := arg_in_p_line_tbl(icount).ship_to_org_id;
p_line_tbl(icount).sold_to_org_id := arg_in_p_line_tbl(icount).sold_to_org_id;
p_line_tbl(icount).salesrep_id := arg_in_p_line_tbl(icount).salesrep_id;
p_line_tbl(icount).payment_term_id := arg_in_p_line_tbl(icount).payment_term_id;
p_line_tbl(icount).price_list_id := 1000;
p_line_tbl(icount).operation := OE_GLOBALS.G_OPR_CREATE;
p_line_tbl(icount).open_flag := 'Y';
p_line_tbl(icount).booked_flag := 'N';
p_line_tbl(icount).header_id := p_header_rec.header_id;
p_line_tbl(icount).line_category_code := 'ORDER';
p_line_tbl(icount).order_quantity_uom :='Ea';
p_line_tbl(icount).request_date := SYSDATE;
p_line_tbl(icount).schedule_ship_date := SYSDATE;
p_line_tbl(icount).ship_from_org_id := 204;
p_line_tbl(icount).flow_status_code := 'ENTERED';
p_line_tbl(icount).ship_to_customer_id := 1290;
p_line_tbl(icount).invoice_to_org_id := 1424;
p_line_tbl(icount).tax_exempt_flag := 'S';
p_line_tbl(icount).tax_date := '02-Mar-2005';
p_line_tbl(icount).tax_code := 'Location';
SELECT OE_PRICE_ADJUSTMENTS_S.NEXTVAL INTO p_Line_Adj_tbl(icount).price_adjustment_id FROM DUAL;
dbms_output.put_line('Price Adjustment ID = '|| p_Line_Adj_tbl(icount).price_adjustment_id);
p_Line_Adj_tbl(icount).created_by := 1318;
p_Line_Adj_tbl(icount).header_id := p_header_rec.header_id;
p_Line_Adj_tbl(icount).line_id := p_line_tbl(icount).line_id;
p_Line_Adj_tbl(icount).percent := 10;
p_Line_Adj_tbl(icount).operation := OE_GLOBALS.G_OPR_CREATE;
p_Line_Adj_tbl(icount).list_header_id := 8988;
p_Line_Adj_tbl(icount).list_line_id := 16596;
p_Line_Adj_tbl(icount).list_line_type_code := 'DIS';
p_Line_Adj_tbl(icount).arithmetic_operator := 'AMT';
p_Line_Adj_tbl(icount).updated_flag := 'Y';
p_Line_Adj_tbl(icount).update_allowed := 'Y';
p_Line_Adj_tbl(icount).applied_flag := 'Y';
p_Line_Adj_tbl(icount).automatic_flag := 'N';
p_Line_Adj_tbl(icount).OPERAND := 10;
end loop;
oe_msg_pub.initialize;
oe_order_pub.process_order
( p_api_version_number => p_api_version_number
, p_init_msg_list => FND_API.G_FALSE
, p_return_values => FND_API.G_FALSE
, p_action_commit => FND_API.G_FALSE
, x_return_status => x_return_status
, x_msg_count => x_msg_count
, x_msg_data => x_msg_data
, p_header_rec => p_header_rec
, p_old_header_rec => p_old_header_rec
, p_header_val_rec => p_header_val_rec
, p_old_header_val_rec => p_old_header_val_rec
, p_Header_Adj_tbl => p_Header_Adj_tbl
, p_old_Header_Adj_tbl => p_old_Header_Adj_tbl
, p_Header_Adj_val_tbl => p_Header_Adj_val_tbl
, p_old_Header_Adj_val_tbl => p_old_Header_Adj_val_tbl
, p_Header_price_Att_tbl => p_Header_price_Att_tbl
, p_old_Header_Price_Att_tbl => p_old_Header_Price_Att_tbl
, p_Header_Adj_Att_tbl => p_Header_Adj_Att_tbl
, p_old_Header_Adj_Att_tbl => p_old_Header_Adj_Att_tbl
, p_Header_Adj_Assoc_tbl => p_Header_Adj_Assoc_tbl
, p_old_Header_Adj_Assoc_tbl => p_old_Header_Adj_Assoc_tbl
, p_Header_Scredit_tbl => p_Header_Scredit_tbl
, p_old_Header_Scredit_tbl => p_old_Header_Scredit_tbl
, p_Header_Scredit_val_tbl => p_Header_Scredit_val_tbl
, p_old_Header_Scredit_val_tbl => p_old_Header_Scredit_val_tbl
, p_line_tbl => p_line_tbl
, p_old_line_tbl => p_old_line_tbl
, p_line_val_tbl => p_line_val_tbl
, p_old_line_val_tbl => p_old_line_val_tbl
, p_Line_Adj_tbl => p_Line_Adj_tbl
, p_old_Line_Adj_tbl => p_old_Line_Adj_tbl
, p_Line_Adj_val_tbl => p_Line_Adj_val_tbl
, p_old_Line_Adj_val_tbl => p_old_Line_Adj_val_tbl
, p_Line_price_Att_tbl => p_Line_price_Att_tbl
, p_old_Line_Price_Att_tbl => p_old_Line_Price_Att_tbl
, p_Line_Adj_Att_tbl => p_Line_Adj_Att_tbl
, p_old_Line_Adj_Att_tbl => p_old_Line_Adj_Att_tbl
, p_Line_Adj_Assoc_tbl => p_Line_Adj_Assoc_tbl
, p_old_Line_Adj_Assoc_tbl => p_old_Line_Adj_Assoc_tbl
, p_Line_Scredit_tbl => p_Line_Scredit_tbl
, p_old_Line_Scredit_tbl => p_old_Line_Scredit_tbl
, p_Line_Scredit_val_tbl => p_Line_Scredit_val_tbl
, p_old_Line_Scredit_val_tbl => p_old_Line_Scredit_val_tbl
, p_Lot_Serial_tbl => p_Lot_Serial_tbl
, p_old_Lot_Serial_tbl => p_old_Lot_Serial_tbl
, p_Lot_Serial_val_tbl => p_Lot_Serial_val_tbl
, p_old_Lot_Serial_val_tbl => p_old_Lot_Serial_val_tbl
, p_action_request_tbl => p_action_request_tbl
, x_header_rec => x_header_rec
, x_header_val_rec => x_header_val_rec
, x_Header_Adj_tbl => x_Header_Adj_tbl
, x_Header_Adj_val_tbl => x_Header_Adj_val_tbl
, x_Header_price_Att_tbl => x_Header_price_Att_tbl
, x_Header_Adj_Att_tbl => x_Header_Adj_Att_tbl
, x_Header_Adj_Assoc_tbl => x_Header_Adj_Assoc_tbl
, x_Header_Scredit_tbl => x_Header_Scredit_tbl
, x_Header_Scredit_val_tbl => x_Header_Scredit_val_tbl
, x_line_tbl => x_line_tbl
, x_line_val_tbl => x_line_val_tbl
, x_Line_Adj_tbl => x_Line_Adj_tbl
, x_Line_Adj_val_tbl => x_Line_Adj_val_tbl
, x_Line_price_Att_tbl => x_Line_price_Att_tbl
, x_Line_Adj_Att_tbl => x_Line_Adj_Att_tbl
, x_Line_Adj_Assoc_tbl => x_Line_Adj_Assoc_tbl
, x_Line_Scredit_tbl => x_Line_Scredit_tbl
, x_Line_Scredit_val_tbl => x_Line_Scredit_val_tbl
, x_Lot_Serial_tbl => x_Lot_Serial_tbl
, x_Lot_Serial_val_tbl => x_Lot_Serial_val_tbl
, x_action_request_tbl => x_action_request_tbl
IF (x_return_status = FND_API.G_RET_STS_SUCCESS) THEN
COMMIT;
dbms_output.put_line('Return Status - '|| SUBSTR (x_return_status,1,255));
dbms_output.put_line('------------------------------------');
dbms_output.put_line('Order Number ==== '|| x_header_rec.order_number);
dbms_output.put_line('------------------------------------');
arg_out_x_return_status := x_return_status;
arg_out_order_number := x_header_rec.order_number;
arg_out_header_id := p_header_rec.header_id;
arg_out_flow_status_code := p_header_rec.flow_status_code;
ELSE
dbms_output.put_line('Return Status = '|| SUBSTR (x_return_status,1,255));
dbms_output.put_line('Msg Count = '|| TO_CHAR(x_msg_count));
dbms_output.put_line('Msg Data = '|| SUBSTR (x_msg_data,1,255));
IF x_msg_count >1 THEN
FOR I IN 1..x_msg_count LOOP
Oe_Msg_Pub.get(
p_msg_index => i
,p_encoded => Fnd_Api.G_FALSE
,p_data => v_msg_data
,p_msg_index_out => v_msg_index_out
DBMS_OUTPUT.PUT_LINE('v_msg_index_out '|| v_msg_index_out);
DBMS_OUTPUT.PUT_LINE('v_msg_data '|| v_msg_data);
END LOOP;
END IF;
END IF;
END;
/ -
Error in Receiver Soap Adapter for Google API
Hi,
I am working on HTTP-XI-Soap scenario which on the receiver side calls google API for spell check.
I get the following error : <b>No Deserializer found to deserialize a ':key' using encoding style 'http://schemas.xmlsoap.org/soap/encoding/'.</b>
However if I try calling the webservice individually using SOAP Client it works fine and do get desired response.The soap message that is sent by the client to the target URL is :
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:urn="urn:GoogleSearch" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
<urn:doSpellingSuggestion soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<key xsi:type="xsd:string">qXWD4x1QFHIo/dePqlYOLwT7kMmkv80E</key>
<phrase <b>xsi:type="xsd:string"</b>>Bratney</phrase>
</urn:doSpellingSuggestion>
</soapenv:Body>
</soapenv:Envelope>
However if i remove the "xsi:type="xsd:string" part from the element 'phrase' and 'key' it returns the same error as it does while using with XI.
Hence I am assuming that that the outgoing soap message elements need to have the above highlighed attribute.
Now I want to have this attribute(xsi:type="xsd:string) in the soap message that is sent from XI.
My question is , Is there any setting using which I can add the attributes in the above form to the outgoing message from XI.I do not want to use a adapter Module.
Thanks & Regards,
SidharthHi Sidharth,
You post here the soap message that is sent by the client to the target URL, but did you look to the soap message that is sent by XI?
Try the AF monitor http://<host>:<j2ee-port>//MessagingSystem/monitor/monitor.jsp?
Because XI soap adapter doesn't support all tags of wsdl rpc-based, we need to adjust them...
Look to the SOAP FAQ (SAP note number 856597) under question "Can I convert an RPC styled WSDL to a document styled WSDL?"... Look at last but one paragraph ;o)
So, you need to change this attribute to one that it is compatible...
Go to http://service.sap.com/xi > Media Library > Documentation and there you will find this xls document -> SAP XI 3.0 (SP11) - Supported XML Schema and WSDL (EN) in this document you have all the compatible elements of wsdl for XI.
One more thing, you can adjust your soap request and change or add the required tags You can do it with xslt-mapping or create your won data types in XI without import the WSDL generated by google.
Hope it helps,
Ricardo.
Message was edited by: Ricardo Quintino -
Oracle Projects not totaling properly after adjusts have been made 11i 11.5.10
Hi Guru,
The our Oracle Projects group is in the process of cleaning up CIP balances on Projects which are left after the Project has been interfaced once to Fixed Assets. We are using the ADJUST function to clear the balances and this is working well for STATE 1 and STATE 2, but it is not working very well for STATE 3 projects. We have 6 Projects in STATE 3 which when the adjust was done, the correct amount was passed to FA but the CIP/interfaced CIP totals on the Capital screen are incorrect. A method is needed to correct the Capital CIP balance.This is a very common issue.
One way to avoid this is as follows
1) Define a new item status called "Uncosted"
2) On the Item status screen (Inventory > setup > item > status code), make Uncosted item status NON-transactable.
3) Define a process where the item status changes from Uncosted to Active only after the item cost is entered. This can be done via a manual process or by a custom program that uses Item api to change the status.
Hope this helps,
Sandeep Gandhi -
API for reading/updating Lightroom metadata
I've tried looking for documentation, and I can't find it, so...
Is there an officially sanctioned mechanism for third party applications to read and edit Lightroom metadata? In particular, the keywords that have been assigned?
My use case is as follows. I pull photos in to Lightroom, edit, adjust, add metadata, and so on. Then, for some of them, I export them to Flickr, using the Flickr Uploadr tool.
Sometimes, based on comments on the photos, I may want to edit the metadata. I can do this, but I need to edit it in both places, Lightroom and Flickr.
Flickr publishes an API for rummaging through photos, extracting metadata, and so on. So what I'd like to do is develop a tool that periodically looks at my photos on Flickr, compares the keywords it finds there with the keywords in Lightroom, and synchronises them. The Flickr side of that is fairly easy, but the Lightroom side doesn't appear to be documented.Hi Birla,
try this:
IResource res = ResourceFactory.getInstance().getResource(path,context);
IPropertyName propName = new PropertyName("http://ars.com/xmlns/cm","Region");
java.util.List values = new List();
values.add("Asia");
values.add("America");
values.add("Muenster, Germany");
IProperty property = new Property(propName, PropertyType.STRING, values);
res.setProperty(property);
Best regards,
Michael -
API/package/procedure/function for updating physical attributes in Org/Mast
I need some kind of procedure or function for updating the weight, volume, and dimensions in the organization and master items forms. We have almost 350,000 items and I want to update them in batch. Is there an API of some kind for this? I would do a simple update but I want to make sure there's no additional logic necessary (other tables that are updated during the process of updating those fields, etc).
Thanks!here is for API's you need to check...
You can use Decimal & UOM Quantity API
These APIs are used to handle item decimal quantities:
Convert from one UOM to another
Validate quantities at input time
Validate quantities at display/output time
Quantity Comparison
Get UOM information
For your convenience, I am giving you the API as below:
/*===========================================================================+
| Copyright (c) 1999 Oracle Corporation |
| Redwood Shores, California, USA |
| All rights reserved. |
+===========================================================================*/
/*-----------------------------------------------------------------------+
|This package contains procedures relevent to item decimal quantity |
|processing. This package contains routines to: |
|(1)validate item quantities based on UOM and decimal precision rules |
|(2)validate whether the UOM controls and decimal precision rules |
| themselves are correct based on functionality planned. For reviewing|
| UOM and decimal quantity functional design details, please visit the|
| following URL: |
| "http//apps-us.oracle.com/inv/development/designs_120/ |
| decimal_precision/decimal_precision.html" |
|But here are a few basics to give background context: |
| |
| "Item Quantity" -- The item's quantity is described by the item |
| identifier, the unit of measure (e.g. grams, kilos, etc), and a |
| number value to indicate the amount in that unit of measure. |
| |
| "Unit of Measure" -- Units of measure belong to unit of measure |
| classes(e.g. weight, volume, length, etc). Each unit of measure class|
| has actual units of measure that belong to that class (e.g. the |
| weight class may have units of measures like, "grams", "kilos", etc).|
| |
| "UOM Conversion" --Users can set up conversion rates between UOMs in |
| them same UOM class, by defining conversions to the base UOM. These |
| are standard conversions. Item-level intra-class conversions may also|
| be defined. When doing intra-class conversions, item-level |
| intra-class conversions are used first if defined, and then standard |
| conversions are used. |
| Users can define inter-class conversions. Inter-class Conversions may|
| also be defined at the lot/sublot levels. For inter-class conversions|
| sublot, lot, and then item inter-class conversions will be used in |
| in order. If lot-lvel conversion is not defined, then item-level |
| conversion is used. A strict hierarchy is imposed. |
| |
| "TU" -- Trasactable Unit.A UOM may have a TU. This implies |
| that when transacting in this UOM, any item's quantities will be |
| forced to be integer multiples of this TU quantity. The TU may also |
| be declared at the item level. The TU quantity at the item level may |
| be different from the UOM level TU, and if defined, item level TU |
| takes precedance. |
| |
| "Decimal Precision"--Users have a choice of setting decimal precision|
| at the base UOM for each UOM class. All other UOMs in that class get |
| get their decimal precisions derived from the base UOM decimal |
| precision, the converison rate, and TUs, if they are |
| being used. |
| |
| |
| "Conversion Rate Tolerance" -- This is a tolerance that may be set |
| when conversion rate cannot be not strictly fixed. Example: |
| 1 Chicken = 2 pounds (plus or minus 0.7 pounds). This 0.7 pounds is |
| the conversion rate tolerance. Conversion rate tolerance is only |
| definable at inter-class UOM conversions, at item or lot/sublot level|
| |
| History |
| 04/08/99 Mansoor Jafri Created Package Spec |
| 04/26/99 Mansoor Jafri Updated with TU at 3 levels as |
| opposed to MTU at 2 and atomic at|
| UOM class level. |
| 04/29/99 Mansoor Jafri Updated document with lot/sublot |
| conversions. Also, removed |
| "atomic" as a separate control, |
| since this can |
| implemented as a TU at base UOM |
| level with an integer quantity. |
| 05/03/99 Mansoor Jafri Updated the package with sublot |
| level control. Also, changed name|
| of DTU to TU, so that it fits |
| better in the "process" market. |
| Also, conformed to BOI API stds. |
+-----------------------------------------------------------------------*/
SET VERIFY OFF
WHENEVER SQLERROR EXIT FAILURE ROLLBACK;
CREATE OR REPLACE PACKAGE inv_decimals_pub AS
/* $Header: INVDECPS.pls 118.3 99/05/03 18:12:27 mjafri noship $ */
/*--------------------------------------------------------------------------+
|Procedure validate_compare_quantities(..)
|Returns the quantity converted from the first UOM in the second UOM.
|If quantities in 2 UOMs are already available, then this procedure will
|compare and validate these quantities based on conversion rates
|and UOM and decimal qty controls. This procedure may be used to validate
|scenarios where quatities are entered in dual UOMs. We want to make sure
|quantities are valid based on conversion, TUs, and conversion
|rate tolerances.
|
|Procedure validate_and_compare(
|p_api_version_number IN NUMBER, -- version # of API
|p_init_msg_list IN VARCHAR2, -- whether to initialize list
|p_inventory_item_id IN NUMBER, -- inventory_item_id
|p_organization_id IN NUMBER, -- organization_id
|p_lot_control_code IN NUMBER, -- item's lot control code
|p_lot_number IN VARCHAR2, -- lot number
|p_sub_lot_control_code IN NUMBER, --sub lot control code
|p_sublot_number IN VARCHAR2, -- sublot number
|p_from_quantity IN NUMBER, -- qty in first UOM
|p_from_uom_code IN VARCHAR2, -- UOM of fisrt qty
|p_to_uom_code IN VARCHAR2, -- UOM of second qty
|p_to_quantity_to_check IN NUMBER, -- qty in second UOM
|x_resultant_to_quantity OUT NUMBER, -- calculated qty in second UOM
|x_comparison OUT NUMBER,--Possible values are 1,0,-1,-99
|x_msg_count OUT NUMBER, -- number of messages
|x_msg_data OUT VARCHAR2, -- populated,if msg count = 1
|x_return_status OUT VARCHAR2) -- return status
|
|Note: The comparisons are done in base UOM
| of the UOM class to which the first UOM belongs. x_comparison returns:
|-1 if from_quantity is less than to_quantity (A < B)
| 0 if from_quantity is equal to to_quantity (A = B)
| 1 if from_quantity is greater than to_quantity (A > B)
| -99 if the validations for the first/second quantity failed
| If the UOMs belong to different classes, then users can specify whether
| they want to use the effective interclass UOM conversion tolerance, say, T.
| CASE: p_use_interclass_tolerance = 1
| ------
| Q1 > Q2 if (Q1 - Q2) >= T
| Q1 = Q2 if ABS(Q1 - Q2) < T
| Q1 < Q2 if (Q1 - Q2 ) <= -T
|
|The output variable x_resultant_to_quantity will contain the converted
|quantity
|in the second UOM, using effective conversion rates.
|Usage: In a dual UOM scenario, this api will confirm whether quantities in
|the two UOMs are equal or not, based on x_comparison output variable.
+--------------------------------------------------------------------------*/
Procedure validate_compare_quantities(
p_api_version_number IN NUMBER,
p_init_msg_list IN VARCHAR2,
p_inventory_item_id IN NUMBER,
p_organization_id IN NUMBER,
p_lot_control_code IN NUMBER,
p_lot_number IN VARCHAR2,
p_sub_lot_control_code IN NUMBER,
p_sublot_number IN VARCHAR2,
p_from_quantity IN NUMBER,
p_from_uom_code IN VARCHAR2,
p_to_uom_code IN VARCHAR2,
p_to_quantity_to_check IN NUMBER,
x_resultant_to_quantity OUT NUMBER,
x_valid_conversion OUT NUMBER,
x_msg_count OUT NUMBER,
x_msg_data OUT VARCHAR2,
x_return_status OUT VARCHAR2);
/*--------------------------------------------------------------------------+
|Function convert_UOM(..) return NUMBER ;
|Returns the quantity converted from the first unit into the second unit.
|If conversion is not possible, return status is failure.
|Function convert(
|p_api_version_number IN NUMBER,
|p_init_msg_list IN VARCHAR2, -- whether to initialize list
|p_inventory_item_id IN NUMBER, -- inventory_item_id
|p_organization_id IN NUMBER, -- organization_id
|p_lot_control_code IN NUMBER, -- item's lot control code
|p_lot_number IN VARCHAR2, -- lot number
|p_sub_lot_control_code IN NUMBER,
|p_sublot_number IN VARCHAR2,
|p_from_quantity IN NUMBER, -- qty in first UOM
|p_from_uom_code IN VARCHAR2, -- UOM of fisrt qty
|p_to_uom_code IN VARCHAR2, -- UOM of second qty
|x_msg_count OUT NUMBER,
|x_msg_data OUT VARCHAR2,
|x_return_status OUT VARCHAR2)
| return NUMBER ;
|If there is an error, then -99 is returned.
|1) From_quantity must be an absolute value.
|2) From_quantity will be truncated to decimal precision in the from UOM, then
| converted to base UOM in the class,
|3) Then converted to base UOM of the
| to_UOM class,
|4) Then converted to the quantity in to_UOM,
|5) Then truncated to decimal precision of the to_UOM.
+--------------------------------------------------------------------------*/
Function convert_UOM(
p_api_version_number IN NUMBER,
p_init_msg_list IN VARCHAR2 := fnd_api.g_false,
p_inventory_item_id IN NUMBER,
p_organization_id IN NUMBER,
p_lot_control_code IN NUMBER,
p_lot_number IN VARCHAR2,
p_sub_lot_control_code IN NUMBER,
p_sublot_number IN VARCHAR2,
p_from_quantity IN NUMBER,
p_from_uom_code IN VARCHAR2,
p_to_uom_code IN VARCHAR2,
x_msg_count OUT NUMBER,
x_msg_data OUT VARCHAR2,
x_return_status OUT VARCHAR2) return NUMBER ;
/*--------------------------------------------------------------------------+
| get_uom_properties(..)
| This procedure is used to interrogate the UOM.
| It returns:
| (1) decimal precision at the UOM level
| (2) TU, if defined, at the UOM level
| (3) Atomicity, if defined for the class that this UOM belongs to
| If some of the controls are not defined, null values are returned.
| if the UOM is not found, the return status indicates this.
| Procedure get_uom_properties(
| p_api_version_number IN NUMBER,
| p_init_msg_list IN VARCHAR2,
| p_uom_code IN VARCHAR2,
| x_decimal_precision OUT NUMBER,
| x_uom_TU OUT NUMBER,
| x_uom_class OUT VARCHAR2,
| x_msg_count OUT NUMBER,
| x_msg_data OUT VARCHAR2,
| x_return_status OUT VARCAHR2);
+--------------------------------------------------------------------------*/
Procedure get_uom_properties(
p_api_version_number IN NUMBER,
p_init_msg_list IN VARCHAR2 := fnd_api.g_false,
p_uom_code IN VARCHAR2,
x_decimal_precision OUT NUMBER,
x_uom_TU OUT NUMBER,
x_uom_class OUT VARCHAR2,
x_msg_count OUT NUMBER,
x_msg_data OUT VARCHAR2,
x_return_status OUT VARCAHR2);
/*-------------------------------------------------------------------------+
| get_item_uom_properties(..)
| This procedure returns a specific item's primary UOM, TU, and tolerance
| Procedure get_item_uom_properties(
| p_api_version_number IN NUMBER,
| p_init_msg_list IN VARCHAR2,
| p_inventory_item_id IN NUMBER,
| p_organization_id IN NUMBER,
| p_lot_control_code IN NUMBER, -- item's lot control code
| p_lot_number IN VARCHAR2,
| p_sub_lot_control_code IN NUMBER,
| p_sublot_number IN VARCHAR2,
| x_primary_uom_code OUT VARCHAR2,
| x_uom_class OUT VARCHAR2,
| x_decimal_precision OUT NUMBER,
| x_item_TU OUT NUMBER,
| x_uom_TU OUT NUMBER,
| x_effective_TU OUT NUMBER,
| x_msg_count OUT NUMBER,
| x_msg_data OUT VARCHAR2,
| x_return_status OUT VARCHAR2 );
| If the item is not a valid one, then this is reflected through the
| return status.
+-------------------------------------------------------------------------*/
Procedure get_item_uom_properties(
p_api_version_number IN NUMBER,
p_init_msg_list IN VARCHAR2 := fnd_api.g_false,
p_inventory_item_id IN NUMBER,
p_organization_id IN NUMBER,
p_lot_control_code IN NUMBER,
p_lot_number IN VARCHAR2,
p_sub_lot_control_code IN NUMBER,
p_sublot_number IN VARCHAR2,
x_primary_uom_code OUT VARCHAR2,
x_uom_class OUT VARCHAR2,
x_decimal_precision OUT NUMBER,
x_item_TU OUT NUMBER,
x_class_TU OUT NUMBER,
x_uom_TU OUT NUMBER,
x_effective_TU OUT NUMBER,
x_msg_count OUT NUMBER,
x_msg_data OUT VARCHAR2,
x_return_status OUT VARCHAR2 );
/*-------------------------------------------------------------------------+
| Procedure compare_quantities(..)
| Procedure compare_quantities(
| p_api_version_number IN NUMBER,
| p_init_msg_list IN VARCHAR2,
| p_inventory_item_id IN NUMBER,
| p_organization_id IN NUMBER,
| p_lot_control_code IN NUMBER,
| p_lot_number IN VARCHAR2,
| p_sub_lot_control_code IN NUMBER,
| p_sublot_number IN VARCHAR2,
| p_fisrt_qauantity IN NUMBER,
| p_first_uom IN VARCHAR2,
| p_second_quantity IN NUMBER,
| p_second_uom IN VARCHAR2,
| p_use_interclass_tolerance IN VARCHAR2, -- Yes = 1, 2 = No
| x_comaprison_result OUT NUMBER,
| x_msg_count OUT NUMBER,
| x_msg_data OUT VARCHAR2,
| x_return_status OUT VARCHAR2);
|
| This procedure compares the quantities A and B and returns result in the
| output variable x_comparison_result. The comparisons are done in base UOM
| of the UOM class to which the first UOM belongs:
|-1 if quantity A is less than quantity B (A < B)
| 0 if quantity A is equal to quantity B (A = B)
| 1 if quantity A is greater than quantity B (A > B)
| If the UOMs belong to different classes, then users can specify whether
| they want to use interclass UOM conversion tolerance, say, T.
| CASE: p_use_interclass_tolerance = 1
| ------
| Q1 > Q2 if (Q1 - Q2) >= T
| Q1 = Q2 if ABS(Q1 - Q2) < T
| Q1 < Q2 if (Q1 - Q2 ) <= -T
+------------------------------------------------------------------------*/
Procedure compare_quantities(
p_api_version_number IN NUMBER,
p_init_msg_list IN VARCHAR2 := fnd_api.g_false,
p_inventory_item_id IN NUMBER,
p_organization_id IN NUMBER,
p_lot_control_code IN NUMBER,
p_lot_number IN VARCAHR2,
p_sub_lot_control_code IN NUMBER,
p_sublot_number IN VARCHAR2,
p_fisrt_qauantity IN NUMBER,
p_first_uom IN VARCHAR2,
p_second_quantity IN NUMBER,
p_second_uom IN VARCHAR2,
p_use_interclass_tolerance IN VARCHAR2,
x_comaprison_result OUT NUMBER,
x_msg_count OUT NUMBER,
x_msg_data OUT VARCHAR2,
x_return_status OUT VARCHAR2);
/*-----------------------------------------------------------------------+
| Procedure Validate_Quantity(
| p_api_version_number IN NUMBER,
| p_init_msg_list IN VARCHAR2,
| p_inventory_item_id IN NUMBER,
| p_organization_id IN NUMBER,
| p_lot_control_code IN NUMBER,
| p_lot_number IN VARCHAR2,
| p_sub_lot_control_code IN NUMBER,
| p_sublot_number IN VARCHAR2,
| p_input_quantity IN NUMBER,
| p_UOM_code IN VARCHAR2,
| x_msg_count OUT NUMBER,
| x_msg_data OUT VARCHAR2,
| x_return_status OUT VARCHAR2);
|
| Validates and returns the quantity in this manner (the caller does not need
| to adjust the result):
| 0. Truncate to and validate decimal precision
| 1. Validate quantity with respect to TU controls.
+-------------------------------------------------------------------------*/
Procedure Validate_Quantity(
p_api_version_number IN NUMBER,
p_init_msg_list IN VARCHAR2 := fnd_api.g_false,
p_inventory_item_id IN NUMBER,
p_organization_id IN NUMBER,
p_lot_control_code IN NUMBER,
p_lot_number IN VARCAHR2,
p_sub_lot_control_code IN NUMBER,
p_sublot_number IN VARCHAR2,
p_input_quantity IN NUMBER,
p_UOM_code IN VARCHAR2,
x_msg_count OUT NUMBER,
x_msg_data OUT VARCHAR2,
x_return_status OUT VARCHAR2);
/*------------------------------------------------------------------------+
| Function Truncate_Quantity(
| p_api_version_number IN NUMBER,
| p_init_msg_list IN VARCHAR2,
| p_inventory_item_id IN NUMBER,
| p_organization_id IN NUMBER,
| p_lot_control_code IN NUMBER,
| p_lot_number IN VARCHAR2,
| p_sub_lot_control_code IN NUMBER,
| p_sublot_number IN VARCHAR2,
| p_input_quantity IN NUMBER,
| p_UOM_code IN VARCHAR2,
| x_msg_count OUT NUMBER,
| x_msg_data OUT VARCHAR2,
| x_return_status OUT VARCHAR2) return NUMBER;
|
| Truncates the quantity to decimal precision of the UOM.
| In case of error conditions, -99 is returned.
+------------------------------------------------------------------------*/
Function Truncate_Quantity(
p_api_version_number IN NUMBER,
p_init_msg_list IN VARCHAR2 := fnd_api.g_false,
p_inventory_item_id IN NUMBER,
p_organization_id IN NUMBER,
p_lot_control_code IN NUMBER,
p_lot_number IN VARCHAR2,
p_sub_lot_control_code IN NUMBER,
p_sublot_number IN VARCHAR2,
p_input_quantity IN NUMBER,
p_UOM_code IN VARCHAR2,
x_msg_count OUT NUMBER,
x_msg_data OUT VARCHAR2,
x_return_status OUT VARCHAR2) return NUMBER;
* show errors package INV_DECIMALS_PUB
* SELECT to_date('SQLERROR') FROM user_errors
* WHERE name = 'INV_DECIMALS_PUB'
* AND type = 'PACKAGE';
commit;
exit;
Maybe you are looking for
-
Linking to a library through code
Is it possible to link an icon to a library through code? I need to make up heaps of audio libraries and I've managed to import the audio files into an authorware piece but now I need to put these into a library. I can do this manually by dragging an
-
FFT express VI: maximum possible clock speed
I'm using the FFT express VI in an FPGA VI running on a PXIe-7962R. The maximum clock speed I can use without getting timing errors on compilation is 125 MHz. Is this about right for this VI? I see that the Xilinx LogiCORE FFT has much faster max.
-
Firefox continually opens tabs about latest updated add-ons
Every time I open/start Firefox, in addition to my previously opened tabs (if any), it opens (or has started opening) an additional... 4-7 tabs... https://www.mozilla.org/en-US/firefox/33.1/whatsnew/?oldversion=31.0 http://update.downloadhelper.net/i
-
Can't get "true" height of text box (text object) in Photoshop CS4-CS6 on Mac
I'm seeing this behavior in CS4, CS5 and CS6 on the Mac using AppleScript. When I get the height of a text object layer as such: tell app "Adobe Photoshop CS4" tell current document set textObjectHeight to height of text
-
Hi, I understand that the default and recommended transport route is DEV -> QA -> PRD. Most of our transports are created in DEV and subsequently transported to QA and then PRD. However, we have a scenario whereby we also need to create some transpo