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

Migration of Open Tasks when BPM Processes Change during major releases


This is the most often scenario faced by many project teams during Go-Lives of BPM Processes.

We would like to migrate BPM tasks from older BPM processes to newer BPM process. And there is substantial changes done between two releases.

Though I am aware that older BPM tasks created get suspended, is there way to do the following:

1. Use any migration tools to migrate old BPM tasks to newer BPM task

2. Simultaneously have both Older and Newer BPM Processes run in Environment, let them co-exist till the old BPM tasks get completed

What is the recommended approach for these kind of situations, when its not possible to either of the above activities.

Thanks and Regards,


Add a comment
10|10000 characters needed characters exceeded

Related questions

3 Answers

  • author's profile photo Former Member
    Former Member
    Posted on Oct 01, 2013 at 07:17 AM

    Hi Srikant,

    we were facing the same issues. We have a solution for this, but it has some prerequisites to make it work. I actually talked about it at the DSAG (German SAP User Group) conference (see blog) and promised the audience to blog about it in more detail, but haven’t yet found the time to do so.

    First very important is to understand how the life cycle works. There are two very important documents to read:

    With complex processes and major changes, it is very complex to maintain multiple versions. If you read through the above mentioned documents that becomes very clear. Also there are other complexities, for example code reuse, data, support desk issues or user training. There are also some restrictions running multiple versions of the same process (SAP Note 1865683)

    So here is in short what we did.

    We keep all our process data outside the process context in a database including the state, i.e. the current process step. When we deploy a new major version, we cancel all running process instances and then restart them with the new process model. To restart processes we use the SAP scheduler which starts a process if a specific status value is found.

    If you don’t have your process data easily available you could use the process export function in the NWA. The export is an XML file that you could possible parse, but I haven't actually tried this method.

    In the process model we have an exclusive choice gateway where can import a process to specific process step. This happens right at start of the process. The gateway evaluates the status value mentioned above to decide where to go.

    I hope to find the time to write the blog soon. Here I could give you a complete example how we do the reimport of processes.

    I’m also very interested in other ways to achieve this, so this should be an interesting discussion.



    bpm_import.PNG (14.8 kB)
    Add a comment
    10|10000 characters needed characters exceeded

  • author's profile photo Former Member
    Former Member
    Posted on Sep 27, 2013 at 07:47 AM

    Hi Srikant

    The second approach you are describing actually is the only one I am considering feasible. SAP NetWeaver BPM is not supporting "patchability" of processes. I.e. existing process instances and task instances are continued with the exact same version they have been instantiated with. There is one subtle difference with nested processes, but I do not want to go into too much detail here.

    I am wondering about your statement that task get suspended. Are you able to share more details on your observation?

    Moreover, I would appreciate if more folks with project experience could share their experiences w.r.t. this question.

    Cheers, Benny

    Add a comment
    10|10000 characters needed characters exceeded

    • Former Member

      Hi Benny,

      Thanks for responding to my query. To answer your query on task suspension - whenever we are having major releases, we make changes in both main proesses and nested processes as well.

      So whenever a new BPM version is brought in environment, old requests or tasks are getting errored out or suspended.

      Given that there is major difference between two bpm processes - how is it possible to support 2 different versions of simultaneously.



  • Posted on Sep 30, 2013 at 12:26 PM

    Hi Venkata,

    As for this moment, SAP has not provided any such tool.

    Old instantiated processes will always run on older deployed version and the newer ones on the latest deployed version.

    You can give a try with BPM API using the 'ProcessInstanceManager' API though. But I don't think it provides managing the deployment versions. Will need some research efforts.

    Let us know if something works out. Will be helpful.



    Add a comment
    10|10000 characters needed characters exceeded

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.