Error in Material Transactions

Hi,
I have found 4 items in the Material Transaction with the following messages, happened at RMA.
Sale Order - 1
Item1: CSTPACIN.COST_INV_TXN:Failure in procedure CST_RevenueCogsMatch_PVT.Process_RmaReceipt()
Sale Order - 2
Item1,2 & 3 : CSTPAVCP.COST_ACCT_EVENTS:(50):Failure in procedure CST_RevenueCogsMatch_PVT.Process_RmaReceipt():User-Defined Exception
Kindly help me to resolve the above issues.
Thanks & Regards
[email protected]

Hi,
Please look in to the following issue
RMA was created on 2/3/13 - 16:17 pm with item-1 with the SO reffence number, where the sale order was showing the date as 2/3/13- 16:34 pm.
But the item-1 is not available in the referenced sale order.
Example:
RAM No : 2
Date : 2/3/13
Time : 16:17 PM
Item : Item-1 reference So: 1
SO num: 1
Date : 2/3/13
Time : 16:34 Pm
Item : (Item-1 is not available in the saleorder)
Do needful
Thanks
Shruthi

Similar Messages

  • MTL MATERIAL TRANSACTION error 'CALL_TO_CONTRACTS'. Please help.

    I am getting the following error from the MTL_TRANSACTIONS_INTERFACE table while running a material transaction.
    You have encountered an unexpected error in 'CALL_TO_CONTRACTS': (No Data Found).
    I know that there is an query not being properly fulfilled and it's giving me back this error.
    Does anybody know the specific reason that this error happens?
    I don't know how to track down where this query is. I'm trying to find the package that it is in.
    Any help would be meet with much thanks.

    I get this error too when trying to display a content area with a single URL element (displaying the CA as a portlet).
    When the URL is set to open in a NEW window no error.
    But if I select the URL item to open inside the folder (CA) I get the error.
    Pls let me know if you find a solution since I would like to have my CA shown ONLY as a portlet and not as a new window....

  • Material Transaction and Move Transaction Managers are Going Inactive

    hi
    it was running previously but currently it becomes inactive.can any one tell in which table to look for the error related to this problem?
    Kind Regards
    Sayantan

    Hi;
    What is your OS and EBS?
    It was working before? If yes what have you been changed on your system(patch etc)
    Please check below note:
    Material Transaction And Move Transaction Managers Are Going Inactive [ID 93507.1]
    Material Transaction and Move Transaction Managers are Going Inactive [ID 98757.1]
    Regard
    Helios

  • IB:How to update a serial Number which has Inventory Material Transactions?

    Dear friends
    first of all thanks for your time and valuable solutions
    Install base: How to update a serial Number which has Inventory Material Transactions
    problem description:
    Install base > quick search
    Here is Installbase record, when I query from quick search
    Rec#     Item          Item Instance           Serial Number          Status
    1     300-7000-01      3000000           1000XXX-0538JQ0003 Return for Adv Exchange
    2     300-7000-01     8000000               1000XXX-0538JQ0003-     Return for Adv Exchange
    3     300-7000-01     5000000               1000XXX-0538JQ0003-A     Return for Adv Exchange
    looking above data, first and third records are the legitimate serial numbers(correct according to the client specs), second record is not legitimate since it has a dash as suffix, we found there are many illegitimate serial Numbers exists, needs to be updated with the right serial Numbers which I analyzed in excel after pulling data from mtl_material_transactions , oe_order_lines_all , mtl_serial_numbers , mtl_system_items_b
    basically these are all RMAs
    I need to update the second record as 1094SUZ-0538JQ0003-B as per the guidelines, while updating I need to keep all the existing contracts, Warranty, what ever material transations it has, need to be same.
    we have a package updating the serial numbers using IB API (csi_Item_Instance_Pub.update_item_instance) but it is updating only the records which has no serial numbers present for that instance, if there is a serial number already exists it is not working.
    user define error msg "Serial Number 1094SUZ-0538JQ0003- has Inventory Material Transactions. This serial number cannot be used to update an existing Item Instance", but I need to update this anyway!! or am I missing something here, please advice me
    below post looks like similar issue, talks about hard update, I have no clue, by doing that the updated serial number will have same transations, contracts, dates....attached to it like the previous serial number
    IB UPDATE_ITEM_INSTANCE ERROR - doesn't allow ACTIVE_START_DATE to change
    would be great If you guys help me out, really appreciated!!
    unfortunately I couldn't find any solutoin in metalink for the existing serial number update
    code for updating the serial number using IB API
              x_msg_count := 0;
    x_msg_data := '';
    p_instance_rec.instance_id := rec.child_instance_id;
    p_instance_rec.serial_number := rec.child_serial_number;
    p_instance_rec.object_version_number := rec.child_object_number;
    p_txn_rec.transaction_id := Fnd_Api.g_miss_num;
    p_txn_rec.transaction_date := SYSDATE;
    p_txn_rec.source_transaction_date := SYSDATE;
    p_txn_rec.transaction_type_id := 1;
    csi_Item_Instance_Pub.update_item_instance
    p_api_version => 1.0,
    p_commit => Fnd_Api.g_false,
    p_init_msg_list => Fnd_Api.g_false,
    p_validation_level => 1,
    p_instance_rec => p_instance_rec,
    p_ext_attrib_values_tbl => p_ext_attrib_values_tbl,
    p_party_tbl => p_party_tbl,
    p_account_tbl => p_account_tbl,
    p_pricing_attrib_tbl => p_pricing_attrib_tbl,
    p_org_assignments_tbl => p_org_assignments_tbl,
    p_asset_assignment_tbl => p_asset_assignment_tbl,
    p_txn_rec => p_txn_rec,
    x_instance_id_lst => x_instance_id_lst,
    x_return_status => x_return_status,
    x_msg_count => x_msg_count,
    x_msg_data => x_msg_data
    Thanks
    Suri

    Suri
    Used this. May not be perfect but should get you there. Only if the table is registered (all the seeded tables should be registered) this will work.
    select distinct a.table_name,b.column_name from fnd_tables a, fnd_columns b
    where a.table_id=b.table_id
    and upper(b.column_name) like '%SERIAL%'
    Also this is very old one but if you need history for this change add the history insert logic as well..
    DECLARE
    l_return_err VARCHAR2 (80);
    PROCEDURE debug (p_message IN VARCHAR2)
    IS
    BEGIN
    dbms_output.put_line (SUBSTR (p_message, 1, 255));
    END debug;
    BEGIN
    debug('======================================================================');
    debug('Switching from serial number XDT07406. to XDT07406 ');
    debug('======================================================================');
    UPDATE fa_additions_b
    SET serial_number = 'XDT07406'
    WHERE serial_number = 'XDT07406.';
    debug('No of rows in fa_additions_b updated :'||sql%rowcount);
    UPDATE fa_mass_additions
    SET serial_number = 'XDT07406'
    WHERE serial_number = 'XDT07406.';
    debug('No of rows in fa_mass_additions updated :'||sql%rowcount);
    UPDATE rcv_serial_transactions
    SET serial_num = 'XDT07406'
    WHERE serial_num = 'XDT07406.';
    debug('No of rows in rcv_serial_transactions updated :'||sql%rowcount);
    UPDATE mtl_serial_numbers
    SET serial_number = 'XDT07406'
    WHERE serial_number = 'XDT07406.';
    debug('No of rows in mtl_serial_numbers updated :'||sql%rowcount);
    UPDATE mtl_unit_transactions
    SET serial_number = 'XDT07406'
    WHERE serial_number = 'XDT07406.';
    debug('No of rows in mtl_unit_transactions updated :'||sql%rowcount);
    UPDATE csi_item_instances_h
    SET new_serial_number = 'XDT07406'
    WHERE new_serial_number = 'XDT07406.';
    debug('No of rows in csi_item_instances_h updated :'||sql%rowcount);
    UPDATE csi_t_txn_line_details
    SET serial_number = 'XDT07406'
    WHERE serial_number = 'XDT07406.';
    debug('No of rows in csi_t_txn_line_details updated :'||sql%rowcount);
    UPDATE csi_item_instances
    SET serial_number = 'XDT07406'
    WHERE serial_number = 'XDT07406.';
    debug('No of rows in csi_item_instances updated :'||sql%rowcount);
    UPDATE wsh_delivery_details
    SET serial_number = 'XDT07406'
    WHERE serial_number = 'XDT07406.';
    debug('No of rows in wsh_delivery_details updated :'||sql%rowcount);
    debug('======================================================================');
    debug('Switching from serial number jct20591 to JCT20591 ');
    debug('======================================================================');
    UPDATE fa_additions_b
    SET serial_number = 'JCT20591'
    WHERE serial_number = 'jct20591';
    debug('No of rows in fa_additions_b updated :'||sql%rowcount);
    UPDATE fa_mass_additions
    SET serial_number = 'JCT20591'
    WHERE serial_number = 'jct20591';
    debug('No of rows in fa_mass_additions updated :'||sql%rowcount);
    UPDATE rcv_serial_transactions
    SET serial_num = 'JCT20591'
    WHERE serial_num = 'jct20591';
    debug('No of rows in rcv_serial_transactions updated :'||sql%rowcount);
    UPDATE mtl_serial_numbers
    SET serial_number = 'JCT20591'
    WHERE serial_number = 'jct20591';
    debug('No of rows in mtl_serial_numbers updated :'||sql%rowcount);
    UPDATE mtl_unit_transactions
    SET serial_number = 'JCT20591'
    WHERE serial_number = 'jct20591';
    debug('No of rows in mtl_unit_transactions updated :'||sql%rowcount);
    UPDATE csi_item_instances_h
    SET new_serial_number = 'JCT20591'
    WHERE new_serial_number = 'jct20591';
    debug('No of rows in csi_item_instances_h updated :'||sql%rowcount);
    UPDATE csi_t_txn_line_details
    SET serial_number = 'JCT20591'
    WHERE serial_number = 'jct20591';
    debug('No of rows in csi_t_txn_line_details updated :'||sql%rowcount);
    UPDATE csi_item_instances
    SET serial_number = 'JCT20591'
    WHERE serial_number = 'jct20591';
    debug('No of rows in csi_item_instances updated :'||sql%rowcount);
    COMMIT;
    EXCEPTION
    WHEN OTHERS
    THEN
    l_return_err :='Updating in one of the script has this error:'|| substrb(sqlerrm, 1, 55);
    debug('Value of l_return_err='||l_return_err);
    END;
    Thanks
    Nagamohan

  • Issue in Material Transaction in WIP

    Gratings to Guru's...
    I trying to do Material issue for Discrete job components in WIP. but facing an error in MTL_TRANSACTIONS_INTERFACE. below are the error details.
    Error Msg : ‘Requirement is this job/schedule's primary assembly’
    Error Code : inventory_item_id.
    I am using below insert statement.(able to do material transaction through front end also Similar kind of data for other organization is working fine).
    insert into mtl_transactions_interface
    ( source_code,
    source_line_id,
    source_header_id,
    process_flag,
    validation_required,
    transaction_mode,
    lock_flag,
    last_update_date,
    last_updated_by,
    creation_date,
    created_by,
    inventory_item_id,
    organization_id,
    transaction_quantity,
    primary_quantity,
    transaction_uom,
    transaction_date,
    subinventory_code,
    locator_id,
    transaction_source_id,
    transaction_source_type_id,
    transaction_action_id,
    transaction_type_id,
    transaction_reference,
    wip_entity_type,
    operation_seq_num,
    bom_revision_date,
    routing_revision_date,
    scheduled_flag,
    final_completion_flag,
    Flow_schedule,
    --revision,                   
    transaction_interface_id
    values (
    1, --source code
    1, -- source line id
    -1, -- source header id
    1, -- process flag
    1, -- validation required
    3, -- transaction mode
    2, -- lock flag
    sysdate, -- last update date
    -1, -- last updated by
    sysdate, -- creation date
    -1, -- created by
    62481, -- inventory item id --*
    414, -- org id*
    -30, -- transaction quantity
    -30, -- primary quantity
    'EA', -- transaction uom *
    sysdate, -- transaction date
    'UKDIE', -- subinventory code*
    47473, --locator_id  *
    4368857, -- transaction source id *
    5, -- transaction source type id
    31, -- transaction action id
    35, -- transaction type id
    'test', -- transaction reference
    1, -- wip entity type
    10, -- operation seq num
    sysdate, -- bom revision date
    sysdate, -- routing revision date
    2, -- scheduled flag
    'N', --final_completion_flag
    'N', -- flow schedule
    --'0' , -- Revision
    15375520 --interface_id *
    delete from mtl_transaction_lots_interface
    where TRANSACTION_INTERFACE_ID = 15375519
    /*2. Data inserting into mtl_transaction_lots_interface */
    insert into mtl_transaction_lots_interface
    (TRANSACTION_INTERFACE_ID,
    SOURCE_CODE,
    SOURCE_LINE_ID,
    LAST_UPDATE_DATE,
    LAST_UPDATED_BY,
    CREATION_DATE,
    CREATED_BY,
    LOT_NUMBER,
    TRANSACTION_QUANTITY,
    ERROR_CODE,
    PROCESS_FLAG)
    values(
    15375520,--interface_id, *
    1, -- Source Code
    1, -- Source Line id
    sysdate, -- Last update date
    -1, -- Last updated by
    sysdate, -- Creation Date
    -1, -- Created By
    'PID0190454', -- Lot number Needs input *
    -30, -- Transaction Quantity
    NULL,
    1 -- Process Flag
    Please help me ....
    Thanks in advance
    Balaji

    It seems that 62481 may be the inventory_item_id of the assembly. Make sure you use the inventory_item_id of the component when inserting into mtl_transactions_interface.
    Sandeep Gandhi

  • Reg. Error in material BRICKS order 10003000 item 0000

    Dear Experts
    When I do confirmation in CO11N i am getting the following error
    Error in material BRICKS order 10003000 item 0000
    Message no. RU119
    Diagnosis
    The data necessary for automatic goods movements in a confirmation is incomplete or contains errors.
    System Response
    Automatic goods movements were not carried out. Instead, the system wrote error records.
    Procedure
    Process the error records in one of the following transactions: If the variable parameters are appropriately set then once the confirmation has been created the system asks you whether you want to process the error records. If you answer is "yes" then the system branches to the material overview where you can carry out processing. You branch to the transaction for reprocessing error records from automatic goods movements.
    Pls help me
    Thanks in advance
    Rajakumar.K

    Quantity and Value update tick is made in OMS2 - MATERIAL TYPE then this problem is solved.
    by myself
    Edited by: Raja Kumar on Aug 26, 2009 2:48 PM

  • Materialed View Refresh Error ORA-12008: error in materialized view refresh

    Hi,
    I am trying to refersh the following materialized view with the below command and getting the below error
    begin
    DBMS_MVIEW.REFRESH('GLVW_MIS_ADB');
    end;
    The following error has occurred:
    ORA-12008: error in materialized view refresh path
    ORA-12840: cannot access a remote table after parallel/insert direct load txn
    ORA-06512: at "SYS.DBMS_SNAPSHOT", line 803
    ORA-06512: at "SYS.DBMS_SNAPSHOT", line 860
    ORA-06512: at "SYS.DBMS_SNAPSHOT", line 841
    ORA-06512: at line 2
    Please advice on this.
    Thanks & Regards,
    Kartik

    $ oerr ora 12840
    12840, 00000, "cannot access a remote table after parallel/insert direct load txn"
    // *Cause: Within a transaction, an attempt was made to perform distributed
    // access after a PDML or insert direct  statement had been issued.
    // *Action: Commit/rollback the PDML transaction first, and then perform
    // the distributed access, or perform the distributed access before the
    // first PDML statement in the transaction.
    $                                                                   

  • Error during material determination for sales document item - RRB

    Hi
    Iam getting following error when trying to create a billing request using DP91.
    Error during material determination for sales document item 40001560/000010
    Message no. AD01155
    Diagnosis
    An error occured during material determination for a dynamic item.
    System Response
    The system cannot perform the function.
    Procedure
    Check in the profile being used whether its characteristic allows the assignment of a material to each dynamic item.
    I have checked my DIP profile using ODP02 there are no errors in it, I have created a Setid and assigned it to costing element in selection criteria and material determination criteria.
    Material origin is checked in costing tab in material master.
    Appreciate help in resolving this.
    thanks,
    Vaishnavi

    Hi Vaishnavi
    The error which you are getting is related to costing.So kindly reach your FI Consultant
    please check the following links which may help you.Also check the link that has been provided my Lakshmipathi
    ERROR AT DP90  TRANSACTION
    Regards
    Srinath

  • How to cancel a Pending Material Transactions

    Here is the issue :
    A component was setup with supply_type = Assembly pull.
    This was an error, we change this attribute to bulk.
    But some discrete jobs were completed before the correction, and material transaction were generated.
    Since we have no component stock, the WIP Component issue transactions are stuck in the Pending transactions.
    How can I cancel these Pending Transaction ?

    Hi,
    According with Note:197384.1, from Metalink, I think you can delete these lines from the MTL_MATERIAL_TRANSACTIONS_TEMP table.
    Regards,
    Renato.

  • Important Validations for MTL Material Transaction

    Hi All,
    I am creating an OAF page for material transaction -- for material issue and receipt.
    For this I am inserting a record into MTL transaction interface table and the running the transaction manager API in oracle, which populate mtl_material_transactions table.
    But after general insertion i found that the record is getting error out due to oracle validation. The item may be lot or serial controlled.
    Please let me know the validations performed by this program, so that I can handle these before inserting into interface tables.
    Any help/document will be appreciated.
    You can mail me to [email protected] as well.
    Regards
    Riyas

    Riyas,
    You have to insert the serial number if it is a serial controlled item or it will fail always. Before inserting into the interface table you can validate whether it is serial no is exists or not from the wsh_serial_numbers or mtl_serial_numbers.
    You can compare the values from the inventory_itme_id to get the serial numbers.
    You can use the below query to validate the records. It might be helpful.
    1stà select * from oe_order_headers_all where header_id=4838351
    2ndà select * from wsh_delivery_details where source_header_id=4839902
    3rdà select * from wsh_serial_numbers where delivery_detail_id=5088694
    INSERT INTO mtl_serial_numbers_interface
    (source_code, source_line_id,
    transaction_interface_id,
    last_update_date, last_updated_by,
    creation_date, created_by,
    last_update_login, fm_serial_number,
    to_serial_number, product_code
    --product_transaction_id
    VALUES ('Miscellaneous issue', 7730351,
    71737725,
    --mtl_material_transactions_s.NEXTVAL, --transaction_interface_id
    SYSDATE, --LAST_UPDATE_DATE
    fnd_global.user_id, --LAST_UPDATED_BY
    SYSDATE, --CREATION_DATE
    fnd_global.user_id, --CREATED_BY
    fnd_global.login_id, --LAST_UPDATE_LOGIN
    '168-154-701',
    --FM_SERIAL_NUMBER
    '168-154-701', --TO_SERIAL_NUMBER
    'RCV'
    --PRODUCT_CODE
    --l_rcv_transactions_interface_s
    --v_txn_interface_id --product_transaction_id

  • Discrete Inventory: Material Transactions Distribution contains no records

    Dear Friends
    We are not able to see the cost center wise consumption of the material in discrete inventory.
    We are using Move Orders Issue for recording the consumption of the material.
    cst_inv_distribution_v: We have analyzed this view but didn't get any results, the problem recognized finally is that MTL_MATERIAL_TRANSACTIONS have all the transactions but MTL_TRANSACTION_ACCOUNTS contains no records. MTL_TRANSACTION_ACCOUNTS table is empty. Material Transactions are not hitting the Distribution part.
    Platform: Oracle Applications 11i (11.5.10.2)
    Please guide us so that this problem can be solved.
    Thanks in Advance
    Ankur Bhatia

    Check if the costing manager is running.
    Check if there are any records that errored out (costed_flag =E in mtl_material_transactions)
    If that happens, costing manager may not process the remaining records (assuming you are in avg. costed org).
    Also, if your move orders are resulting in a subinventory transfer and if the accounts for the subinventories are same, you won't see any distribution records.
    Sandeep Gandhi

  • BAPI needed  for  change material(Transaction : MM02)

    Hi all,
    We have a requirement where in we need to post the documents throuh BAPI for change material (Transaction: MM02).
    Any inputs on this..is highly appreciable...
    thanks in advance...
    regards..
    prathima.

    CHECK THIS CODE
    *& Report  ZBAPI_MATERIAL_SAVEDATA
    REPORT  ZBAPI_MATERIAL_SAVEDATA NO STANDARD PAGE HEADING MESSAGE-ID (ZHNC).
    TYPES:BEGIN OF TY_MAT,
           MATERIAL(4),
           IND_SECTOR(1),
           MATL_TYPE(4),
           MATL_GROUP(9),
           BASE_UOM(3),
           BASE_UOM_ISO(3),
           PLANT(4),
           DEL_FLAG(1),
           PUR_GROUP(3),
           BASE_QTY(13),
           STGE_LOC(4),
           MRP_IND(1),
           SALES_ORG(4),
           DISTR_CHAN(2),
           DEL_FLAG1(1),
           MIN_ORDER(13),
           LANGU(2),
          MATL_DESC(40),
       END OF TY_MAT.
    DATA: IT_DATA TYPE TABLE OF TY_MAT,
          WA_DATA LIKE LINE  OF IT_DATA.
    *decalraing flag
    data: v_flag value ''.
    *DECLARING WORK AREAs  TO BE PASSED TO THE FUNCTION MODULE.
    DATA: BAPI_HEAD LIKE BAPIMATHEAD,
          BAPI_CLIENTDATA LIKE BAPI_MARA,
          BAPI_CLIENTDATAX LIKE BAPI_MARAX,
          BAPI_PLANTDATA LIKE BAPI_MARC,
          BAPI_PLANTDATAX LIKE  BAPI_MARCX,
          BAPI_STORAGELOCATIONDATA LIKE BAPI_MARD,
          BAPI_STORAGELOCATIONDATAX LIKE BAPI_MARDX,
          BAPI_SALESDATA LIKE BAPI_MVKE,
          BAPI_SALESDATAX LIKE BAPI_MVKEX,
          BAPI_MAKT LIKE BAPI_MAKT,
          BAPI_RETURN LIKE BAPIRET2.
    *INTERNAL TABLE TO HOLD THE MATERIAL DESCRIPTION
    DATA: BEGIN OF IT_MAKT OCCURS 0.
    INCLUDE STRUCTURE BAPI_MAKT.
    DATA END OF IT_MAKT.
    DATA:BEGIN OF IT_RET OCCURS 0.
    INCLUDE STRUCTURE BAPIRET2.
    DATA END OF IT_RET.
    *INTERNAL TABLE TO HOLD HEADER DATA
    DATA: IT_EXCEL TYPE ALSMEX_TABLINE OCCURS 0 WITH HEADER LINE.
    *SELECTION-SCREEN ELEMENTS
    SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-001.
    PARAMETER: FNAME TYPE RLGRAP-FILENAME OBLIGATORY DEFAULT 'C:\Documents and Settings\Administrator\Desktop\MATMAS.XLS' .
    PARAMETERS: P_BEGCOL TYPE I DEFAULT 1 NO-DISPLAY,
                P_BEGROW TYPE I DEFAULT 1 NO-DISPLAY,
                P_ENDCOL TYPE I DEFAULT 100 NO-DISPLAY,
                P_ENDROW TYPE I DEFAULT 32000 NO-DISPLAY.
    SELECTION-SCREEN END OF BLOCK B1.
    *DECLARATION OF EXCELAL TABLE
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR FNAME.
    PERFORM F_GET_FILE USING FNAME.
    START-OF-SELECTION.
    PERFORM F_XLS_ITAB USING FNAME
                       CHANGING IT_EXCEL.
    PERFORM F_MOVE_DATA.
    perform F_GET_DATA.
    *&      Form  F_GET_FILE
          text
         -->P_FNAME  text
         <--P_SY_SUBRC  text
    FORM F_GET_FILE  USING    P_FNAME LIKE FNAME.
    CALL FUNCTION 'KD_GET_FILENAME_ON_F4'
    EXPORTING
       PROGRAM_NAME        = SYST-REPID
       DYNPRO_NUMBER       = SYST-DYNNR
      FIELD_NAME          = ' '
      STATIC              = ' '
      MASK                = ' '
      CHANGING
        FILE_NAME           = P_FNAME
    EXCEPTIONS
      MASK_TOO_LONG       = 1
      OTHERS              = 2
    IF SY-SUBRC <> 0.
    MESSAGE E006(ZHNC).
    ENDIF.
    ENDFORM.                    " F_GET_FILE
    *&      Form  F_XLS_ITAB
          text
         -->P_FNAME  text
         <--P_IT_EXCEL  text
    FORM F_XLS_ITAB  USING    P_FNAME
                     CHANGING P_IT_EXCEL.
    CALL FUNCTION 'ALSM_EXCEL_TO_INTERNAL_TABLE'
      EXPORTING
        FILENAME                      = FNAME
        I_BEGIN_COL                   = P_BEGCOL
        I_BEGIN_ROW                   = P_BEGROW
        I_END_COL                     = P_ENDCOL
        I_END_ROW                     = P_ENDROW
      TABLES
        INTERN                        = IT_EXCEL
    EXCEPTIONS
       INCONSISTENT_PARAMETERS       = 1
       UPLOAD_OLE                    = 2
       OTHERS                        = 3
    IF SY-SUBRC <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.
    ENDFORM.                    " F_XLS_ITAB
    *&      Form  F_MOVE_DATA
          text
    -->  p1        text
    <--  p2        text
    FORM F_MOVE_DATA .
    DATA : LV_INDEX TYPE I.
    FIELD-SYMBOLS <FS>.
    *--- Sorting the internal table
    SORT IT_EXCEL BY ROW COL.
    CLEAR IT_EXCEL.
    LOOP AT IT_EXCEL.
    MOVE IT_EXCEL-COL TO LV_INDEX.
    *--- Assigning the each record to an internal table row
    ASSIGN COMPONENT LV_INDEX OF STRUCTURE WA_DATA TO <FS>.
    *--- Asigning the field value to a field symbol
    MOVE IT_EXCEL-VALUE TO <FS>.
    AT END OF ROW.
    APPEND WA_DATA TO IT_DATA.
    CLEAR WA_DATA.
    ENDAT.
    ENDLOOP.
    ENDFORM.                    " F_MOVE_DATA
    *&      Form  F_GET_DATA
          text
    -->  p1        text
    <--  p2        text
    FORM F_GET_DATA .
    LOOP AT IT_DATA INTO WA_DATA.
    MOVE-CORRESPONDING WA_DATA  TO  BAPI_HEAD.
    BAPI_HEAD-BASIC_VIEW ='X'.
    BAPI_HEAD-SALES_VIEW ='X'.
    BAPI_HEAD-PURCHASE_VIEW ='X'.
    BAPI_HEAD-STORAGE_VIEW ='X'.
    MOVE-CORRESPONDING WA_DATA TO BAPI_CLIENTDATA.
    BAPI_CLIENTDATAX-MATL_GROUP = 'X'.
    BAPI_CLIENTDATAX-BASE_UOM = 'X'.
    BAPI_CLIENTDATAX-BASE_UOM_ISO = 'X'.
    MOVE-CORRESPONDING WA_DATA TO BAPI_PLANTDATA.
    BAPI_PLANTDATAX-PLANT = BAPI_PLANTDATA-PLANT.
    BAPI_PLANTDATAX-DEL_FLAG = 'X'.
    BAPI_PLANTDATAX-PUR_GROUP = 'X'.
    BAPI_PLANTDATAX-BASE_QTY = 'X'.
    MOVE-CORRESPONDING WA_DATA TO BAPI_STORAGELOCATIONDATA.
    BAPI_STORAGELOCATIONDATA-PLANT = BAPI_PLANTDATA-PLANT.
    BAPI_STORAGELOCATIONDATAX-PLANT = BAPI_STORAGELOCATIONDATA-PLANT.
    BAPI_STORAGELOCATIONDATAX-STGE_LOC = BAPI_STORAGELOCATIONDATA-STGE_LOC.
    BAPI_STORAGELOCATIONDATAX-MRP_IND = 'X'.
    MOVE-CORRESPONDING WA_DATA TO BAPI_SALESDATA.
    BAPI_SALESDATAX-SALES_ORG = BAPI_SALESDATA-SALES_ORG.
    BAPI_SALESDATAX-DISTR_CHAN = BAPI_SALESDATA-DISTR_CHAN.
    BAPI_SALESDATAX-DEL_FLAG = BAPI_SALESDATA-DEL_FLAG.
    BAPI_SALESDATAX-MIN_ORDER = 'X'.
    REFRESH IT_MAKT.
    IT_MAKT-LANGU = WA_DATA-LANGU.
    IT_MAKT-MATL_DESC = WA_DATA-MATL_DESC.
    APPEND IT_MAKT.
    CLEAR IT_RET.
    REFRESH IT_RET.
    PERFORM F_CALL_BAPI.
    READ TABLE IT_RET WITH KEY TYPE = 'S'.
    IF SY-SUBRC EQ 0.
    PERFORM F_BAPI_COMMIT.
    WRITE:/ 'MATERIAL CREATED OR UPDATED SUCESSFULLY WITH MATERIAL NO',WA_DATA-MATERIAL.
    ELSE.
    MESSAGE E000(ZHNC) WITH 'ERROR IN CREATING THE MATERIAL'.
    *WRITE: / 'ERROR IN CREATIN MATERIAL',IT_RET-MESSAGE.
    *PERFORM F_DOWNLOAD.
    ENDIF.
    *ENDIF.
    ENDLOOP.
    ENDFORM.                    " F_GET_DATA
    *&      Form  F_CALL_BAPI
          text
    -->  p1        text
    <--  p2        text
    FORM F_CALL_BAPI .
    CALL FUNCTION 'BAPI_MATERIAL_SAVEDATA'
      EXPORTING
        HEADDATA                   = BAPI_HEAD
       CLIENTDATA                 =  BAPI_CLIENTDATA
       CLIENTDATAX                =  BAPI_CLIENTDATAX
       PLANTDATA                  =  BAPI_PLANTDATA
       PLANTDATAX                 =  BAPI_PLANTDATAX
       STORAGELOCATIONDATA        =  BAPI_STORAGELOCATIONDATA
       STORAGELOCATIONDATAX       =  BAPI_STORAGELOCATIONDATAX
       SALESDATA                  =  BAPI_SALESDATA
       SALESDATAX                 =  BAPI_SALESDATAX
    IMPORTING
       RETURN                     =  IT_RET
    TABLES
       MATERIALDESCRIPTION        = IT_MAKT
      UNITSOFMEASURE             =
      UNITSOFMEASUREX            =
      INTERNATIONALARTNOS        =
      MATERIALLONGTEXT           =
      TAXCLASSIFICATIONS         =
      RETURNMESSAGES             =
      PRTDATA                    =
      PRTDATAX                   =
      EXTENSIONIN                =
      EXTENSIONINX               =
    APPEND IT_RET.
    ENDFORM.                    " F_CALL_BAPI
    *&      Form  F_BAPI_COMMIT
          text
    -->  p1        text
    <--  p2        text
    FORM F_BAPI_COMMIT .
    CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
    EXPORTING
      WAIT         =
    IMPORTING
      RETURN        =
    ENDFORM.                    " F_BAPI_COMMIT

  • Errors in Call Transaction

    Hi all,
    In my program I am trying to handle errors in call transaction method using bdcmsgcoll and format_message.To check this I have given some false data like trying to create materials which are already in mara tables. The data is not updated in the mara tables but No error messages are populated into the bdcmsgcoll structure. The status of all messges is success. How do messages get populated into bdcmsgcoll ?
    I am forwardimng my code too. Can anyone please explain me what's happening ? For what type of errors, Error messages get poplated into bdcmsgcoll ?
    report Z_MAT_CALL
           no standard page heading line-size 255.
    data : begin of material occurs 0,
           matnr like mara-matnr,           " Material Number
           mbrsh like mara-mbrsh,           " Industry sector
           mtart like mara-mtart,           " material Type
           maktx like makt-maktx,           " Material Description
           meins like mara-meins,           " Base Unit of Measure
           end of material.
    data fnam type string value 'C:\BW\MAT.TXT'.
    *---- BDCDATA
    data : bdcdata like bdcdata occurs 0 with header line,
           itab like bdcmsgcoll occurs 0 with header line,
           mesg(100).
    *---- Uploading data into internal table from flat File.
    CALL FUNCTION 'GUI_UPLOAD'
      EXPORTING
        filename                      = fnam   "'C:\BW\MAT.TXT'
       FILETYPE                      = 'ASC'
       HAS_FIELD_SEPARATOR           = 'X'
      tables
        data_tab                      = material.
    IF sy-subrc <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
             WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.
    loop at material.
    perform bdc_dynpro      using 'SAPLMGMM' '0060'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'RMMG1-MTART'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    perform bdc_field       using 'RMMG1-MATNR'
                                  material-matnr.
    perform bdc_field       using 'RMMG1-MBRSH'
                                  material-mbrsh.
    perform bdc_field       using 'RMMG1-MTART'
                                  material-mtart.
    perform bdc_dynpro      using 'SAPLMGMM' '0070'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'MSICHTAUSW-DYTXT(02)'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '=ENTR'.
    perform bdc_field       using 'MSICHTAUSW-KZSEL(01)'
                                  'X'.
    perform bdc_field       using 'MSICHTAUSW-KZSEL(02)'
                                  'X'.
    perform bdc_dynpro      using 'SAPLMGMM' '4004'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '=BU'.
    perform bdc_field       using 'MAKT-MAKTX'
                                  material-maktx.
    perform bdc_field       using 'BDC_CURSOR'
                                  'MARA-MEINS'.
    perform bdc_field       using 'MARA-MEINS'
                                  material-meins.
    perform bdc_field       using 'MARA-MTPOS_MARA'
                                  'NORM'.
    perform bdc_transaction using 'MM01'.
    refresh bdcdata.
    endloop.
    *LOOP AT iTAB.
    *WRITE: / iTAB-TCODE,
    *iTAB-DYNAME,
    *iTAB-DYNUMB,
    *iTAB-MSGTYP,
    *iTAB-MSGSPRA,
    *iTAB-MSGID,
    *iTAB-MSGNR.
    *ENDLOOP.
           Start new screen                                              *
    FORM BDC_DYNPRO USING PROGRAM DYNPRO.
      BDCDATA-PROGRAM  = PROGRAM.
      BDCDATA-DYNPRO   = DYNPRO.
      BDCDATA-DYNBEGIN = 'X'.
      APPEND BDCDATA.
      CLEAR BDCDATA.
    ENDFORM.
           Insert field                                                  *
    FORM BDC_FIELD USING FNAM FVAL.
        BDCDATA-FNAM = FNAM.
        BDCDATA-FVAL = FVAL.
        APPEND BDCDATA.
        CLEAR BDCDATA.
    ENDFORM.
         Form  bdc_transaction
    form bdc_transaction  using    value(tcode).
    call transaction tcode using bdcdata
                           mode   'N'
                           update 'S' messages into itab.
    if sy-subrc Ne 0.
    read table itab with key msgtyp = 'E'.
    if sy-subrc = 0.
    perform check.
    endif.
    endif.
    endform.                    " bdc_transaction
         Form  check
    form check .
    CALL FUNCTION 'FORMAT_MESSAGE'
    EXPORTING
    id = itab-msgid
    lang = sy-langu
    no = itab-msgnr
    v1 = itab-msgv1
    v2 = itab-msgv2
    v3 = itab-msgv3
    v4 = itab-msgv4
    IMPORTING
    msg = mesg
    EXCEPTIONS
    NOT_FOUND = 1
    OTHERS = 2
    IF sy-subrc <> 0.
    MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
    WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
    ENDIF.
    endform.                    " check
    Regards,
    Varun.

    Hi
    DATA :  T_BDCMSGCOLL TYPE TABLE OF BDCMSGCOLL WITH HEADER LINE.
    DATA :  WA_BDCMSGCOLL TYPE BDCMSGCOLL.
    DATA : ERR_LOG TYPE MESSAGE.
    Call Transaction MM01
      IF W_FLAG NE 'X'.
        CALL TRANSACTION 'MM01' USING T_BDCDATA OPTIONS FROM WA_CTU_PARAMS
                                                 MESSAGES INTO T_BDCMSGCOLL.
        COMMIT WORK AND WAIT.
        DESCRIBE TABLE T_BDCMSGCOLL LINES N.
        IF N <> 0.
          LOOP AT T_BDCMSGCOLL INTO WA_BDCMSGCOLL.
            CLEAR ERR_LOG.
            W_MSGNO = WA_BDCMSGCOLL-MSGNR.
            CALL FUNCTION 'WRITE_MESSAGE'
              EXPORTING
                MSGID = WA_BDCMSGCOLL-MSGID
                MSGNO = W_MSGNO
                MSGTY = WA_BDCMSGCOLL-MSGTYP
              IMPORTING
                MESSG = ERR_LOG.
    Error that occurs during transactoon
            IF ERR_LOG-MSGTY = 'E'.
              MOVE-CORRESPONDING T_UPLOAD TO  T_DOWNLOAD.
              MOVE ERR_LOG-MSGTX TO  T_DOWNLOAD-MSG.
              APPEND T_DOWNLOAD.
            ENDIF.
          ENDLOOP.
        ENDIF.
      ENDIF.
    check structure declaration and code it may be useful
    regards
    vinod

  • Material Transaction Processor

    I need to reschedule this job. Where can I find it?

    Hi,
    See (Note: 786206.1 - Cost Group Transfer Transactions Stucked In Mtl_Transactions_Interface Table With Error "Cost Group is Either not Entered or not Valid for the Given Organization") for the navigation path. You could also refer to "Oracle Inventory Guide" for details about Material Transaction Processor.
    Oracle Applications Documentation
    http://www.oracle.com/technology/documentation/applications.html
    Regards,
    Hussein

  • HKONG: Material Transaction Interface 의 data를 처리 Process들에 대한 정의

    PURPOSE
    Material Transaction Interface 의 data를 처리 Process들에 대해 정의하고자 함.
    Explanation
    관련된 정보는 다음과 같습니다.
    Material Transaction Interface 의 data를 처리하기 위해서는 다음의 2개의 Process가 수행됩니다.
    - INCTCM (Process transaction Interface)
    - INCTCW (Inventory transactions worker)
    (1)
    Records are processed into this table by the INCTCM - Process Transactions Interface from the Interface tables :
         MTL_TRANSACTIONS_INTERFACE     to MTL_MATERIAL_TRANSACTIONS_TEMP
         MTL_TRANSACTION_LOTS_INTERFACE     to MTL_TRANSACTION_LOTS_TEMP (Lot 사용시)
         MTL_SERIAL_NUMBERS_INTERFACE     to MTL_SERIAL_NUMBERS_TEMP (serial 사용시)
    ==> INCTCM 에 의해 interface table의 data가 validation후, temp table로 옮겨집니다.
    (2)
    After the records are processed from the MTL_TRANSACTIONS_INTERFACE into the MTL_MATERIAL_TRANSACTIONS_TEMP
    by the INCTCM - Process Transactions Interface,
    a worker will be launched to process the record from MTL_MATERIAL_TRANSACTIONS_TEMP into MTL_MATERIAL_TRANSACTIONS.
    The worker is called INCTCW - Inventory Transaction Worker.
    The INCTCM - Process Transactions Interface will launch a single INCTCW - Inventory Transaction Worker for all rows
    that meet the criteria in MTL_MATERIAL_TRANSACTIONS_TEMP :
         TRANSACTION_MODE     = 3
         LOCK_FLAG          = N
         PROCESS_FLAG          = Y
    Once the process is complete the records will be moved into the corresponding
    transaction table :
         MTL_MATERIAL_TRANSACTIONS_TEMP     to MTL_MATERIAL_TRANSACTIONS
         MTL_TRANSACTION_LOTS_TEMP     to MTL_TRANSACTION_LOT_NUMBERS
         MTL_SERIAL_NUMBERS_TEMP          to MTL_UNIT_TRANSACTIONS
    ==> INCTCM은 INCTCW를 call하게 되고, 이 Process에 의해 TEMP table로부터 MMT table과 Inventory table에
    DATA가 Insert됩니다.
    The rows in mtl_transactions_interface are processed in 5 phases.
    1. Derives dependant columns, eg:acct_period_id, primary_quantity etc..
    2. Detailed validation performed on the records
    3. On hand qty check for negative qty's etc..
    4. Reservations Relieved if demand was created in order entry
    5. Rows are moved to mtl_material_transactions_temp where the
    transaction processor is called to process these rows and update the inventory levels etc..
    Reference Documents
    -------------------

Maybe you are looking for

  • How do I sync my email between my iPhone and iPad?

    How do I sync my email between my iPhone and iPad?

  • Question about SB Live 5.1 platinum speaker set

    I was just wondering if it is possible with the SB Li've 5. platinum card to have a game using the SPDIF output and set up another set of speakers on the line out channel for use with a teamspeak type program?

  • MY FONT LOOKS DIFFERENT IN INDESIGN PAGES PLEASE HELP!!!!!

    Hello, I have a majo problem here. I have all my pages written in one font, Arial Narrow, however the width of the font looks different from page to page, it looks bold on page 1 and 2, and on page 3 it looks fine,  is there any invisible setting app

  • [Nokia 3500c]Photos resolution

    I have bought this phone 5 days ago. It's very nice. But I have one problem. When I make photo in resolution, for example, 640x480, phone save it in resolution 480x640. It's not bother me, but when I want to send MMS with this picture, MMS come very

  • Very difficult to send or reply yahoo mail.

    Very difficult to send or reply yahoo mail from iPhone and everything except mail works just fine, Sometimes when unable to send or reply, pop up on the screen "wrong username or password", Infact everything is correct, what happen with Yahoo ? Help