Kbase P13932: Why the F1 help event does not work in 9.1D ADM2 applications?
Autor |
  Progress Software Corporation - Progress |
Acesso |
  Público |
Publicação |
  11/16/2009 |
|
Status: Verified
SYMPTOM(s):
ADM2: The F1 default help event behavior does not work as expected in ADM2 applications
Code changes in src\adm2\visual.i and src\adm2\container.i broke the F1 key default help event behavior.
FACT(s) (Environment):
Windows
Progress 9.1D
CHANGE:
Migrated 9.1C ADM2 application to 9.1D
CAUSE:
Bug# OE00078300
CAUSE:
This issue is caused by code changes in src\adm2\visual.i and src\adm2\container.i files.
In src\adm2\visual.i, the following code erroneously overrides the expected behavior of the F1 (HELP) event:
ON HELP OF FRAME {&FRAME-NAME} ANYWHERE DO:
IF VALID-HANDLE(gshSessionManager) THEN
RUN contextHelp IN gshSessionManager (INPUT THIS-PROCEDURE, INPUT FOCUS).
END.
because it overrides the default HELP event behavior with no action if the Session Manager is not running.
Similarly, in src\adm2\container.i, the following code erroneously overrides the default behavior of the F1 (HELP) event:
ON HELP OF {&WINDOW-NAME} ANYWHERE DO:
IF VALID-HANDLE(gshSessionManager) THEN
RUN contextHelp IN gshSessionManager (INPUT THIS-PROCEDURE, INPUT FOCUS).
END.
In both cases, the fix is to establish that we are indeed running in a Dynamics Environment before altering the default and expected behavior of the HELP event.
FIX:
Upgrade to Progress 9.1D05 or later. If upgrading to Progress 9.1D05 or later is not feasible, then a workaround is to modify the ADM2 source code as follows:
Modify the above src\adm2\visual.i code to read:
IF VALID-HANDLE(gshSessionManager) THEN
ON HELP OF FRAME {&FRAME-NAME} ANYWHERE DO:
RUN contextHelp IN gshSessionManager (INPUT THIS-PROCEDURE, INPUT FOCUS).
END.
and modify the above src\adm2\containe.i code to read:
IF VALID-HANDLE(gshSessionManager) THEN
ON HELP OF {&WINDOW-NAME} ANYWHERE DO:
RUN contextHelp IN gshSessionManager (INPUT THIS-PROCEDURE, INPUT FOCUS).
END.