Kbase P68827: openOnInit = NO for child SDO breaks foreign field mapping
Autor |
  Progress Software Corporation - Progress |
Acesso |
  Público |
Publicação |
  15/12/2010 |
|
Status: Unverified
SYMPTOM(s):
Parent and child container are linked through the foreign fields of the SDO in the child container
Child container contains filter object
openOnInit of SDO in child container is set to FALSE
On container startup SDO in child container is empty as expected
After applying filter, child SDO will contain all records including those not matching the current parent record
After navigating the parent, only the correct child records are in the SDO
FACT(s) (Environment):
Dynamics 2.1A
CAUSE:
This is a known issue being investigated by Development.
The foreignFields mapping is not applied correctly when the child SDO is first opened (which happens when the filter is applied).
FIX:
Workaround:
From the child container, get the handle of the parent container datasource and publish dataAvailable from it. i.e. in a button on a SmartDataviewer, on the child container:
DEF VAR hSDO AS HANDLE.
DEF VAR hSDOp AS HANDLE.
{get DataSource hSDO TARGET-PROCEDURE}.
{get DataSource hSDOp hSDO}.
PUBLISH 'dataAvailable' FROM hSDOp("DIFFERENT":U).
DYN-F("openQuery" IN hSDO).