cancel
Showing results for 
Search instead for 
Did you mean: 

BPM: How to Raise Alert and Restart together ?

Former Member
0 Kudos

The requirement is like this.My Integration Process receives a message, performs a 1:N split and undergoes further processing using Transformation steps. I want to ensure the following in case any one of the Transfofrmation fails(Because of some coding error in the step):

1. Raise an Alert

2. Should be able to restart the Process again from the

failed step once the Transformation code is fixed.

3. To raise an Alert for any file adapter level errors,

and to restart the processing of the message once the

file adpter error is resolved

I have tried the following approaches, but it does not help me achieve all of the above condition.

I have put the Transformation step in a Block and introduced an exception branch with one control step which raises an Alert.

Issue: This will raise an alert when the step fails, but it ends the BPM with a Processed status and hence I will not be able to restart the BPM.

So I put another Control step immediately following the Alert step which raises an exception. However I have not handled this exception. Hence when a step fails, I am able to raise an alert as well as the BPM gets errored out.

Issue : However, now when I restart the process in swf_xi_swpr, The process restarts with the Control step which was used to throw exception. It does not restart with the Failed mapping step.

To raise Alerts for Adpter level errors which might occur before the message comes to BPM, I have defined alert category and rule in runtime workbench. However, the Alerts are not triggered when the file adapter fails.

Please share any ideas on how to achieve all the 3

requirements together.

Thanks in advance.

Accepted Solutions (0)

Answers (1)

Answers (1)

Former Member
0 Kudos

Hi Jaymin,

The only safe solution is to put your block into a loop and set some positive status (e.g. in a simple typed container element) after your transformation and alert step - or set a negative status in your exception branch. Then you can use this status in the condition of your loop to terminate or to reprocess it. This means unless you do not get your positive status, your transformation and alert step will be executed again and again.

Best regards

Joachim

andreas_scherf
Explorer
0 Kudos

Hi Joachim!

I was facing a very similar problem in my BPM modelling.

Is there really no other chance than to loop (and maybe wait some time) over the critical (e.g. networking down, ...) parts of the BPM to have some active notification via alerts AND a possibility for retry?

In my opinion this would a very inflexible way of doing error-handling stuff - if so - is it about to change in the upcoming releases?

Currently I guess I can have:

a) either ALERTING (by catching exception and raise alert)

OR

b) convenient retry mechansisms via "SWF_XI_SWPR" (by not catching exceptions at all and let the relevant block become "errorenous") ...

Any other suggestions ...?

Many Thanks,

Andy