cancel
Showing results for 
Search instead for 
Did you mean: 

no event handler created for some FOs

petra_just
Active Participant
0 Kudos

hi experts,

during our user tests, quite a number of event handlers were not created, while others were created. Independently of the fo types, some FO´s event handler creation was skipped (see screenshot) randomly. Who has a tip why that happened. I have created tehm manually and the Messages were still there, but how can I avoid it?

The screenshot has an extract from /SAPTRX/EH_LIST. As you can see, the Event handler for FO 50000965 was created, but FOs 50000966, 500000967 and 50000968 also exist and there is no event handler. the ranges are by FO type, so the FO type is the same.

Is there are Report that I can schedule to re-try creating Event handlers when it has failed?

Thanks fory our help

Petra

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Hi Petra,

I would check:

1) Are there any queues stuck? Check SMQ1 to see if any EHs are stuck there.

2) Check if AO Type Relevance condition is False.

3) Additionally check ST22 for any dumps.

If not, if any EH is missing, goto the FO and manually EDIT something like description in general tab and debug the relevance condition and also see if /SAPTRX/BAPI_EH_POST is called.

I am not aware of any reports to re-create EHs but will check too.

Thanks,

Vishnu

petra_just
Active Participant
0 Kudos

2) AOT condition cannot be wrong as the Event handler is created for some cases and I use the same condition for all FOs

3) no dumps related to EM today and yesterday

1) there are Queues in SMQ1, but nothing Looks erronous. What shall I do to empty the Queues?

Former Member
0 Kudos

Hi Petra,

Select your queues and try to activate them again. Additionally, check SMQR if something happened to EM* or check with Basis and ask them why they are not getting activated automatically.

Thanks,

Vishnu

Former Member
0 Kudos

Hi Petra,

We had this issue earlier in my previous project and found that the queue is ideal state and causing other queues not to process.

1. Go to the queue and click the first queue which is blocking.

2. Double click on TID number

3. It will take you to detail where it is stuck.

4. Shows detail why it is not processing or Can you past the screen shot here? we can check too.

5. Debug the queue to find out why it is not processing.

Possible issue:

1. Event handler was locked when it was trying to update and become idle state.

2. Processing queue resource utilization was higher at the time of queue processing, so it might be went to idle state.

Request the basis team to set the timeout for queue to 1800 secs or 3600 secs, so that the queue will be automatically timed out with error "Time limit exceeded".  Ask the basis team automatically reactivate the time out error queues and it will process next time successfully.

You can setup CCMS monitoring for support team to send an email when there is an error or not the queue processed for longer time.

Regards

GGOPII

former_member190756
Active Contributor
0 Kudos

Hi Petra,

if logging is active for AO Types then check was happened in transaction /SAPTRX/ASAPLOG.

You should also check Outbound and Inbound Queues.

Best regards,

Steffen

Former Member
0 Kudos

Hi Gopi,

Followup question from Petra's "Basis team":

Where can I locate the queues to set the timeout? I find no way to do it in/from SMQ2.

I also lack information on how to /where to "automatically reactivate the time out error queues".

Kind regards,

Gørril

Former Member
0 Kudos

Hi Gørril,

Tcode is SMQR. In that tcode, you will see the Runtime, Attempts and Pause.

Thanks,

Vishnu

Former Member
0 Kudos

Hi,

Gopi wrote:

"Request the basis team to set the timeout for queue to 1800 secs or 3600 secs, so that the queue will be automatically timed out with error "Time limit exceeded".  Ask the basis team automatically reactivate the time out error queues and it will process next time successfully."


Where / how can I do these two things? I find no options in SMQR regarding this.


Kind regards,

Gørril

Former Member
0 Kudos

Hi Gørril,


Max. Runtime( seconds ) is the time given to finish processing the queue. This where you specify number of seconds.


Thanks,

Vishnu


Answers (0)