Skip to Content
author's profile photo Former Member
Former Member

Outbound IDoc Error Handling via Workflow

Hi tech guys,

I have been searching for hours on SDN for a solution to my problem, maybe someone can point me in the right direction.

I have inbound IDoc error handling via workflow setup and working correctly.

I have copied some of the standard tasks and created my own with more specific details and info in.

I now need to do the same for the outbound IDocs.

I've found the standard EDI outbound task (via WE40) and it is TS00007989.

I've tried to create an error situation that would provoke this work item to be run but can't seem to get it to work.

I can run the workflow task through the work item test tool (SWUS).

I have created all correct partner profiles and assigned post-processing agent (User name) and all outbound message types are correct.

To create the error situations I have done the following:

<b>Scenario A:</b>

1. Removed from the partner profile the CREMAS outbound message type.

2. Copied an existing working CREMAS IDoc and sent for standard outbound processing.

3. As expected the IDoc fails with "<i>entry in outbound table not found</i>" (status 37) but no workflow is generated!

<b>Scenario B:</b>

1. Correctly working partner profile restored.

2. CREMAS IDoc copied (in WE19) and messed with to make the syntax incorrect.

3. IDoc sent for standard outbound processing (immediately).

4. As expected the Idoc fails with "<i>syntax error in idoc</i>" (status 26) but no workflow is generated!

Have I missed some obscure customizing here.

I have been through SWU3 and checked the workflow customizing and there is no more customizing to be done! We're all out of customizing 😊

Please help.

Add a comment
10|10000 characters needed characters exceeded

Assigned Tags

Related questions

5 Answers

  • author's profile photo Former Member
    Former Member
    Posted on Sep 18, 2006 at 07:14 AM

    All,

    I have finally managed to get this one sorted.

    Who says persistence never pays!

    I thought that it would be well worth posting it here for reference.

    There were two issues that were preventing me from getting a workflow.

    1. You <u><b>MUST</b></u> ensure that the partner profile is registered/setup in the distribution model (tx: BD64).

    2. tx: WE19 will <u><b>NOT</b></u> perform the correct processing on an outbound message to enable a workflow to be created in the event of an error.

    You must use the correct transaction in respect to the message that you are trying to generate.

    i.e. I could not get WE19 to generate a workflow when I used standard outbound processing on a CREMAS message that was to fail due to the partner profile not being setup.

    However, using XK02 and actually performing a change to a vendor, then running RBDMIDOC generated the workflow correctly.

    This solution took me at least 3 working days to find out.

    I have suggested to myself that I should get a tattoo with all the things that WE19 doesn't do, since I have spent the same amount of time in the past working on trying to get WE19 to start a sub-system after processing an IDoc.

    It doesn't do that either.

    Good luck peoples.

    Add a comment
    10|10000 characters needed characters exceeded

  • author's profile photo Former Member
    Former Member
    Posted on Aug 25, 2006 at 11:56 AM

    Hi,

    Having identified the standard task, go to PFAC and identify to which agent is the standard task configured. Sometimes necessary configuarations have to be made in IMG.

    Reward if helpful.

    Regards

    Add a comment
    10|10000 characters needed characters exceeded

  • author's profile photo Former Member
    Former Member
    Posted on Aug 25, 2006 at 11:56 AM

    Have you maintained the respective Agent in the partner profile?

    Regards,

    Vishal

    Add a comment
    10|10000 characters needed characters exceeded

    • Former Member Former Member

      Hi Matt,

      I don't know how I can trigger the event.

      I am using the CREMAS message type so I would presume that the BOR would be IDOCCREMAS, but as you said there is no specific trigger on the TS00008070 task.

      The "<i>ALE, EDI & IDoc Technologies For SAP</i>" book that I have just says that there should be a workflow created.

      Maybe there are certain tasks that run for the EDI admin that are triggered outside of the application processing workflows.

      Thanks,

      Darryl

  • author's profile photo Former Member
    Former Member
    Posted on Oct 06, 2006 at 11:44 AM

    Hi....

    I have got a scenario similar to yours. I want my workflow to be triggered whenever an outbound IDOC gets into error state.

    It is handled in SAP using a standard task 'TS00007989'.This task doesn't have any triggering event associated with it.

    This task (TS00007989) is triggered in SAP by using a standard report program (RSEWFERR) and is associated with the eventcode 'EDIO'. All the eventcodes and the corresponding tasks to be executed are maintained in the table TEDE5.

    I tried inserting my workflow-id in the table (TEDE5) in the place where the standard task (TS00007989) was. It didn't triggered my workflow. But stopped the standard task (TS00007989) from getting executed.

    Can u suggest me a way out or Can u help me with a Business object and a triggering event for an outbound idoc of any message type.

    Thanks in advance..

    Balasubramanian Ravichandran.

    Add a comment
    10|10000 characters needed characters exceeded

    • Former Member Former Member

      Sunil,

      I have developed a report which retrives data from idoc tables and sends notification in case of error. But the report has to be scheduled to run in the background for continuous interval of time.Its a perforamance issue.Hence I am yet to figure out any solution for this.

      Once found i ll let u know.Any suggestions from u is also welcome.

      regards,

      bala

  • author's profile photo Former Member
    Former Member
    Posted on Jan 19, 2007 at 06:06 PM

    Hi Darryl,

    Could you please provide me some documentation on how you did your IDOC error handling via workflow. We are mainly concerned with Inbound IDOCs.

    Thanks...

    Add a comment
    10|10000 characters needed characters exceeded

    • Former Member Former Member

      Tony,

      For our inbound IDoc error handling we did the following:

      1. Setup your partner profile to work as usual (including the distribution model).

      2. Set a specific user in the "Post Processing Agent" field for the partner profile (WE20).

      3. Perform workflow customising in SWU3 especially "Maintain Definition Env -> Prefix Numbers" and "Maintain Additional Services -> Activate Send to Objects and HR Objects".

      4. In SWDM (workflow builder), choose a search range.

      Select the "Object" tab and enter

      category: "BOR Object Type"

      Obj Type: "IDOCAPPL"

      Method ID: "ERRORPROCESS"

      and

      category: "BOR Object Type"

      Obj Type: "IDOCAPPL"

      Method ID: "INPUTFOREGROUND"

      NOTE: IDOCAPPL is the root IDoc business object, but depending on the IDocs you are wanting to monitor, you may have to use a specific IDoc object e.g. IDOCMATMAS etc. Your developers/customisers should know the business object used. It's just a matter of using the correct Method Id then. For IDOCMATMAS it is INPUTFOREGROUND.

      If you want to change the standard workflow tasks you can customise the existing ones by copying the following standard tasks to your own tasks (based on IDOCAPPL):

      TS00007989 name it: ZErrorProcO

      TS00008070 name it: ZSynErrorO

      TS00008074 name it: ZSynErrorIn

      TS00008068 name it: ZErrorProcIn

      TS20000051 name it: ZIDOC_APPL_E

      5. Before any of the existing tasks can be executed by any user, you MUST ensure that they are of type "General Task". This means that any user is a possible agent:

      When editing each of the tasks, select "Additional Data -> Agent Assignment -> Maintain" and click the Attributes button to set the task as a "General Task".

      6. If you have copied the standard tasks, you also need to change the "Process Codes" table in WE40 to reflect the new tasks.

      7. Make sure that the workflow linkage is actived (ticked) for the IDOCAPPL.INPUTERROROCCURED method (TS20000051) in transaction SWE2.

      8. Test by creating an inbound error. You can use WE19 for inbound simulation (it doesn't work for outbound IDocs properly as WE19 doesn't call the subsystem).

      You should see a workflow created (one of the ones listed in step 4) and placed in the specified user's Business Workplace Inbox. You should also see the workitem listed in SWI1.

      Let me know if something needs clarifying.

      Regards,

      Darryl

Before answering

You should only submit an answer when you are proposing a solution to the poster's problem. If you want the poster to clarify the question or provide more information, please leave a comment instead, requesting additional details. When answering, please include specifics, such as step-by-step instructions, context for the solution, and links to useful resources. Also, please make sure that you answer complies with our Rules of Engagement.
You must be Logged in to submit an answer.

Up to 10 attachments (including images) can be used with a maximum of 1.0 MB each and 10.5 MB total.