AR - 收款核销与取消核销 【标准API】

收款核销API:  ar_receipt_api_pub.apply

以下示例代码仅供学习参考:

declare
  
    l_org_id          number;
    l_cash_receipt_id number;
    l_customer_trx_id number;
    l_apply_gl_date   date;
    l_apply_amount    number;
    l_return_status   varchar2(10);
    l_msg_count       number;
    l_msg_data        varchar2(1000);
    l_rowid           varchar2(30);
    l_count           number;
  
  begin
   

      l_org_id          := rpt_ap.org_id;
      l_cash_receipt_id := rpt_ap.cash_receipt_id;
      l_customer_trx_id := rpt_ap.customer_trx_id;
      l_apply_gl_date   := rpt_ap.gl_date;
      l_apply_amount    := rpt_ap.app_amount;
      l_rowid           := rpt_ap.rowid;

      fnd_global.apps_initialize(user_id      => 1322, -- 1
                               resp_id      => 50559, -- 2
                               resp_appl_id => 222);
							   
      mo_global.set_policy_context('S', l_org_id);
      ---- 调用标准API开始核销操作
      ar_receipt_api_pub.apply(p_api_version      => 1.0,
                               p_init_msg_list    => fnd_api.g_true,
                               p_commit           => fnd_api.g_true,
                               p_validation_level => fnd_api.g_valid_level_full,
                               x_return_status    => l_return_status,
                               x_msg_count        => l_msg_count,
                               x_msg_data         => l_msg_data,
                               p_cash_receipt_id  => l_cash_receipt_id,
                               p_customer_trx_id  => l_customer_trx_id,
                               p_amount_applied   => l_apply_amount,
                               p_apply_date       => sysdate,
                               p_apply_gl_date    => l_apply_gl_date);
    

  
  end ;

收款取消核销API:  ar_receipt_api_pub.unapply

示例代码如下,仅供学习参考

declare
    l_cash_receipt_id number;
    l_customer_trx_id number;
    l_org_id          number;
    l_rowid           varchar2(30);
  
    l_count         number := 0;
    l_return_status varchar2(20);
    l_msg_count     number;
    l_msg_data      varchar2(1000);
  begin

      l_cash_receipt_id := rpt_up.cash_receipt_id;
      l_customer_trx_id := rpt_up.customer_trx_id;
      l_org_id          := rpt_up.org_id;
      l_rowid           := rpt_up.rowid;
    
      ---- 验证数据安全性
      select count(1)
        into l_count
        from ar_receivable_applications_all araa
       where araa.cash_receipt_id = l_cash_receipt_id
         and araa.applied_customer_trx_id = l_customer_trx_id
         and araa.org_id = l_org_id;
    
      if l_count < 1 then
        l_return_status := 'E';
        l_msg_data      := l_cash_receipt_id || '没有与' || l_customer_trx_id || '核销';
        raise fnd_api.g_exc_error;
      end if;
    
      ---- 初始化
      mo_global.set_policy_context('S', l_org_id);
      ---- 调用标准API开始取消核销
      ar_receipt_api_pub.unapply(p_api_version      => 1.0,
                                 p_init_msg_list    => fnd_api.g_true,
                                 p_commit           => fnd_api.g_true,
                                 p_validation_level => fnd_api.g_valid_level_full,
                                 x_return_status    => l_return_status,
                                 x_msg_count        => l_msg_count,
                                 x_msg_data         => l_msg_data,
                                 p_reversal_gl_date => p_gl_date,
                                 p_cash_receipt_id  => l_cash_receipt_id,
                                 p_customer_trx_id  => l_customer_trx_id,
                                 p_org_id           => l_org_id);

  end ;

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值