Duplicate WHERE Conditions in Select Statement Due To GdmLink/SetJoin

(Doc ID 2072640.1)

Last updated on MARCH 08, 2017

Applies to:

Oracle Agile Engineering Data Management - Version 6.1.3.0 and later
Information in this document applies to any platform.

Symptoms

On Oracle Agile e6.1.3, Office Document Management
Find that if a refresh in the office document mask (EDB-DOC-GDM-TFR) is executed, in the SQL trace two database joins on V_CHK_STA are executed. Therefore two where-conditions with the same contents are found in the select statement:
...
WHERE T_DOC_DAT.EDB_PRELIMINARY = 'n' AND
...
AND T_DOC_DAT.LEV_IND=V_CHK_STA.LEV_IND(+) AND
T_DOC_DAT.LEV_IND=V_CHK_STA.LEV_IND(+)
ORDER BY ...

They seem to come from the join on the mask itself and the second one from the pre-action userexit GdmMask/PreActionOs that calls GdmRelation/SetJoin which calls GdmLink/RefJoin which finally calls GdmLink/SetJoin.


Expected Behavior:
============
Every database join should be called only once in the reference environment.


The issue can be reproduced at will with the following steps:
====================================
1. Activate SQL-Trace (Trace all)
2. Open Office document form (EDB-DOC-GDM-TFR)
3. Refresh the mask
4. Double check the SQL-Trace and find that the Select statement to refresh the mask contains two join conditions


Cause

Sign In with your My Oracle Support account

Don't have a My Oracle Support account? Click to get started

My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms