[Event System] Not working in OutSystems 11

[Event System] Not working in OutSystems 11

  
Forge Component
(30)
Published on 15 Jan by leonardo.fernandes
30 votes
Published on 15 Jan by leonardo.fernandes

Hi.  Do you have an ETA for updating the EventSystem extension to work with OutSystems platform 11?  There is a missing reference and I am not able to solve by opening in Integration Studio and re-publishing from there.  The reference is to 'LoggerImplementation'. If you have no ETA, do you have any work-around steps that we might try?

As Leonardo clearly stated:

This component takes advantage of private and undocumented Platform APIs, which can change without notice. As a result, this component may unexpectedly break as the Platform is upgraded. We advise proper testing to ensure that your applications continue to work as expected when upgrading/patching the Platform.


What kind of tests have you done before upgrading your apps?

João Heleno wrote:

As Leonardo clearly stated:

This component takes advantage of private and undocumented Platform APIs, which can change without notice. As a result, this component may unexpectedly break as the Platform is upgraded. We advise proper testing to ensure that your applications continue to work as expected when upgrading/patching the Platform.


What kind of tests have you done before upgrading your apps?

That’s not a particularly helpful reply. My question still stands.


Mine also... did you test your apps before upgrading? Can you tell us how that process went?

I have adjusted the question to remove the reference to production systems, so we can focus on my actual question.  "It doesn't appear to work in 11.  Do you have an ETA for supporting 11, and/or any steps we can try in the meantime?".

Hi m9679. I will release an updated version within a week. I'm sorry about the problems you are facing.

A possible workaround would be to use the web block events that was released with version 11, although I am aware that it doesn't cover all of the use cases of the Event System.

That's wonderful, thanks Leonardo.  No apologies needed or expected, and sure do appreciate your quick response.  It's a hugely useful component and we appreciate your efforts in making it available on the Forge.

Solution

Hi m9679, could you check if the latest version (10.0.8) solves this problem? It will get upgraded to version 11 automatically.

The error you're getting seems to be related to a code that is no longer in the latest version. So I believe you've upgraded your environment using an older Event System version, which is what caused the issue.

Solution

Oh right - good spot.  Great, we'll give that a try straight away and let you know the result.

I did the following with zero problems (in a Personal Environment that never had this installed):

1. Downloaded the latest stable version from the Forge.

2. Used "Open File" in Service Studio to open the OAP that was downloaded.

3. It prompted me to install the Application, I told it to go ahead.

It installed fine.

If it's a help, here's the OAP as downloaded from my Personal Environment, which MAY work better for you since it was already published in a P11 environment.

J.Ja

That said, P11 now natively supports events, you may want to look at how that is done to see if it makes sense to convert things over to use the native support stuff now.

J.Ja

Thanks @Justin - appreciate the steer.  Almost there with proving the same ourselves.

Yes, we're back in business.  Thanks everyone for your suggestion.  PS - we resolved Search and Autocomplete in the same way (we had a fairly old version).

Justin James wrote:

That said, P11 now natively supports events, you may want to look at how that is done to see if it makes sense to convert things over to use the native support stuff now.

J.Ja


Justin - thanks for the tip regarding v11 having events!

So, I am trying to switch to the native v11 events in the UI ... previously, I used the Timer + EventSystem from Forge to do a simple "refresh widget every 3 seconds". Essentially a widget polls the backend to get updated status on a back-end long-running process (e.g. % complete).

Any suggestions as the v11 events by themselves don't get me there.


Thanks!

Bruce Buttles wrote:

Justin James wrote:

That said, P11 now natively supports events, you may want to look at how that is done to see if it makes sense to convert things over to use the native support stuff now.

J.Ja


Justin - thanks for the tip regarding v11 having events!

So, I am trying to switch to the native v11 events in the UI ... previously, I used the Timer + EventSystem from Forge to do a simple "refresh widget every 3 seconds". Essentially a widget polls the backend to get updated status on a back-end long-running process (e.g. % complete).

Any suggestions as the v11 events by themselves don't get me there.


Thanks!

Also - the v11 docs don't have much in the way of explaining HOW to use the new web UI events.

I added an event to a web block and have an event handler on the page that instantiates the block ... but ... how does one TRIGGER the event associated with the web block??? I can't find docs or examples ... I must be missing them I am sure.

Thx!


Bruce Buttles wrote:

Justin - thanks for the tip regarding v11 having events!

So, I am trying to switch to the native v11 events in the UI ... previously, I used the Timer + EventSystem from Forge to do a simple "refresh widget every 3 seconds". Essentially a widget polls the backend to get updated status on a back-end long-running process (e.g. % complete).

Any suggestions as the v11 events by themselves don't get me there.


Thanks!


Bruce, the web block events in web applications (introduced in v11) work just the same as the mobile events (introduced in v10).

You can declare an event that a web block raises, create input parameters, and make it mandatory or not. On any screen action inside the web block you can trigger the event, providing values to the input parameters. There's a Trigger Event primitive in the action toolbar at the left side, or you can just drag the event into the screen action flow to trigger it. When you instantiate the web block (on a screen or on another web block), you can assign a screen action to handle what happens when the event is triggered.


I could not find documentation on this new functionality - maybe it's still being worked on?


This functionality also does not completely replaces the Event System. You can only trigger events from within a web block to outside of it. There's no way to trigger an event from an outside scope, or to pass data into the web block.