Consultor Eletrônico



Kbase P130006: "half" pass-thru link gives error message
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   11/14/2008
Status: Unverified

SYMPTOM(s):

Get an error 'User-defined function 'getQueryPosition' invoked dynamically but could not be found.' (5639 ) at runtime

Get an error 'User-defined function <function name> invoked dynamically but could not be found.' (5639 ) at runtime

Will not get the error when launch the application from AppBuilder.

There are 4 smart links in Links Maintenance Window:








Source
Link name
Target





THIS-OBJECT
Data
StaticSDO

StaticSDO
Data
StaticSDV

arent" height=17>StaticSDO
Data
DynamicBrowser

StaticSDO
User1
DynamicBrowser.

Error is not seen in 10.1A.


Error only comes out after upgrade from 10.1A to 10.1B.

Application Source code hasn't been changed after upgraded.

FACT(s) (Environment):

Windows NT 32 Intel/Windows 2000
OpenEdge 10.1B02 32-bit Service Pack

CHANGE:

Upgrade from 10.1A to 10.1B.

CAUSE:

Bug # OE00166895

CAUSE:

a ?half? pass-thru link from THIS-OBJECT now gives error message where as it would forgive this before.
Source ? Link name ? Target
THIS-OBJECT ? data ? StaticSDO.
This is a link to the parent container and it is thus a so called pass-thru link. A pass-thru link is supposed to be resolved at runtime, based on the context of the caller. This means that the caller needs to have a child object that can replace THIS-OBJECT in the link. The error message indicates that the link has not been resolved and still is pointing to the container or it could be pointing to an object that is not prepared to be a data-source.
In early Dynamics releases you would define a PrimarySDO link from the caller to the SDO that is to replace THIS-OBJECT in the called object. This still works, but you do not need this link in newer releases as you just ensure that the LAUNCH action in the toolbar has the SDO (or its browser or viewer) as link target.
The general issue is not new and it is typically encountered when a data-target calls getQueryPosition, but the actual SDO getQueryPosition has changed to also check its parent in 10.1B (in order to disable ADD in toolbar if parent is not avail) and this probably explains why this was not seen in 10.1A.

FIX:

Upgrade to OpenEdge 10.1C01 or later.
Or:
The customer should remove the link if he does not use or need it.
Remove the pass-thru link and change the 'User1' to link between the Static SDV and the Dynamic Browser.










Source

Link name

Target

static SDO

data

DynamicBrowser

static SDV

0.5pt solid; BORDER-TOP: windowtext; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent">User1

DynamicBrowser.