cancel
Showing results for 
Search instead for 
Did you mean: 

Connection to UI API breaks down after a processing time

andr_macowski
Explorer
0 Kudos

Hi Experts,

I have an Addon that, after commanded by the user, does many consecutive actions. After more than some minutes, the Addon looses the connection with SBO.

Is there a way to avoid this situation? I tried searching the forum for other peaple with the same issue, but could not find anyone.

The same problem occurs when I use other addon that open a winform with a Crytal Viewer and the user still there for some minutes.

I guess it happens due to the addon freezes the SBO Application during this time.

If there are other Addons connected to the SBO application, they stop working too.

Thanks in Advance,

André Gustavo - EasyOne Consultoria - Brazil

Accepted Solutions (0)

Answers (2)

Answers (2)

andr_macowski
Explorer
0 Kudos

Sure,

an easy way for reprocing the issue is, creating a simple addon that inserts a menu item.

In the menu event, insert a code that takes several minutes for been completed.

(I think a While (true) may be useful here)

For example, if you have another addons connected they will stopworking after passed more than some minutes.

thanks.

Former Member
0 Kudos

This is unfortunately a common bug in the UI, usually ending with exceptions similar to "Cannot Cast SAPbouiCOM_Application as SAPbouiCOM_iApplication" or "RPC_E_SERVERFAULT" and isn't a problem with your code. The only solution I can see is to keep the connection alive with a workaround as there doesn't seem to be an official solution from SAP at present

If - for example - it was happening while I was in a long for loop, I used to just do something harmless with the UI at the end of each iteration of the loop, like click a label, or use the application object in some way, for example by checking what the active form is.

it might not be so simple in your case depending on what you are doing, but essentially you need to keep it alive somehow.

Hope its helpful

Former Member
0 Kudos

Hello,

We have a problem with our add-on which could be related to "RPC_E_SERVERFAULT" problem. Our add-on iterates over internal reconcillation matrix and adds journal entries to items on it, so it's quie long loop.

The problem is that after some (random time) system message "add-on is disconnected" appears. This message appears in different places (sometimes on journal entry window, sometimes on internal reconcillation window) . When we tried this via Visual Studio, my college got "RPC_E_SERVERFAULT" message, but I'm not 100% sure if it's is related to our problem.

I'm thinking about your idea to keep connection alive. Actually in each iteration of our loop, we do somehing with UI like checking item on the matrix. Should we do something more like checking active form at the end of each iteration?

What do you think njmog1?

Former Member
0 Kudos

That should be enough to keep the connection alive.

There are some differences though - first of all, why does the exception not get raised on the client? Do you handle exceptions in your code, and if you do are you logging them or displaying them to the user?

Is it actually a random time? Because this timeout issue happens over about 2 minutes in my experience, if this is truly random then it is a different issue.

Former Member
0 Kudos

We have exceptions handled by showing message box to user.

This is the most important question - why does exception not get raised on the client? I don't know.

The ltime ooks random, but "Disconnected" window apperas after 20 minutes or more, never earlier.

Any ideas?

Edited by: raph007 on Jun 28, 2011 4:53 PM

andr_macowski
Explorer
0 Kudos

But doesn´t the addon run as a Windows Service or something like that? If so, the messages should not be displayed. For a Windows Service to show messages on the screen, it´s necessary to configure it on it´s properties.

Usually I handle the exceptions on log, commonly on DB.

Regards,

André Gustavo

Former Member
0 Kudos

Hi André,

Welcome you to the forum.

Have you fully tested your add-on before installing on your system?

Thanks,

Gordon