EBS 批次付款的问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了EBS 批次付款的问题相关的知识,希望对你有一定的参考价值。

详细情况如下:
在一个invoicebatch 里面创建4笔发票:
1。 type:标准的 amount:3000 supplier:A
2。type:标准 amount:2000 supplier:B
3。type:credit amount:-1500 supplier:B
4。type:credit amoint:-1000 supplier:c

在批次付款的时候,根据条件我只能选出前三笔发票,而第四笔发票怎么也选不出来不能付款,请指教。
需要说明的是第四笔发票供应商是没问题的,因为标准的是可以选出数据的。第二笔与第三笔金额总和为正所以也是可以付款的。

请问,这个check金额是负数的能在批次里面付款吗?还是说只能在form的界面付款?如果可以批次付款,请问如何设置?

谢谢

你匹配发票时,先匹配第3 第4笔负字发票,然后再配第一二笔追问

批次付款的时候是你设定某些条件,选出选出符合条件的一些invoice,比如说你输入invoicebatch name,他就会把这个发票批里面的发票全部选出来,所以是根本没有什么先匹配什么后匹配什么的。

参考技术A 检查一下第四笔的供应商币别...追问

第四笔供应商币种是没有问题的,以为我做表type为标准的发票是可以选出来的。谢谢回答

ORACLE EBS 物料事务处理开发接口案例 - 其物料启用了序列和批次

DECLARE
    l_iface_rec        inv.mtl_transactions_interface% ROWTYPE;
    l_iface_lot_rec    inv.mtl_transaction_lots_interface%ROWTYPE ;
    l_iface_serial_rec inv.mtl_serial_numbers_interface%ROWTYPE ;
    l_cur_mfg_org_id   NUMBER := fnd_global.org_id ; --Current Inv Organization
    l_user_id          NUMBER := fnd_global.user_id; --User ID, Sysadmin here
    l_serial_seq_id    NUMBER;
    l_product_id       NUMBER;
    l_return_count     NUMBER;
    x_trans_count      NUMBER;
    x_return_status    VARCHAR2(100 );
    x_msg_count        NUMBER;
    x_msg_data         VARCHAR2(2000 );
BEGIN
    fnd_global.apps_initialize(user_id      => fnd_global.user_id
                              ,resp_id      => fnd_global.resp_id 
                              ,resp_appl_id => fnd_global.resp_appl_id);
    l_iface_rec.last_update_date  := SYSDATE;
    l_iface_rec.last_updated_by   := fnd_global.user_id;
    l_iface_rec.creation_date     := SYSDATE;
    l_iface_rec.created_by        := fnd_global.user_id;
    l_iface_rec.last_update_login := fnd_global.last_update_login ;
    
    SELECT mtl_material_transactions_s.nextval
    INTO   l_iface_rec.transaction_interface_id
    FROM   dual;
    l_iface_rec.transaction_header_id := l_iface_rec.transaction_interface_id;
    l_iface_rec.transaction_mode      := 3;
    l_iface_rec.process_flag          := 1;
    l_iface_rec.transaction_type_id   := 42; --mtl_transaction_types   42->杂项接受 32-> 杂项发放
    l_iface_rec.organization_id       := l_cur_mfg_org_id;
    l_iface_rec.inventory_item_id     := 309978;
    l_iface_rec.subinventory_code     := 'RPK';
    l_iface_rec.locator_id            := 3877;
    l_iface_rec.transfer_locator      := 3900;
    l_iface_rec.transfer_organization := l_cur_mfg_org_id;
    l_iface_rec.transfer_subinventory := '11204';
    l_iface_rec.transaction_quantity  := 3;
    l_iface_rec.transaction_uom       := 'Ea';
    l_iface_rec.transaction_date      := SYSDATE;
    l_iface_rec.source_code           := 'Test Miscellaneous receipt API';
    l_iface_rec.source_header_id      := l_iface_rec.transaction_interface_id;
    l_iface_rec.source_line_id        := l_iface_rec.transaction_interface_id;
    
    INSERT INTO inv.mtl_transactions_interface
    VALUES l_iface_rec;

    --第一批
    l_serial_seq_id                          := mtl_material_transactions_s.nextval;
    l_iface_lot_rec.last_update_date         := SYSDATE;
    l_iface_lot_rec.last_updated_by          := l_user_id;
    l_iface_lot_rec.creation_date            := SYSDATE;
    l_iface_lot_rec.created_by               := l_user_id;
    l_iface_lot_rec.last_update_login        := - 1;
    l_iface_lot_rec.lot_number               := 'A112';
    l_iface_lot_rec.transaction_interface_id := l_iface_rec.transaction_interface_id;
    l_iface_lot_rec.transaction_quantity     := 2;
    l_iface_lot_rec.product_transaction_id   := l_iface_rec.transaction_interface_id;
    --启用虚列时必输,否则不能给值
    l_iface_lot_rec.serial_transaction_temp_id := l_serial_seq_id;
    
    INSERT INTO inv.mtl_transaction_lots_interface
    VALUES l_iface_lot_rec;
    
    l_iface_serial_rec.last_update_date         := SYSDATE;
    l_iface_serial_rec.last_updated_by          := l_user_id;
    l_iface_serial_rec.creation_date            := SYSDATE;
    l_iface_serial_rec.created_by               := l_user_id;
    l_iface_serial_rec.last_update_login        := - 1;
    l_iface_serial_rec.fm_serial_number         := '10012';
    l_iface_serial_rec.to_serial_number         := '10013';
    l_iface_serial_rec.transaction_interface_id := l_serial_seq_id;
    
    INSERT INTO inv.mtl_serial_numbers_interface
    VALUES l_iface_serial_rec;

    ---第二批
    l_serial_seq_id                          := mtl_material_transactions_s.nextval;
    l_iface_lot_rec.last_update_date         := SYSDATE;
    l_iface_lot_rec.last_updated_by          := l_user_id;
    l_iface_lot_rec.creation_date            := SYSDATE;
    l_iface_lot_rec.created_by               := l_user_id;
    l_iface_lot_rec.last_update_login        := - 1;
    l_iface_lot_rec.lot_number               := 'A112';
    l_iface_lot_rec.transaction_interface_id := l_iface_rec.transaction_interface_id;
    l_iface_lot_rec.transaction_quantity     := 1;
    l_iface_lot_rec.product_transaction_id   := l_iface_rec.transaction_interface_id;
    --启用虚列时必输,否则不能给值
    l_iface_lot_rec.serial_transaction_temp_id := l_serial_seq_id;
    
    INSERT INTO inv.mtl_transaction_lots_interface
    VALUES l_iface_lot_rec;
    
    l_iface_serial_rec.last_update_date         := SYSDATE;
    l_iface_serial_rec.last_updated_by          := l_user_id;
    l_iface_serial_rec.creation_date            := SYSDATE;
    l_iface_serial_rec.created_by               := l_user_id;
    l_iface_serial_rec.last_update_login        := - 1;
    l_iface_serial_rec.fm_serial_number         := '10017';
    l_iface_serial_rec.to_serial_number         := '10017';
    l_iface_serial_rec.transaction_interface_id := l_serial_seq_id;
    
    INSERT INTO inv.mtl_serial_numbers_interface
    VALUES l_iface_serial_rec;
    
    fnd_msg_pub.initialize;
    x_return_status := fnd_api.g_ret_sts_success; --0 to indicate successful processing and value -1 to indicate failure processing
    l_return_count  := inv_txn_manager_pub.process_transactions(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    => x_return_status
                                                               ,x_msg_count        => x_msg_count
                                                               ,x_msg_data         => x_msg_data
                                                               ,x_trans_count      => x_trans_count
                                                               ,p_table            => 1
                                                               , --1==MTI,2==MMTT
                                                                p_header_id        => l_iface_rec.transaction_interface_id);
                                                                
    dbms_output.put_line( 'l_return_count: ' || l_return_count);
    
    IF l_return_count = - 1
       OR x_return_status <> fnd_api.g_ret_sts_success THEN
        FOR a_rec IN ( SELECT mti.transaction_interface_id
                            ,mti.error_code
                            ,mti.error_explanation
                      FROM   mtl_transactions_interface mti
                      WHERE  mti.transaction_header_id = l_iface_rec.transaction_header_id) LOOP
                      
            dbms_output.put_line('transaction_interface_id: ' || a_rec.transaction_interface_id);
            dbms_output.put_line( 'error_code: ' || a_rec.error_code);
            dbms_output.put_line( 'error_explanation: ' || a_rec.error_explanation);
            
        END LOOP;
        ROLLBACK;
    END IF;
END;

以上是关于EBS 批次付款的问题的主要内容,如果未能解决你的问题,请参考以下文章

AP-关于标准发票与预付款核销后,仍然可以被付款的问题

AP-关于标准发票与预付款核销后,仍然可以被付款的问题

Oracle EBS 加锁解锁程序

使用 Magento 中的 EBS 支付网关进行定期支付(EMI)

EBS - INV 接口大全

跟踪付款在 10 分钟内完成