How to update the status of Outbound IDOC in case of error

I want to know about how to update the status of Outbound IDOC in case of error.
I am using message control functionality here.

HI,
If u r using the standard message and basic type
u can do it in the FM attached to the basic and message type.There u need to write ur own message instead of standard SAP message..chek if there r any userexits available in the FM..where u can overwrite ur own message ..
If u r using the Zmessage and Zbasic type
then u need to declare an internal table of EDIDS structure and then append ur message to the internal table..
idoc_status-docnum   = idoc_contrl-docnum.
  idoc_status-msgty    = <message type>
  idoc_status-msgid    = message-id.
  idoc_status-msgno    = message-number.
  idoc_status-msgv1    = message-message_v1.
  idoc_status-repid    = sy-repid.
  idoc_status-status   = <give the error status>.
  APPEND idoc_status.
Reward if u find useful
Regards,
Nagaraj

Similar Messages

  • How to create the material using outbound IDOC

    Hi all,
    how to create the material using outbound IDOC.

    Hi..
    follow the steps...
    1) create a partner profile for material
    2) create a material
    3) go to transaction BD10 , give material no  and then execute.
    4) go to transaction WE02 to chk the status.
    if you want to send Outbound idoc automatically once the material is cretaed then use change pointers concept.
    please get back  to me if you need any assisstance further.
    Regards,
    Lokeswari.

  • Error while updating the status record of IDOC in SAP

    Hi All,
    I am facing this problem. I have done outbound processing and IDOC was sent successfully from SAP to EDI system and it was processed in EDI and now EDI system wants to send the status back to SAP with a status message and the status number that we are using is '24' and we have mapped all the fields in the status table EDIDS and made sure that EDI system sends all those and I think Counter field can not be determined by EDI system so EDI system used the counter '1' since it can not determine how many counters are already there in SAP and unless we pass the value to this counter field we were getting the error. After passing all the values the status of the IDOC is updated with the status '00' instead of '24' and we do not know why it is happened and I would like to know how SAP converts the status record that is received from the EDI system.
    Please let me know how the status record will be translated into SAP from EDI system and I ahve followed basically EDIDS structure and the IDOC status is updating in SAP but with wrong status number and the alignemnt also missing in SAP fields like if I give some text in the EDI it is splitting and storing in 2 fields.
    Please help me in this and I think I have explained the problem in a detail manner.
    Thanks,
    Ramesh.

    Hi Naresh,
    Thanks for the reply and my question is since EDI system is able to send the status back to SAP from EDI system and only problem is it is updatinf the status wrong and I have checked the EDIDS table also and the entry is creating with another counter and please confirm me that it is because of EDI does not support the status record update so that I can confirm to the client that there is nothing wrong in the way SAP functions and EDI system can not update the status code in the SAP.
    Thanks,
    Ramesh.

  • How to check the status of an IDoc in the Target system

    Hi Experts,
    we are using a self-made program to send Material and BOMs from Client A to Client B into the same ERP System.
    How can I check the status of an IDoc in the Target Client B (like BD87 - ALE Monitor) ?
    If you have some examples or Function, please give me the information.
    Rewards if helpful.
    Regards,
    David

    Hi David
    As mentioned in the earlier reply you can check your status with tcodes:-BD87,WE02,WE05.What i guess from your querry is the staus of your idoc whether posted or not in target client B.Check in the target client for the message type which you are using (since its an program that means you must be using an customised idoc type or standard) .You might have maintained Basic type tcode:-WE30.Give in your messagetype,Basictype,Created at and executed using tcode :- BD87.The prerequisites are you need to create an Partner Profile(WE20) .For this you need to create to provide in your message type and Process code(we41,we42,we57).If you have to create an process code for customised one(se37) .You need to actuivate the idoc inbound processing .If you are using a file in your file make it sure the port is being maintained for the same to chek for unicode format in tcode :-WE21 (check or uncheck).
                    For standard BOM i recon you are using message type :-BOMMAT  and Processing code as:-BOMM.Its always advisible that instead of using an whole abap program you need to have an ETL tool that would take care of the extraction of data provided your client do have existing Legacy system in its place since it would be much faster and easier.
    Regards
    Somnath

  • How to update the status of Credit memo request as "Close" by putting reason of rejection

    Dear All,
    Our requirement is to close credit memo request, We already cancelled the subsequent document i.e. billing. In credit memo request we are trying to close it by putting "Reason of Rejection", but instead of closed is coming as " Being Process". I already did the required configuration at Item Level for G2N in VOV7, but still the status is "Being Process".
    Please let me know if I m missing config.
    Thanks,
    Sumeet Sah

    Hi
    Check this below link. I had faced this issue years ago and got a strange solution which is still applicable.
    Open status of Credit Memo after rejecting all line items
    Thank$

  • How to get the Status of an Idoc of successfully received in remote system

    Hi,
    I have created a report which post an idoc from system1 to remote SAP system2.
    But i want to get the final staus of posted idoc in system1 that the idoc posted was reached successfully to SAP system2  with status 53 only.
    Actually i need to show the final staus of the posted idoc in system 1.
    Is there any kind of acknowlegement can be received for an idoc posted that idoc has been reached to reamote system(SAP system in my case) sucessfully?
    If yes then how we can do that.
    Kindly reply.

    HI,
    you need IDoc Type ALEAUD.
    1. BD64 and maintain ALEAUD Messagetype to your distribution model
    2. WE20 - assign ALEAUD messagetype to your partner profile (in sending and receiving system)
    3. call report RBDstate to send ALEAUD message IDoc.
    note: the receiving system from the source IDoc sends the ALEAUD to the sending system.
    Another way:
    BDM2 - you can see IDoc number and status from sending and receiving system
    Regards,
    Gordon
    Edited by: Gordon Breuer on Oct 8, 2008 2:35 PM

  • 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

  • How to change the status of updated record?

    Hi All,
    how to change the status of updated record?
    new record should be active version(X) and old version will be deleted.
    Plz suggest..
    Thanks in advance...

    Steve,
    In the actual question, you mentioned that the old record needs to be deleted and hence the solution provided.
    Now, you are talking about field. May I know which field are you talking about??
    Jst get in to ABAP Editor and try debugging the code with the solution provided and let us know if that is working fine or not.
    Also, I recommend you to take a look at the transaction ABAPDOCU. There you wil find hell lot of examples explaining all the scenarios. You will get a good idea .
    Please check that and try to implement it yourself. You will be able to make it after doing mistakes.
    If you stuck up again after many attempts, paste your code here. We will help you out
    Hope you got my concern.
    Thanks,
    Babu Kilari

  • How to change the status of IDOCS from 29 status to 53

    Guys
    how to change the status of IDOCS from 29 status to 53
    Thanks in advance

    Hi Krishna
    IDOC_STATUS_CONVERT Use this FM and reward me

  • To update the status of the Sale Order through Pl/sql(backend)

    Hi folks.
    May I how to alter the status of Sale Order from 'Entered' to 'Awaiting for Approval' when the sale order was booked.After approval only it needs to change into 'BOOKED'.
    Requirement Scenaria as follows:
    Activity Status
    1) Sale Order Creation Entered
    2) Booking the Sale Order Awaiting For Approval
    3) After Approved 'Booked'
    or
    4) After Rejected Rejected --- should not be available for pick and ship.
    Please tell me the solution to alter the status and I had already tried both normal update statement and update through sale order API.Both didnt work.
    kindly find me an appropriate solution
    Note:I had already altered the OE order header workflow to go for approval when Sale order booked
    Thanks in advance

    Apparently, your Sales Order Type has Approval Workflow associated. Have the approver approve it from the Notifications window. Alternatively have a script to approve the workflow with userid as the approver's, in order for approval and booking.
    In case of forced Booking, use OE_ORDER_PUB.PROCESS_ORDER API to pass the Order Details along with BOOKED_FLAG='Y' and FLOW_STATUS_CODE='BOOKED'.
    let me know,
    Dip

  • How to change the status of a production order

    Dear All,
    May i know how to change the status of a production order.I want to de-active the status like OPGN (Operation generated).This status is updated as there was no routing assigned to that particular production order during its creation
    Thanks and Regards,
    Varun Siddharth

    Dear,
    When you create a production order, an operation created by the system is generated automatically if no routing is used for the creation. As a result the order header receives the status HOGAN; the operation created automatically also has this status.
    If you delete the operation created automatically and then do not have the status HOGAN.
    To avoid this maintain the Routing for the material or delete the setting of default operation from OPJG.
    Regards,
    R.Brahmankar

  • How to change the status of Serial number

    Hi Experts,
    Would you please help in solving this problem.
    How to change the status of Serial number?
    I have material stock in a storage location: recieved from Intercompany through outbound delivery, when PGIed material document is created when I am checking the serial numbers of the recieved ones status of the serial numbers are ESTO, I want that into AVLB.
    How can we do that?
    Regards
    Sri

    Hi,
    Go to IQ02 on Header tool bar you will find edit(2nd option on header tool bar) => edit manually=> Click from Customer=> and then to Stock you will find the expected results...
    Generally Serial number Status use to change along with the movement of material linked with that serial number... So if you are changing serial number with manual trasaction then please remove all the details from IQ02 like plant storage location Batch and master batch so that i will not provide you error while doing next transactions.
    Regards,
    Ninad Kshirsagar

  • How to know the status of concurrent program from back-end in oracle apps

    Hi,
    Can you please explain me step by step how to know the status of the concurrent program from back end in oracle apps.
    Thanks,
    Raj

    When a record is being updated by a form, if you create a Pre-Update trigger on the block, the trigger will run for each record being updated.
    Same thing happens with a Pre-Insert and Pre-Delete trigger.

  • How to update task status from custom task in state machine workflow

    i m using custom task for state machine workflow
    i am using
    if(this.onTaskChangedSupervisorAction_AfterProperties.ExtendedProperties["Workflowstatus"].ToString().Contains("Approved"))
    if above is true moving forward its working fine but i want to update the status field of task as i can update the title and due date for the task but how can i change the status once approved it
    should show the status as approved it's only showing in progress
    this.CreateTaskSupervisorAction_TaskProperties.Title="supervisor task"
    MCTS,ITIL

    If your task shows In Progress state then I think you need to look at your workflow and make sure you are using Complete Task activity and if you are already using Complete Task Activity then verify the Correlation ID. Ideally you are not required to set
    this value in workflow. You simply use the Complete Task Activity.
    If you are running into issue where your workflow is staying in In Progress state even after the task is complete then you can look at the following blog post.
    How to programmatically complete Approval workflow task
    Amit

  • How to update the table value in the valuechange event?

    I have an input field in the datatable with the valueChangeListener
    <rich:dataTable id="cart" value="#{cart.cartList}" var="item">
    <h:inputText value="#{item.cost}" id="qty" valueChangeListener="#{items.updateCost}" onchange="submit()">
    <h:outputText value="#{item.errorMsg}"> </h:outputText>
    in the backing bean
         Item item = (Item) model.getRowData();
    // do some update, if the cost too larger, change to max_cost
         item.setCost(max_cost);
         item.setErrorMsg("Error Msg");
    After calling the valuechange method, the screen output doesn't update the cost.
    How to update the table value in the valuechange event?

    As you're misusing the valueChangeListener to set another input field, you need to skip the update model values phase. Otherwise the value set in the valueChangeListener will be overridden by the submitted value. You can do this by calling the FacesContext#renderResponse() inside the valueChangeListener method. This will shift the current phase immediately to the render response phase, hereby skipping the update model values and invoke application phases.

Maybe you are looking for

  • How to key in and retrieve data?

    now i got this code..can pls teach me how to key in the data n retrieve data from the databasE?wat code should i need to use..got any reference?how can i edit the data too?and how i retrieve the data from database( Access) and display in my table?can

  • Authorization on initiative and item creation

    Hello! Dear Experts, Could you please comment on back-end RPM role customizing and front-end object authorization to do the following: 1. the portfolio structure of buckets contains two sections on the fists level: the first of them is to assign init

  • Itunes Store does not come up when I click on it.

    Hi All Frustrated with this one. When I open itunes and click on store, a prompt comes up saying "Itunes could not connect to the itunes store. Make sure your network connection is active and try again". Even though I am connected to the net it still

  • Can i use flash professional on my i pad?

    i would like to use the flash professional on the i pad is that possible ?

  • Why don't all of my contacts show in my contact list?

    when i'm writing a text i can add contacts by typing in their name in the search bar at the top, however alot of these copntacts dont show up in my contact list my contact list only shows 68 contacs however there should be more like 150 in there! can