Skip to Content

Symptoms

Some workflows stopped. Deadline already passed, but workflow doesn’t go forward.

Workflow has an “Active” status, no error is visible.

What has happened

The Workflow had an inactive version in the system for a while after a transport.

When deadline monitoring program has run (and it runs in every 3-5 minutes) all deadlines were set to “Error” Status.

However this cannot be seen in the Workflow log.

Check and fix

Activate the inactive Workflow.

Table SWWWIDH – Workflow Runtime: Deadline Monitoring of Work Items

Select all entries where Field STATUS is ’02’ – Error.

Set field to ’01’ – Active for all entries and save.

Workflow deadline monitoring program will run as scheduled and try to execute all the workflows you have just enabled.

The workflows where the workflow was fixed will go forward.

The workflows where the status was really error will get the status error in Table SWWWIDH.

The procedure will fix the workflows what need to be fixed and will not mess up those what should be faulty.

To report this post you need to login first.

5 Comments

You must be Logged on to comment or reply to a post.

  1. Peter Jonker

    And what if there is no entry anymore in table SWWWIDH ?

    The deadline monitoring job has crashed and now the deadline is never ending and the table is empty.

    (0) 
    1. József Dörnyei

      This is not supposed to happen. The Workflow engine programs are very robust and catch all catchable exceptions. Unfortunately there are the ones which are not catchable…

      You can restart the workflows – if possible, manually stop wait – if possible.

      You can maybe fill table SWWWIDH and execute deadline monitoring, but I have not tried this method and don’t know if it works or not.

      (0) 
      1. Peter Jonker

        Hi Jozsef,

        It happened in production. Fortunately we have archived the messages so we can delete the workflow and send all the messages again (collect pattern with deadline).

        Thanks,

        Peter Jonker

        (0) 
        1. József Dörnyei

          Hi Peter,

          Sorry about that.

          We have run this method in our about 100 live systems and the error you described never happened.

          I wanted to update the post with a warning to download the table first, but cannot change the post.

          The error happened probably because there is at least one workflow with uncatchable system error inside.

          József

          (0) 
  2. Jocelyn Dart

    Hi folks

    There’s a follow-on discussion about this in the comments of this blog…

    Don’t try this at home: Why you should never physically delete workflows

    We understand why Jozsef did it this way but it’s certainly not recommended and has some significant risks associated with it.

    The message from SAP is always – never change tables directly.  This can cause instability.

    The essence of this problem is that a workflow was not transported correctly – which is why the workflow was inactive.  Better to:

    * Block creation of new workflows before transport (i.e. block delivery of events)

    * Check your transport logs after any transport

    * Restart workflow system

    Making sure of course that you are using transaction SWEQADM to capture any events not delivered so they get delivered when workflow system is restarted.

    Rgds,

    Jocelyn

    (1) 

Leave a Reply