Saturday, 15 November 2014

Oracle EBS Rel 12 Sub Inventory Transfer

Oracle EBS Release 12 Inventory Module Sub Inventory Transfer Through MTL_TRANSACTIONS_INTERFACE TABLE: 


1. Populate data in mtl_transactions_interface using below mentioned query Sample Data:



INSERT INTO mtl_transactions_interface(
        TRANSACTION_INTERFACE_ID,
        TRANSACTION_HEADER_ID,
        TRANSACTION_DATE ,
        TRANSACTION_UOM ,
        LOCATOR_ID ,
        SUBINVENTORY_CODE,
        INVENTORY_ITEM_ID,
        TRANSACTION_QUANTITY, 
        TRANSACTION_COST ,
        ORGANIZATION_ID ,        
        SOURCE_CODE ,
        SOURCE_LINE_ID,
        SOURCE_HEADER_ID,         
        PROCESS_FLAG ,        
        TRANSACTION_MODE, 
        LAST_UPDATE_DATE,LAST_UPDATED_BY,
        CREATION_DATE,CREATED_BY,LAST_UPDATE_LOGIN,
        TRANSACTION_SOURCE_TYPE_ID,
        TRANSACTION_ACTION_ID,
        TRANSACTION_TYPE_ID ,
        transfer_subinventory,
        transfer_organization,
        transfer_locator,
        lock_flag,
        flow_schedule,
        Scheduled_flag
        )
        
VALUES(
        mtl_material_transactions_s.NEXTVAL ,   -- TRANSACTION_INTERFACE_ID, 
        mtl_material_transactions_s.NEXTVAL ,   -- TRANSACTION_HEADER_ID,
        SYSDATE,                                -- TRANSACTION_DATE ,
        'KGS',                                  -- TRANSACTION_UOM ,
        2,                                      -- LOCATOR_ID ,
        '100',                                  -- SUBINVENTORY_CODE,
        522403,                                 -- INVENTORY_ITEM_ID
        10,                                     -- TRANSACTION_QUANTITY
        0,                                      -- TRANSACTION_COST
        84,                                     -- ORGANIZATION_ID ,        
        'INV',                                  -- SOURCE_CODE ,
        1,                                      -- SOURCE_LINE_ID,
        1,                                      -- SOURCE_HEADER_ID,
        1,                                      -- PROCESS_FLAG ,    
        3,                                      -- TRANSACTION_MODE,
        SYSDATE,1110,                           -- LAST_UPDATE_DATE,LAST_UPDATED_BY,
        SYSDATE,1110,1110,                      -- CREATION_DATE,CREATED_BY,LAST_UPDATE_LOGIN,
        13,                                     -- TRANSACTION_SOURCE_TYPE_ID,
        2,                                      -- TRANSACTION_ACTION_ID,
        2,                                      -- TRANSACTION_TYPE_ID ,  
        '100',                                  -- transfer_subinventory,    
        84,                                     -- transfer_organization,        
        220,                                    -- transfer_locator,
        2,                                       -- lock_flag
        'Y' -- flow scheduled 
        ,2 -- Scheduled flag                                       
    );   





1.       Launch Interface Manager from Inventory Responsibility using Ctrl+L
2.       Select Material Transactions
3.       Tools -> Launch Manager
4.       Press Submit
5.       Check Request Status


OTHER NOTES:
Check Transaction Type id and Transaction Action Id using Ctl + L after selecting Inventory Resonsibility
Check transaction source type if of Inventory module using Ctrl + L after selecting Inventory Responsibility



Check Error:
select error_explanation from mtl_transactions_interface order by creation_date desc;

ERROR Code: Lot records
Error Explnantion: For this transaction row either the lot records are missing or the lot quantity does not match the transaction quantity

Invnetory Items being used in sub inventory transfer is lot marked. check it by opening Inventory Master Item, it will be marked as Full Control. 


To resolve the Lot Records issue insert data with same transaction interface id just like below specimen data.

insert into mtl_transaction_lots_interface(
TRANSACTION_INTERFACE_ID ,
LOT_NUMBER ,
TRANSACTION_QUANTITY ,
PROCESS_FLAG     ,
LAST_UPDATE_DATE     ,
LAST_UPDATED_BY     ,
CREATION_DATE ,
CREATED_BY
)
values(
1770880,
'US Denim Mills (Pvt) Ltd.-9749',
10,
1,
SYSDATE,
1110,
SYSDATE,
1110
);

Run the Launch Interface Manager and problem should resolve.

OR Use the below mentioned API


DECLARE
    b NUMBER;
    l_return_status varchar2(100);
    l_msg_count NUMBER;
    l_msg_data VARCHAR2(100);
    l_trans_count NUMBER;
BEGIN
 b := INV_TXN_MANAGER_PUB.process_Transactions(
                                             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,
                                            x_trans_count     => l_trans_count,
                                            p_table => 1,
                                            p_header_id       =>  1772420          );
DBMS_output.put_line(l_return_status||' : '||l_msg_count||' : '||l_msg_data);

END;         
          



ERROR:

The expenditure organization information is invalid
CAUSE:
Transfer locator is missing or check all relevant fields in mtl_transactions_interface



Tags: Oracle E Business Suite Release 12.1.3, Inventory, Sub Inventory Transfer, Material Transactions, mtl_transactions_interface, mtl_transaction_lots_interface





No comments:

Post a Comment