PO接收产生分录

本文介绍如何通过设置Oracle系统的PO_LINE_LOCATIONS_ALL及PO_DISTRIBUTION_ALL表中的ACCRUE_ON_RECEIPT_FLAG字段来控制收货时是否自动生成会计分录,并详细展示了从更新字段到调用API生成分录的整个流程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1,发运行的接收应计(PO_LINE_LOCATIONS_ALL.ACCRUE_ON_RECEIPT_FLAG)控制接收时是否产生分录.
2,分配行的接收应计(PO_DISTRIBUTION_ALL.ACCRUE_ON_RECEIPT_FLAG)控制发票匹配PO时,分配行的科目取PO charge account,还是取暂估科目.
3,强制接收时产生分录:
  3.1,update PO_LINE_LOCATIONS_ALL set ACCRUE_ON_RECEIPT_FLAG='Y' where ...
  3.2,update PO_DISTRIBUTION_ALL set ACCRUE_ON_RECEIPT_FLAG='Y' where ...
  3.3,删除delete from RCV_ACCOUNTING_EVENTS WHERE rcv_transaction_id = 9430(一般情况是RCV_ACCOUNTING_EVENTS有, RCV_RECEIVING_SUB_LEDGER 没有)
  3.4,调用产生分录的API,传入transaction id
    RCV_AccEvents_PVT.Create_DeliverEvents(p_api_version => 1.0,
                                           p_commit             => FND_API.G_TRUE,
                                           x_return_status      => l_return_status,
                                           x_msg_count          => l_msg_count,
                                           x_msg_data           => l_msg_data,
                                           p_rcv_transaction_id => 9430)
1.RCV_AccEvents_PVT.Create_DeliverEvents-->
RCV_SeedEvents_PVT.Seed_RAEEvent
--2. insert RCV_ACCOUNTING_EVENTS
2.RCV_SeedEvents_PVT.Insert_RAEEvents-->
-- Call Account generation API to create accounting entries
-- insert RCV_RECEIVING_SUB_LEDGER
3.RCV_CreateAccounting_PVT.Create_AccountingEntry-->
4.CST_XLA_PVT.Create_RCVXLAEvent-->
XLA_EVENTS_PUB_PKG.create_event
PSA_BC_XLA_PUB.Budgetary_Control
5.xla_accounting_pub_pkg.accounting_program_events
 (p_application_id       => 707
  ,p_accounting_mode      => 'FINAL'
  ,p_gl_posting_flag      => 'Y'
...
-->6.xla_accounting_pkg.accounting_program_events-->
events_processor
xla_balances_pkg.massive_update
xla_transfer_pkg.gl_transfer_main
xla_accounting_pub_pkg.accounting_program_document-->
fnd_request.submit_request(application     => 'XLA'
,program         => 'XLAACCPB'
...
7.xla_accounting_pkg.accounting_program_document-->
 xla_accounting_pkg.accounting_program_events
 
3.5,查看错误信息:xla_accounting_err_pkg.insert_errors;
select * from xla_accounting_errors;
------------------------------
Select aeh.ae_header_id,
       ael.ae_line_num,
       ael.accounting_class_code,
       ael.accounted_dr,
       ael.accounted_cr,
       rt.transaction_id,
       rt.shipment_header_id
  from xla_ae_headers           aeh,
       xla_ae_lines             ael,
       rcv_transactions         rt,
       XLA_DISTRIBUTION_LINKS   xdl,
       rcv_receiving_sub_ledger rrsl
 where aeh.ae_header_id = xdl.ae_header_id
   and aeh.ae_header_id = ael.ae_header_id
   and ael.ae_header_id = xdl.ae_header_id
   and ael.ae_line_num = xdl.ae_line_num
   and xdl.source_distribution_type = 'RCV_RECEIVING_SUB_LEDGER'
   and xdl.SOURCE_DISTRIBUTION_ID_NUM_1 = rrsl.RCV_SUB_LEDGER_ID
   and rrsl.rcv_transaction_id = rt.transaction_id
   and rrsl.set_of_books_id = 2045
   and rt.transaction_id = 14449
/*  and rt.shipment_header_id IN
(SELECT shipment_header_id
   FROM rcv_shipment_headers
  WHERE receipt_num = '&RECEIPT_NUM')*/
 order by rt.transaction_id, ael.ae_header_id, ael.ae_line_num;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值