Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Async events dont trigger after IW 15.0.22/23 update
#1
After updating to  IW 15.0.22 the Async events have stopped working for TMS controls. Updated to 15.0.23 but the problem exists.
Reply
#2
Does it work for IntraWeb controls?
Reply
#3
Can you please tell me which specific component and which event is not working?
As I could check, Async events for all TMS controls are working as expected. As long as you rebuild your TMS packages from sources it should work.
Reply
#4
(06-19-2019, 04:38 AM)Alexandre Machado Wrote: Does it work for IntraWeb controls?

Yes.
Reply
#5
(06-19-2019, 12:44 PM)msgopala Wrote:
(06-19-2019, 04:38 AM)Alexandre Machado Wrote: Does it work for IntraWeb controls?

Yes.

Re -compiled project, re-built project & saved project. Still same results.

Removed the TMS components. Built and re-added to ide. 

Opened project, complied and ran - same result

deleted one TTIWAdvEdit and re-added from component palette. Added OnAsyncExit code - Same result.

Added an IW standard button,  added my onAsyncExit code to the OnAsyncClick event of the IWButton. Code worked.

Added a standard IWEdit and copied the onAsyncExit code to this IwEdit. Code worked.

OnAsync Exit of the TTIWAdvEdit does not work with the new update.
Reply
#6
Can you please turn on Developer tools on your browser (F12), switch to the console tab and see if there is some JavaScript error going on? I'm convinced that there is something else which is making the Ajax call to fail. TIWAdvEdit events should work just fine, according to our tests
Reply
#7
Can you please test this project? It contains a pre-compiled version and also the source code. Test the pre-compiled version first and see if it works. Then try to build it using your version and see if the behavior is the same.

http:\\downloads.atozed.com\IntraWeb\demos\TMSProject.zip
Reply
#8
(06-20-2019, 09:27 AM)Alexandre Machado Wrote: Can you please test this project? It contains a pre-compiled version and also the source code. Test the pre-compiled version first and see if it works. Then try to build it using your version and see if the behavior is the same.

http:\\downloads.atozed.com\IntraWeb\demos\TMSProject.zip

TIWADVEdit OnAsyncExit doesn't work in the pre-compiled and the built version.

I also found the reason why the OnAsyncChange, OnAsyncEnter or the OnAsyncButtonclick didnt work in my project. There were all expecting a variable from a previous TIWAdvEdit that was setting a variable value on its OnAsyncExit.

Please let me know when you expect this issue to be resolved or if I have to revert to a version prior to the 15.0.22 version as this has halted our development.

Thank you!
Reply
#9
After spending a few hours investigating this issue, we found out that this is caused by a bug in TMS code. 

This is (part of) an e-mail I've just sent to TMS support:

Stripping out irrelevant code, this is what TMS AdvEdit control generates:

<input  type="text" id="TIWADVEDIT1" name="TIWADVEDIT1"  value="TIWAdvEdit1" onFocus="" </input>

Please notice an empty onFocus event. 

In case OnAsyncExit event is assigned to this control, initialization code (in JavaScript) will replace the original onfocus event handler with its own multicast handler and add the original onfocus event handler as the first element of the event array. The assigned OnAsyncExit will become the second element of the array.

When onfocus is triggered, the first onfocus is executed and, if the return value doesn't evaluate to false, the second event will be executed in sequence (OnAsyncExit).

What happens is that an empty onfocus event handler will evaluate to false and break the execution chain.

This used to work before due to a (very old) bug in IW which has been fixed in IW 15.0.22.

I will add an (ugly) workaround in IW code to avoid that empty event handlers are added to our list of event handlers which will "fix" this issue, but I strongly recommend you to fix the generated code so no empty event handlers are generated.
Reply
#10
Please replace your IWData.res file(s) in your IW 15.0.23 installation directory with this one attached (please notice that you might have more than one copy of IWData.res in different directories. In this case, replace them all). 

It contains a workaround for TMS TTIWAdvEdit (possibly others) control bug.

This workaround will also be available in the next IW versions.

Please let me know if it fixed your issue.

(Update: Attachment removed. Use the file attached to my next message)
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)