Incoming IDOC - Status Update

Hi All,
We are creating Sales Order(Va01) based on Inbound IDOC for Scheduling Agreeemnt(VA31) using BAPI 'BAPI_SALESORDER_CREATEFROMDAT2'
As per logic sales order is getting created in system with updation in database table but the IDOC status is showing '51' instead of '53'.
Please suggest solution.
Regards,
Ulhas

Easy - debug the process code and determine the condition that is setting the control record status value to '51'.

Similar Messages

  • IDoc Status update configuration

    I need to utilize the status update process for inbound/outbound IDocs.  My EDI translator sends a status IDoc (EDIDS) that has the IDoc number and the status (nothing more).  Out EDI services are managed externaly so their only role is to place IDocs onto my SAP server.  In other words they do not use call startrfc.
    How can I implement the process of updating the status of an IDoc to indicate if there is a failure in subsytem translation, or positive acknowledgement, and so on???

    Hi Amtnbiker,
    I think your question is more BC related.
    Could you please send new thread in Basis middleware forum?
    Thanks and best regards,
    Smile

  • How to update the Sent Idoc Status based on the Response From Webservice

    Hi All,
    I have to develop Idoc--SOAP Sync Process Scenario Using BPM .
    I have configured every thing using BPM and mapped
    MATMAS----SOAP Request
    SOAP Resp----STATUS.SYSTAT01
    In R/3  the Main Idoc Number(MATMAS) Status needs to be update , but it is creating the new Idoc with STATUS.SYSTAT01.
    I have used STATUS.SYSTAT01 Idoc to Update the status of the Original idoc based on the Response that is coming from webservice .
    I was posted the same thread a days ago and there Bhavesh suggested me some sugessions.
    How can we make the status of the Idoc based on some response Text
    iam unable to follow OR not able to clear my self on this.
    Please suggest me or give some over view kind of thing on this
    Regards

    Hi Suman,
    It is clearly mentioned in SAP help that "SAP Intermediate Documents (IDOCS) are EDI like documents that are asynchronous in nature."
    So Your Scenario is Asynch(receive) - Synch(WS call) -Transformation (Multimapping)- Asynch(Send to R/3).
    now go in this way:
    you can develop all the message Interfaces  of  Abstract catagory (not manditory )
    MI_AA_MATMAS   -> Abstract Asynchronous message    interface for your Matmas IDOC
    MI_AS_SOAP_ReqandResp  -> Abstarct Syncronous MI for SOAP request and response.
    MI_AA_STATUS ->Abstract Asyncronous MI for Status Idoc
    MI_AA_SOAP_Req ->  Abstarct Asyncronous MI for SOAP request .
    MI_AA_SOAP_Res ->  Abstarct Asyncronous MI for SOAP response .
    Thats all in Message interface.
    your first reciever :
    (This will receive the message asynchronously from R/3)
    create a conatainer varaiable (say preceive) and assign it message interface MI_AA_MATMAS
    Now in thw Propert TAB of this step: give this message name.
    Step2: Synchronous call :
    create container Variable psoaprequest and psoapresponse  give abstract message interface MI_AA_SOAP_Req and MI_AA_SOAP_Req  resp.
    Now in thw Propert TAB of this step:
    Synchronous Interface : MI_AS_SOAP_ReqandResp
    Request Message : psoaprequest
    Response Message: psoapresponse
    Transformation Step :
    Here you will specify Interface Mapping that will conatain Multimapping between Synch Response - MATMAs and STATUS
    Let's name it as IM_ResandMatmasToStatus
    create a container variable as pstatus and assign it abstract interface MI_AA_STATUS.
    In Property pan of this step :
    Interface mapping :IM_ResandMatmasToStatus
    Source Message :psoapresponse
                                preceive
    (IT will ask you for two source messages as IM selected in this transformation has 2 source messages)
    Target Message :pstatus
    Send step:
    Select a message as pstatus.
    thats all in IR.
    If have doubt in ID just let me know.
    Thanks
    Sunil Singh

  • Any FM/methods to update idoc segments without changing idoc status

    Hi All,
    My requirement is a reprocessor program which fills up some fields in the idoc segment before posting. So, after updating the segments, the idoc status should remain as before.
    Is there any function modules or methods to update idoc fields in segments without changing the idoc status?
    I have tried the FMs EDI_DOCUMENT_OPEN_FOR_EDIT, EDI_CHANGE_DATA_SEGMENT and EDI_DOCUMENT_CLOSE_EDIT, but it changes the idoc status.
    Thanks,
    Arun Mohan

    As for FM to do this, i don't know if there are any, but i think you can go directly to the tables with the IDOC data and change them without triggering the changes in status like FM do. Still, i am not sure this is completely true, but you could give it a try. Also, i don't know if this is the best way to do it, because of those legal/audit questions mentioned by Thomas.
    Here is a sample code of a program we have to change a field in a segment of WPUUMS.
    *& Report  YRE00021INTPG
    REPORT  yre00021reppg.
    TABLES: edid4 ,
            edidc ,
            mean .
    * Variaveis Auxiliares
    DATA: t_edidc TYPE edidc OCCURS 0 WITH HEADER LINE.
    DATA: t_edid4 LIKE edid4 OCCURS 0 WITH HEADER LINE .
    DATA: BEGIN OF t_docs OCCURS 0,
            docnum LIKE edidc-docnum ,
          END OF t_docs.
    DATA: wa_e1wpu02 LIKE e1wpu02 .
    DATA: wa_e1wpu03 LIKE e1wpu03 .
    DATA: t_itedidd LIKE edi_dd40 OCCURS 0 WITH HEADER LINE ,
          t_itedidc LIKE edi_dc40 OCCURS 0 WITH HEADER LINE ,
          fw_itedidc LIKE edi_dc40 ,
          fw_itedidd LIKE edi_dc40 .
    DATA: l_matnr TYPE mara-matnr,
          l_tam TYPE i.
    DATA: l_idoc_number TYPE edidc-docnum.
    * Ecran de selecção
    SELECTION-SCREEN : BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.
    SELECT-OPTIONS: s_docnum FOR  edid4-docnum ,
                    s_credat FOR  edidc-credat DEFAULT sy-datum ,
                    s_cretim FOR  edidc-cretim .
    PARAMETER:      p_mestyp LIKE edidc-mestyp DEFAULT 'WPUUMS' ,
                    p_status LIKE edidc-status DEFAULT '51' .
    *SELECTION-SCREEN SKIP.
    *PARAMETER:      p_ean11 TYPE mean-ean11.
    SELECTION-SCREEN : END OF BLOCK b1.
    AT SELECTION-SCREEN.
      IF p_status <> '51'.
        MESSAGE e001(yre) WITH 'Apenas pode modificar IDOCS com erro'.
      ENDIF.
      IF p_mestyp <> 'WPUUMS'.
        MESSAGE e001(yre) WITH 'Apenas pode lançar WPUUMS'.
      ENDIF.
    *AT SELECTION-SCREEN ON p_ean11.
    *  SELECT SINGLE * FROM mean WHERE
    *    ean11 = p_ean11.
    *  IF sy-subrc <> 0.
    *    MESSAGE e001(yre) WITH 'Ean não existente'.
    *  ENDIF.
    START-OF-SELECTION.
      SELECT docnum INTO TABLE t_docs FROM edidc
                         WHERE status =  p_status
                         AND   mestyp =  p_mestyp
                         AND   docnum IN s_docnum
                         AND   credat IN s_credat
                         AND   cretim IN s_cretim .
      CHECK sy-subrc = 0 .
      LOOP AT t_docs.
        CLEAR : wa_e1wpu02.
        SELECT * FROM edidc INTO TABLE t_edidc
          WHERE docnum = t_docs-docnum.
        CHECK sy-subrc = 0.
        SELECT * FROM edid4 INTO TABLE t_edid4
                      WHERE docnum = t_docs-docnum AND
                            segnam = 'E1WPU02'.
        CHECK sy-subrc = 0.
        SORT t_edid4 BY segnum.
        LOOP AT t_edid4 .
          wa_e1wpu02 = t_edid4-sdata.
          WRITE wa_e1wpu02-artnr TO l_matnr NO-ZERO.
          CONDENSE l_matnr.
    *      l_tam = STRLEN( l_matnr ).
    *      IF l_tam <= 6.
            SELECT SINGLE ean11 INTO wa_e1wpu02-artnr FROM ytre00004 WHERE
              codcurto = l_matnr.
            IF sy-subrc = 0.
              WRITE : /1 'Código ', l_matnr, ' alterado para ', wa_e1wpu02-artnr.
            ELSE.
              WRITE : /1 'Código ', l_matnr, ' não encontrado na tabela de conversão'.
              CONTINUE.
            ENDIF.
    *        CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
    *          EXPORTING
    *            input  = p_ean11
    *          IMPORTING
    *            output = wa_e1wpu02-artnr.
    *      ENDIF.
          UPDATE edid4 SET   sdata   = wa_e1wpu02
                       WHERE docnum  = t_edid4-docnum
                       AND   counter = t_edid4-counter
                       AND   segnum  = t_edid4-segnum .
          IF sy-subrc <> 0 .
            ROLLBACK WORK .
            WRITE: / t_edid4-docnum .
          ELSE.
            COMMIT WORK.
          ENDIF.
        ENDLOOP.
      ENDLOOP.
    END-OF-SELECTION.

  • Batches not getting updated by incoming idoc DELVRY03 (message type SHPCON)

    Hi
        I am using incoming idoc DELVRY03 (message type SHPCON) to update delivery document.I am using field E1EDL24-CHARG to pass batch data.
          However batch number is not getting updated in delivery document. I have verified aspects like batch number is valid etc.
         While updating batch number thru incoming idoc, do I need to supply some other data?
    Please help.
    TIA
    Koustav

    Hi Biswas,
    I think batches are determined automatically in the deliveries while creation and thats the reason it is not getting the batch number in the delivery, if there is no automatic batch dertermination then it will update the valid batch number
    also please check the batch determination procedure and the batch master in MSC2N and availability of materials for that particular batch
    regards,
    Santsoh

  • Updating IDoc Status through PI

    Hello Experts,
    We are sending an IDoc to a third party system through PI 7.1. From there we are planning that they will send a acknowledgement. It will contain the Idoc number and its status (whether it got processed at their end or not).
    The requirement is that according to the status we have to update the IDoc status in R/3 system through PI 7.1.
    Kindly elaborate on how to do this? Are there some scenarios done like this?
    Thanks in advance,
    Suraj Sawarkar

    Hi Suraj,
    Check this: call the RFC 'WDLD_EDI_STATUS_SET'. Pass it the Idoc number(s) and status.
    Another alternative is given here
    http://sap.ittoolbox.com/groups/technical-functional/sap-dev/post-idoc-status-record-using-an-rfc-2539010
    Regards
    Suraj

  • Steps For Updating the IDOC Status using ALEAUD

    Hi all,
    My Scenario  is : R/3(IDOC)--> Legacy System(File).After the IDOC is received successfully on the Receiver System.I should Update the Status of IDOC on the Sender System.
    Can anyone help me out :
    What all the Steps & Configurations involved for Sending an Acknowledgement & Updating the IDOC status  from the Legacy System.
    Thanks in Advance,
    Dattatreya.

    Hi,
      You may need to set up another flow (a reverse one), where the Legacy sends a msg to XI with the Idoc number of the initial idoc you sent (onward flow).
      now, you can map the idoc number in E1ADHDR/E1STATE/DOCNUM and other statuses as required (in various tags) and also other information as per your environment. Pls see the below links
    Re: Acknowledgements ever switch to Status 39
    Re: Asyncronous acknowledge from file adapter
    Re: R3<->XI<->Auto-ID:How to check result of Idocs sending out from R3 in aii ?
    Regards
    Vishnu

  • Terminated by user problem in  incomming  idoc while creating the sales ord

    This is a file to idoc issue.
    Idoc basic type: ORDERS03
    When an SO is created by an incoming idoc, problem comes with status u201Cterminated by useru201D with 51 status.
    When we tried to post this issue in BD87 t.code the document posts with out any issue.
    We are not able to create this issue in Quality box as well,
    Experts let us know if you have ever faced such problem in user system.

    "Terminated by user" means what it says. Someone has physically interrupted processing of the IDoc. That's all there is to it.

  • IDoc status 53 in employee replication from SAP HR

    Hi experts,
    We are having some problems in CRM BP creation with role employee.
    We are using CRM 5.0 and SAP ECC 6.0 and we are trying to replicate employee’s information to CRM from HR.
    After read the notes 934372, 615896, 550055, 363187, 312090 we made the next configuration steps in our systems:
    R/3:
    - Creation of connection port (trans. WE21)
    - Creation of logical system (trans. WE20) and assignment of outbound message HRMD_ABA
    - Creation of distribution model (trans. BD64) with all filters indicated in note 312090
    CRM
    - Creation of logical system (trans. WE20) and assignment of inbound message HRMD_ABA
    - Creation of conversion between basic types HRMD_A05 and HRMD_ABA01 (trans. WE70) as described in note 312090
    - Creation of conversion between message types HRMD_A and HRMD_ABA (trans. WE73) as described in note 312090
    - Creation of external number range “ZE” from HR01200001 to HR01299999 (using PA04 in R3 we found the number range between 01200001 and 01299999)
    - Creation of BP Grouping with the same name of number range (“ZE”) checked to be external too
    - Update of table T77S0 (using SM30):
    HRALX HRAC X
    HRALX PBPON OFF
    HRALX PBPHR ON
    HRALX PBPON ON
    HRALX PNUMB 3
    HRALX PPROL BUP003
    HRALX PSUBG ZE
    PLOGI PLOGI MV
    We know we should have the same value in R3 and CRM for PLOGI/PLOGI, so we created in CRM MV because that is the plan version used in R3. To create it, we just manually add a new row in table T778P and then selected it in table T77S0. Is this the correct way to create a plan version?
    After these steps, in R3 we execute program RHALEINI with parameters:
    - Plan version = MV
    - Object type = P
    - Object ID = an active employee
    - Reporting period = all
    - Transfer mode = Insert
    - Receiving system:
    Receiving partner No = DCRCLNT300 (logical system created in WE20)
    Message type = HRMD_ABA
    And everything looks fine in R3.
    In CRM, using trans. WE05, we can see that the iDoc is created, apparently without problems with status 53 - "Applicaton document posted" but the business partner is never created.
    Did we miss some configuration steps?
    Should we do something more after see the iDoc in CRM to create BP?
    Thanks in advance.
    Alda

    hi pratk bhai,
    ya i have done the same setting what Ada has mentioned eariler,
    and as of your suggestion to maintatin the mandatory infotype, i have even done tht,
    after running RHALEINI in R3, the status is all green here.
    when i run the tcode BD87  to check the Idoc status its showing fine (Error free).
    now, through tcode se38 the report CRMHRALE_CENTRAL_PERSON shows all the employees as status green,,
    but the partner number is not getting generated. ( i have used HRALX-PNUMB= 3 (Prefeexing the number range coming from R3)).
    kindly advice me what should be done in order to generate a BP number for the replicated HR Employee.
    best regards,
    Madhup

  • Problem in processing incoming IDOC

    Hi All,
    I have a problem while processing Incoming IDOC in the system.
    While I try to process and FI IDOC (without purchase order) in the system, by giving the appropriate GL account and cost centre where the document should get posted to (in transaction WE19), I find that the system creates the IDOC successfully with status 53. However, it creates a parked document in the system for the vendor.
    When I try to post the document through transaction FBV0, the system asks for a cost centre. Can you please clarify, why the system is asking for a cost object though it is given in WE19 transaction. Ideally while processing the IDOC the system should post the document directly as it has all the relevant details in the IDOC right?
    (Just for info, I have given the GL account details in segment E1EDP19 with qualifier 002 and the cost centre in segment E1EDP30 with qualifier 045)
    Expecting your help in this regard.
    Regards
    Nagarajan N

    Hi
    You can use WE19 to debug the Idoc FM.
    Check this link if it is helpful:
    Debugging Idocs
    Regards
    Neha

  • HRMD_A07 Idoc to update InfoType 0014 does not delimit existing PA0014 rec

    In ECC 6.0, we are using HRMD_A07 Idoc to update infotype 0014 using update data received from a third party application. In XI, I am creating the Idoc with Update Code "U" with E1PLOGI, E1PITYP and E1P0014 segments. E1P0014 holds the data for the latest record.
    If I directly pass the Idoc thru ALE layer, It creates records for the new date range on E1P0014 segment, but does not delimit the previous record by changing its end date. This results in two records in PA0014 with end date of 12/31/9999 - which is wrong.
    I also tried using a wrapper FM to create additional segments in the Idoc representing the existing record in PA0014, with the end date being delimited to incoming record's beg. date minus 1.
    This also results in just creating two additional records in PA0014 corresponding to the two segments in Idoc while existing record in PA0014 stays intact resulting in two records with end date 12/31/9999.
    I also experimented with setting the lock indicator (PA0014-SPRPS) but that also does not result in delimiting the existing record.
    Am I missing something? Is there a piece of config that controls this?
    Regards,
    The time constraint on 0014 is "2"

    Hi Jon and Ashish,
    I too am facing the same issue that the new IDOC is not delimiting the previous record.
    Can you explain how did u get over you issue.
    I'm maintaining the same dates in E1PITYP and in E1P0014.
    Thanks,
    Jilly

  • Idoc status 53.Yet application data is not posted.

    IDOC status is 53. But application data is not partially posted.iam generating 2 idocs, one for type INFREC01 and other for COND_A01. iam  Generating IDOC using a fm IDOC_INBOUND_ASYNCHRONOUS. purchase info record is posted succesfully. but condition info record is not posted.
    for both the idoc its shows green status-53. moreover data in EINA EINE KONH KONP is updating, but its not displayed in transaction ME13.
    Kindly help me.

    Hi,
    Check the config stuff if you are usng the right IDoc...See partner profiles and the message types.
    thanks

  • How to find Correct IDoc Status in SAP

    Hi All,
    I need some help on IDoc scenario, I have custom program to create Idoc and as well it will send IDoc to XI. I want to know idoc staus in the program to update custom table whether idoc sent successfully or not but idoc giving status as 03 (Data passed to port OK) irrespective of idoc send or not, actually idoc not sent to xi when I check SM58 showing error.
    Please advice me how to find correct idoc status inside program itself.
    **-----Create IDoc
      CALL FUNCTION 'IDOC_OUTBOUND_WRITE_TO_DB'
        TABLES
          int_edidd      = i_edidd
        CHANGING
          int_edidc      = wa_int_edidc
        EXCEPTIONS
          idoc_not_saved = 1
          OTHERS         = 2.
      COMMIT WORK.
      i_edidc = wa_int_edidc.
      APPEND i_edidc.
      REFRESH i_edidd.
    **-----Send Idoc
      CLEAR i_edidd.
    **-------Send Idoc to XI
      CALL FUNCTION 'EDI_OUTPUT_NEW'
        EXPORTING
          onl_option = 'B'
          error_flag = ' '
        TABLES
          i_edidc    = i_edidc
          i_edidd    = i_edidd.
      COMMIT WORK.
      READ TABLE i_edidc INDEX 1.
    **-----Update Dispatch order status based on Idoc status.
      IF sy-subrc =  0 AND i_edidc-status ='03'.
        znxi01_update c_03 i_edidc-docnum.
        gw_success_record = gw_success_record + 1.
      ELSE.               " Error in Data Transfer
        znxi01_update c_02 i_edidc-docnum.
        gw_fail_record = gw_fail_record + 1.
      ENDIF.

    Hi Anil,
    for setting IDOC Status you can send back a IDOC of type <i>ALEAUD01</i>.
    The function IDOC_INPUT_ALEAUD takes automatically this IDOC and writes the status to the origin IDOC.
    Regards Mario

  • Incoming IDOC Error "No batch input data from the screen SAPMV45A 4001"

    Hello ,
    The Incoming IDOC with Message type 'ORDERS' is triggering the error message "No batch input data from the screen SAPMV45A 4001" with message no 00344 . There is an SAP note 785000 to handle this type of error message which has been already implemented. Still we are encountering few IDOC error's  at the time of sales order creation. The IDOC reaches status 51 throwing the error which is again reprocessed through BD87 .
    We are unable to replicate the similar scenerio in Development & Testing systems as it works fine.
    Can any one kindly advise how to eliminate the error "No batch input data from the screen SAPMV45A 4001" message at the time of Incoming IDOC processing.
    Thanks in advance.
    Best Regards
    Sateesh

    Dear Sateesh
    Check this link where the same topic was discussed
    [ VA01/VA02: batch-input error in IDoc processing|http://www.sapfans.com/forums/viewtopic.php?f=21&t=313032]
    thanks
    G. Lakshmipathi

  • Inbound Processing of iDoc Status Message

    Silly me - I thought this would be simple ...
    I am currently changing our bank interface from a customized ABAP solution to use more standard SAP utilities (particularly iDocs).  I have the configuration set up to use the PAYEXT message type sending PEXR2002 iDocs to a file port.  Our bank is receiving these documents and is returning an iDoc status message containing the status of each payment iDoc that they received from us.
    My problem is that I can't figure out how to get these status iDocs to update the status of the corresponding PEXR2002 iDoc.
    I am trying to execute an RFC interface to apply these status messages to my system using the following OS command:
    D:\usr\sap\VPR\SYS\exe\uc\NTAMD64\startrfc.exe -3 -d RT2 -u xxxxxx -p xxxxxx -c 220 -h SPR32K36 -s 00 -F EDI_STATUS_INCOMING -E PORT=ZFI_INT003
    The error message that I receive when this is run is:
    RFC Call/Exception: SYSTEM_FAILURE
    Group             Error Group 104
    Key                RFC_ERROR_SYSTEM_FAILURE
    Message        Status record 1 is invalid (TABNAM: 'EDI_DC40')
    The port (ZFI_INT003) is the file port that is configured for the outbound file.  in WE20, this port has the "Status File" tab set to use the logical file name where the status file is being stored on the server.  the startrfc command is connecting to the SAP system and opening the status file.  I'm not sure where I'm going wrong here. 
    Can someone please help get me pointed in the right direction?  I've obviously missed something here.
    Thanks,
    Glen

    Hi,
    call function modules:
    EDI_DOCUMENT_OPEN_FOR_PROCESS
       EDI_DOCUMENT_STATUS_SET
       EDI_DOCUMENT_CLOSE_PROCESS
    kind regards,
    HP

Maybe you are looking for