Consultor Eletrônico



Kbase P133246: Overridden method not invoked when used in expression; instead the original version from the SUPER c
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   10/10/2008
Status: Verified

SYMPTOM(s):

10.1C01

Overridden method not invoked when used in expression; instead the original version from the SUPER class is called

The original version of the method from the SUPER class is called when the method is used in a chain:

getHandle():DEFAULT-BUFFER-HANDLE

The method works and is overridden as expected when called "standalone":

getHandle()

Method from SUPER class is overridden in the CHILD class

Instance of the CHILD class is created

FACT(s) (Environment):

OpenEdge 10.1A
OpenEdge 10.1B
OpenEdge 10.1C
All Supported Operating Systems

CAUSE:

Bug# OE00169854

FIX:

Option #1
Upgrade to 10.1C02 or later

Option #2
Use THIS-OBJECT to access the member:

THIS-OBJECT:getHandle():DEFAULT-BUFFER-HANDLE.

Option #3
Do not use the method within a chain:

DEFINE VARIABLE h AS HANDLE.
h = getHandle().
MESSAGE h:DEFAULT-BUFFER-HANDLE.