Kbase P113086: HELP attribute has got the unknown value when not enabled within the procedure
Autor |
  Progress Software Corporation - Progress |
Acesso |
  Público |
Publicação |
  15/02/2006 |
|
Status: Unverified
SYMPTOM(s):
HELP attribute not initialized if not enabled within the procedure
HELP attribute has got the unknown value.
Enabling the fill-in within a super procedure doesn't initialize the HELP attribute
HELP attribute value is unknown (?) unless the widget is explicitly enabled within the procedure
This code shows the problem:
FIND FIRST customer.
FORM customer.cust-num
SKIP customer.postal-code WITH FRAME test SIDE-LABELS.
DEF VAR h as WIDGET-HANDLE.
ENABLE customer.cust-num
customer.postal-code /* Comment out this line to see the problem */
WITH FRAME test.
assign
h = customer.postal-code:HANDLE IN FRAME test.
h:SENSITIVE = YES.
MESSAGE h:help
VIEW-AS ALERT-BOX INFO BUTTONS OK.
CAUSE:
This is expected behavior, the validation expressions and help strings from the Data Dictionary are compiled into the application only if the field is explicitly named in the ENABLE statement
FIX:
You can use the USE-DICT-EXPS option of the frame phrase that forces the compiler to include all help and validation expressions, not only the ones explicitly named in the ENABLE statement. You can also use the -dictexps startup parameter to accomplish the same thing without modifying the 4GL code, though you must recompile the 4GL code whether you use USE-DICT-EXPS or -dict-exps.