Consultor Eletrônico



Kbase P99056: SELF handle used in definition of persistent trigger of dynamic widget points to wrong widget at run
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   20/12/2004
Status: Unverified

SYMPTOM(s):

User interface trigger of a dynamic fill-in widget uses SELF handle

SELF handle incorrectly points to the wrong widget

Dynamic fill-in widgets are created within an internal procedure which is called from the VALUE-CHANGED event of a radio-set

Dynamic fill-in widgets define a persistent LEAVE trigger which passes the SELF handle as an input parameter

CAUSE:

The internal procedure which creates the dynamic fill-in widgets is called from the VALUE-CHANGED trigger of a radio-set. Within this internal procedure the SELF handle evaluates to the handle of the radio-set. This causes the SELF handle which is passed to the internal procedure defined for the LEAVE event of the dynamic fill-in widgets to actually be the handle of the radio-set rather than the handle of the fill-in widget.

FIX:

Modify the source code and remove the input parameter (i.e. INPUT SELF) from the dynamic fill-in widgets persistent LEAVE trigger then simply refer directly to the SELF handle within the internal procedure which is called by the LEAVE trigger (i.e. the internal procedure defined in the ON LEAVE PERSISTENT RUN <SomeInternalProcedure> statement).