cancel
Showing results for 
Search instead for 
Did you mean: 

Monitoring BPM & handle error situation

Former Member
0 Kudos

Hi experts;

I`m quite new in defining and using BPM.

I designed a BPM and it works quite well until a error situation occurs.

The reason of the error is already clear. However I have some questions refering error situation of BPM.

1. In the transaction sxi_monitor options "process" & Status "error" the error BPM are not found. If i changed the selection status to "all"

the all BPM including the error BPM are displayed.

How to find only the error BPMs??

2. In BPM I often use mappings in transformation steps.

If there is a mapping error, the BPM doesn´t stop the process. It is rather processed at gets a final error like "not able to send a empty message" in case of

sending a message via Idoc Adapter.

I like to have the same behaviour as with normal messages. (not using BPM) So that the BPM is stopped and i can solve the issue (change mapping programm if necessary) and

continue or if the message is invalid stop the BPM

In the properties of the transformation step, the option createNewTransaction is checked.

Is that behaviour possible? How to achieve that.

3. How to stop/cancel BPM instances manually?

sorry, lot´s of questions.

I hope somebody have some answers.

I already read the help for this issues. Unfortunately there was no solution.

Thanks in advance

Kind regards

Jochen

Accepted Solutions (1)

Accepted Solutions (1)

justin_santhanam
Active Contributor
0 Kudos

Jochen,

>For Question 1

Go to SXMB_MONI_BPE and choose Restart Process After Error

>For Question 3

Go to SWWL and choose the Errord BPM's from there u can delete the Error BPM's.

>For Question 2

If there is mapping error surely the BPM Stops, could you tell us r u using Block step and catching those exceptions?

raj.

Former Member
0 Kudos

Hi Raj;

first of all, thanks for your reply.

Is there no other way stop a BPM in error situation except the transaction SWWL?

Perhaps you know what kind of role I need to use that transaction more specifically what kind of role I should have to monitor BPM?

For Question 2.

My BPM looks like this ...

I´m using a block and all of my steps excepting the receive step are in that block.

I defined a exception handler to handle mapping errors. This throws a alert in error situation.

By the way. is it wright that I have to define a suitable alert category using transaction ALRTCATDEF?

Does the BPM stop, if I don´t handle the error situation?

Hope that my statements are understandable.

Kind regards

Jochen

justin_santhanam
Active Contributor
0 Kudos

Jochen,

I don't know the exact steps of ur BPM, but giving some tips based on ur reply.

Since u said u r catching the exception happened in Mapping, once it catched it will come out of the Block and will continue the next step after the block. What I would suggest u is, in the exception branch Place Control block and say cancel the process , hence the BPM will be stopped and won't continue the next step of the Block. Remember, if u say cancel process the BPM will not be in error state!

raj.

Former Member
0 Kudos

Hi Raj;

thanks for your suggestions.

If I use the cancel step, is there the possibility to restart the the BPM via SXMB_MONI_BPE or not?

You wrote "Remember, if u say cancel process the BPM will not be in error state!"

Where can I check for error BPM? In sxmb_moni option processed there will probably not displayed when I select status "error"

Kind regards

Jochen

justin_santhanam
Active Contributor
0 Kudos

>If I use the cancel step, is there the possibility to restart the the BPM via SXMB_MONI_BPE or not?

No. You can't. Could you plz let us know your BPM steps, so that we can suggest something.

raj.

Former Member
0 Kudos

Hi Raj;

that´s not satisfactorily.

My BPM looks like this.

START receive > BLOCK_START transformation1 > send synchronous > transformation2 > transformation3 > send asynchron BLOCK_END > END

The szenario is ..

1. get a customer order => receive step

2. request additional data from a Third Party System according to the customer order

2.1 mapping Order 2 request Message => transformation1

2.2 send request & get response => send synchronous

2.3 merge customer order & response 2 one message (msg_X)

2.4 mapping msg_X 2 Order Idoc

2.5 send Order Idoc 2 SAP Backend

I hope the szenario is clear.

There are 2 Exception Handler specified. One for Mapping and one for Sending messages (syn & asyn). Both only throw a alert without cancel the BPM.

If there is an error, I want be able to see such BPM instances (maybe in SXMB_MONI_BPE) and restart or stop them.

The BPM should stop at the error step and must not be processed any further.

possible error situations

- Third Party Systems is not reachable

- mapping error

if this is the case, the BPM should stop at this step.

Is that possible?

How to achieve it?

Kind regards

Jochen

Edited by: Jochen Gugel on Feb 13, 2008 4:33 PM

justin_santhanam
Active Contributor
0 Kudos

Jochen

You said u are using two exceptional handler. For which transformations u are using Exceptional handler? For all or any one of it? Your target is the IDOC must not be sent if there is error am I right?

raj.

Former Member
0 Kudos

Hi Raj;

yes u are right. the Idoc should only be sent if there is no error.

on top of this, step b should only be processed if the ancestor (step a) was successful. if step a e.g. transformation1 fails the following steps MUST NOT be processed.

The BPM should end with an error. Further it should be possible to restart or cancel the BPM.

As I sad. I have 2 exception handlers.

One for ALL transformations steps (mappings) and the other for ALL sending steps (sync and async)

Is SWWL the proper way to cancel BPM? Is there no user possibilty perhaps from the workflow protocoll?

Kind regards

Jochen

justin_santhanam
Active Contributor
0 Kudos

Jochen,

I got little bit confused. Ok,lemme clarify something, Why u want to send Alert using BPM? Haven't u configured the Alerts for Integration Engine errors? Is there any specific reason that u want to send Alerts using BPM- I mean are u using any Dynamic text to fill the Container text?

We will give a try, just remove the exception handler and try to run your scenario, and see if u are able to get alerts.

By the way, as far as I know SWWL is the only way to delete error'd BPMs.

raj.

Answers (1)

Answers (1)

justin_santhanam
Active Contributor
0 Kudos

Any updates?

raj.

Former Member
0 Kudos

Hi Raj;

thanks for your suggestions.

I changed my BPM (delete my Exception Handler for ALL transformations) and cause a mapping error.

Actually the BPM gets the error and gets the error status as I like it.

so the first issue is solved.

I tried the same with the sending steps (deleting the according Exception Handler)

Unfortunately this is not possible with synchronous RFC. An Exception Handler is obligatory for this case.

I have the testcase that causes an error while sending synchronous RFC.

There is no special reason why I am sending alerts from BPM.

Is only reason for this probably is that I am not quite familiar with defining and using alerts.

I thought this is the only possibibilty to get informed of a error situation.

How do I use alerts correctly related to BPM?

thanks for your help

Kind regards