cancel
Showing results for 
Search instead for 
Did you mean: 

Cancel message with errors - How to automate this?

Former Member
0 Kudos

XI / PI SDN Community

I think that because of basis team settings every time a message fails to pass through the pipeline (for example a mapping error) XI tries to process this message over and over again for days!

Assuming that basis is not going to change any configuration on their end: Is therer a way to create a job (TCODE sm36) to do this cancel for me? - I mean I have access to go and manually cancel the message with errors tru the moni.

Regards,

José Francisco

Accepted Solutions (1)

Accepted Solutions (1)

former_member206760
Active Contributor
0 Kudos

Dear Jose,

Hi this is Tarang ...

For cancelling messages on Java engine ( ones that you see on RWB )

1. There is no standard program which would allow you to cancel the messages here

2. you can only set a maxim retry interval...i.e how many times a meesage in error should be retried foe sending...this setting can be done in transaction sxmb_adm....there is a parameter called IS_RETRY for this..

For cancelling the messages on ABAP engine ( ones that you see in MONI)

1. You can cancel them using the report rsxmb_cancel_messages ...but dont use this report independently...

coz there are some chances ..due to which you are getting a message in error in moni ..but the message is restartable......then if you directly cancel it , it is not correct

2. you cna club the above report with rsxmb_restart_messages...i.e you can create a job sequence where 1 step would be scheduling thee program rsxmb_restart_messages and then the ones that are not restarted properly ...yu can cancle using the second step in the sequence ....i.e rsxmb_cancel_messages

But be it ABAP / JAVA engine every XI landscape has many of the EOIO interfaces where in the concept is that if the first message in the queue gets stuck ...the message behind that should also get stuck....if you cancel message automatically (say using the above report), there are chances that particular message was configured for EOIO and the message behind that is actuaaly not meant to move ahead..but once you cancel the first message3 the other will go.....which is wrong and against the laws of EOIO...

hence SAP suggests " no automatic cancellation of message neither at ABAP nor at JAVA level should be done"

SAP says that manual cancellation of messages is included in the daily maintenance task of XI

you can obviously play with the number of retries using entry IS_retry

Hope this helps

Edited by: Tarang Shah on Mar 6, 2009 11:07 AM

Former Member
0 Kudos

Hello Tarang,

Thanks for the comment (extended to everybody who has helped

My context is that we dont have a 24x7 team that can go and manually cancel every message that fails and taking into consideration that a message can come tru my pipeline at any time.

Therefore, my problem is basically that my support team receives up to 10 alerts for the same error because of the retries XI is doing with the message in error.

Would you (or someone from the community) know how to define this retry maybe specifically to my namespace / interface name?

So by now what I was thinking of schedule a periodic (every X mins) job with the RSXMB_CANCEL_MESSAGES using a variable for specific inteface name + namespace.

However this may lead to problems if the message failed because of a system outage rather than a map error because of file contents and if I understood correctly once you cancel the message it cannot be restarted.

former_member206760
Active Contributor
0 Kudos

Dear Jose,

I doubt there is any report that can restart only particular interfaces. but you can control number of re-tries generally by changing parameter IS_RETRY in sxmb_adm

yes..you cannot restart the messages once they are cancelled..

RSXMB_CANCEL_NOT_REST_MESSAGES : report canccells only non-restaartable messages..

but that too should not be used as it goes against the EOIO principle explained by me above..

Hope this helps

Tarang

Edited by: Tarang Shah on Mar 7, 2009 11:43 AM

Former Member
0 Kudos

"Therefore, my problem is basically that my support team receives up to 10 alerts for the same error because of the retries XI is doing with the message in error. "

You can choose to "suppress multiple alerts" for the same error from RWB - Alert Configuration. That way, your basis team will only receive one alert instead of multiple for every error occurence.

Kind Regards,

Gökhan

Former Member
0 Kudos

All,

Thanks for your inputs

Well, IS_RETRY seems to be a global configuration value, so I will affect other interfaces if I change it...

I was thinking in other option: Is there any event to catch one a message fail? Maybe I can create a job that runs after that event

To clarify... my messages are independent from each other, so if one fails, well that's it. It should be reported to the support team and they send the info back to the sender. Does my job with the RSXMB_CANCEL_MESSAGES still go against EOIO?

Thanks!

-Jose Francisco

former_member206760
Active Contributor
0 Kudos

Dear Jose ,

Try ...the "suppress multiple inputs" as specified by gokhan ....

Also see if program RSXMB_CANCEL_NOT_REST_MESSAGES has option to be schedule for your interface +namespace ..i presume then it should not tamper with the EOIO concept

Edited by: Tarang Shah on Mar 8, 2009 6:29 AM

Former Member
0 Kudos

Please check the report RSXMB_CANCEL_MESSAGES, it has a checkbox "EO only" so that it won't affect your EOIO messages.

Regards,

Gökhan

former_member206760
Active Contributor
0 Kudos

Dear Jose,

Even there is an option of "EO only" in RSXMB_CANCEL_MESSAGES ....there are chances that the message was restartable and this program cancelled it..which obviously should not happen

I checked the program RSXMB_CANCEL_NOT_REST_MESSAGES which only cancels nonrestartable messages but then it does not have the "EO only " chkbox..

SO i pressume there are two options only

1. use "suppress multiple chkbox"

2. use both the jobs "rsxmb_restart_messages" and "rsxmb_cancel_messages" in sequence...wherein the 1stprogram will restart all the messages where it is possble and after that for the messages where it was not possible would be cancelled by "cancel_messages.

again the option two aboce will only work with IE errors for all the erros occuring on AE/RWB you have to set the IS_RETRY paramter to control the number of retries

if you just want to save your Basis guy of multiple emails

set the suppress multiple chkbox

Answers (4)

Answers (4)

SudhirT
Active Contributor
0 Kudos

Hi,

Run the reports for various messages

RSXMB_CANCEL_MESSAGES : Cancel Messages with Errors

RSXMB_CANCEL_NO_COMMIT_MSG : Cancel Message Processing for Messages Without Commit

RSXMB_CANCEL_NOT_REST_MESSAGES : Cancel XI Messages With Errors That Cannot Be Restarted

Thanks!

former_member192295
Active Contributor
0 Kudos

Hi,

In SXMB_MONI window errors we can restart through manually (through restart option) or execute standard SAP program RSXMB_RESTART_MESSAGES or if you want to cancel we can do through RSXMB_CANCEL_MESSAGES . Through this program we can restart or cancel message in ABAP engine but adapter engine level i think we don't have any option to delete, we need to do manually. Find below link for more help

/people/gourav.khare2/blog/2007/12/21/mass-cancellation-of-error-messages--xi

Former Member
0 Kudos

Hi Jos,

Try out with the RSXMB_CANCEL_MESSAGES . Here you can schedule it according to your requirements.

regards

Ashwin Kumar Dhakne

Edited by: ashwin dhakne on Mar 6, 2009 3:40 PM

Former Member
0 Kudos

Hi,

you can specify in you configuration how many retries the system should do if en error occurs. So the system should not do the retries for days!

I am not aware of any automatism for canceling error messages in XI.

Regards,

Kai