Kbase P125328: Running InitPages can hide a smartSelect
Autor |
  Progress Software Corporation - Progress |
Acesso |
  Público |
Publicação |
  08/04/2011 |
|
Status: Unverified
SYMPTOM(s):
InitPages can hide a smartSelect
A smartSelect that is on a page not initially viewed, is hidden if the page is initialized with initPages.
A smartSelect on a hidden page has the hideOnInit property set to TRUE if it is not on the first page in a smartWindow that is displayed. This prevents the smartSelect being displayed in initPages is used to initialize the page objects.
FACT(s) (Environment):
Windows
OpenEdge 10.1B
CHANGE:
Upgrade from 10.1A, where the problem does not exist.
CAUSE:
Bug# OE00155687
FIX:
To work around the problem either:
1. If possible, remove the call to initPages.
2. From within the viewer get the handle of the smartSelect and run ViewObject. For example in the viewer InitializeObject override:
DEFINE VARIABLE cfields AS CHARACTER NO-UNDO.
DEFINE VARIABLE i AS INTEGER NO-UNDO.
DEFINE VARIABLE h_object AS HANDLE NO-UNDO.
DEFINE VARIABLE h_sselect AS HANDLE NO-UNDO.
DEFINE VARIABLE lhide AS LOGICAL NO-UNDO.
/* Code placed here will execute PRIOR to standard behavior. */
RUN SUPER.
/* Code placed here will execute AFTER standard behavior. */
{get allFieldHandles cFields}.
/* get handle of smartSelect */
DO i = 1 TO NUM-ENTRIES(cFields):
h_object = WIDGET-HANDLE(Entry(i,cFields)).
IF h_object:NAME = "adm2/dynselect.w":U THEN
DO:
h_sselect = h_object.
LEAVE.
END.
END.
IF VALID-HANDLE(h_sselect) THEN
DO:
/* If set to hide, then view the smartSelect */
{get HideOnInit lhide h_sselect}.
IF lhide THEN
DO:
RUN viewObject IN h_sselect.
END.
END.