Consultor Eletrônico



Kbase P15122: Dyn2.0A, Problems to override SDO initializeObject in Data L
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   19/03/2003
Status: Unverified

FACT(s) (Environment):

Dynamics 2.0A

SYMPTOM(s):

Adding filtering condition to a SDO

Additional condition in where clause not taken into account at initialization

AssignQuerySelection() called before the RUN SUPER or InitializeObject override in SDO Data Logic Procedures

SDO openOnInit property is set

CAUSE:

Known issue. initializeObject of the SDO is actually run TWICE (taken as a bug):
1) The first time, the Data Logic Procedure is not yet in the super procedure stack of the SDO. As openOninit is true, the original query is open.
2) The second time, the DLP is in the super procedure stack, so the querywhere is correctly set. Since the query was already open at the first time, then it is not opened again. As a result the added condition is not taken into account.

CAUSE:

BUG# 20021206-002

FIX:

Set openOnInit to FALSE (or by code before RUN SUPER) and open the query with<pr>
DYNAMIC-FUNCTION("openQuery":u IN TARGET-PROCEDURE)</br>
after the RUN SUPER of the InitializeObject in the SDO Data Logic Procedures. This way, the query will be opened at the 2nd run of InitializeObject