Wednesday, October 12, 2011

The invoice is not processed by revenue recognition but there is a REV row with account set flag = Y with the same ccid as the model row.

Visit the Below Website to access unlimited exam questions for all IT vendors and Get Oracle Certifications for FREE
http://www.free-online-exams.com

Problem: The invoice is not processed by revenue recognition but there is a REV row with account set flag = Y with the same ccid as the model row.

On 11.5.10.2 Invoice 1559 fails with
while trying to incomplete:

ORA-01403: no data found
ORA-06512: at "APPS.ARP_PROCESS_HEADER_POST_COMMIT", line 896
ORA-06512: at "APPS.ARP_PROCESS_HEADER", line 1793






Symptoms:

debug shows:

update_header_cover: p_customer_trx_id = 152667
update_header_cover: p_trx_number = 1559


arp_ctlgd_pkg.delete_f_ct_id()-
arp_lgd_pkg.set_to_dummy()+
arp_lgd_pkg.set_to_dummy()-
arp_ctlgd_pkg.update_f_ct_id()+ 11:34:47
arp_ctlgd_pkg.generic_update()+
arp_ctlgd_pkg.bind_dist_variables()+
arp_ctlgd_pkg.bind_dist_variables()-
0 rows updated
EXCEPTION: arp_ctlgd_pkg.generic_update()
Error at character: 0
EXCEPTION: arp_ctlgd_pkg.update_f_ct_id()
arp_process_header.reverse_revrec_effect: no dists to update.
arp_trx_util.set_term_in_use_flag()+
arp_trx_util.set_term_in_use_flag()-
l_status1 =
l_status2 =
l_status3 =
arp_process_header.update_header()-
arp_process_header_updte_cover.update_header_cover()-
arp_process_header.post_commit()+
ARP_TRX_VALIDATE.ar_entity_version_check()+
ARP_TRX_VALIDATE.ar_entity_version_check()-
EXCEPTION: arp_process_header.post_commit()



Solution:



There is an additional REV row in table ra_cust_trx_line_gl_dist_all that should not exist.

Apply a datafix to remove this additional row.
run the following datafix to get this invoice corrected:


1) Create backup table:

create table dist_152667
as
select * from ra_cust_trx_line_gl_dist_all
where customer_trx_id = 152667;

2) Check backup table

select count(*) from dist_152667;
-- this must return 4 rows

3) Run datafix:

exec dbms_application_info.set_client_info(101)
exec arp_global.g_allow_datafix := TRUE;

update ra_cust_trx_line_gl_dist
set account_set_flag='Y'
where cust_trx_line_gl_dist_id = 201466
and posting_control_id=-3;
-- 1 row must be updated

delete from ra_cust_trx_line_gl_dist
where cust_trx_line_gl_dist_id = 201481
and posting_control_id=-3;
-- 1 row must be deleted

exec arp_global.g_allow_datafix := FALSE;

4) Issue commit; only if the number of records updated and deleted is fine!.

After this query the invoice and try to incomplete the invoice.

References:


Note 398834.1.
Get Oracle Certifications for all Exams
Free Online Exams.com

No comments: