Hi,

The setPathOuterJoin feature only works when you do not use a useralias.
Using useralias to reference to a join, inner-join are created instead
of left-outer joins.

So '.setPathOuterJoin("productGroup")' works, but
'.setPathOuterJoin("myAlias")' does not work when 'myAlias' refers to a
user alias for the join with productGroup table.

Again.... I may have a patch. In de class SqlQueryStatement in the
method private TableAlias getTableAlias(String aPath, boolean
useOuterJoins, UserAlias aUserAlias, String[] fieldRef, Map
pathClasses), I replaced the code:

    ...
    ...
    // look for outer join hint
    outer = outer || getQuery().isPathOuterJoin(attrPath);
    ...
    ...

with the following code:

    ...
    ...
    // look for outer join hint
    // start - iBanx patch
    outer = outer || getQuery().isPathOuterJoin(attrPath) || 
                 ((aUserAlias!=null) &&
getQuery().isPathOuterJoin(aUserAlias.getName()));
    // end - iBanx patch
    ...
    ...

This code will also force an left-outer join when the useralias is
recognized!

Greetings,

Roger Janssen
iBanx
*************************************************************************
The information contained in this communication is confidential and is intended 
solely for the use of the individual or entity to  whom it is addressed.You 
should not copy, disclose or distribute this communication without the 
authority of iBanx bv. iBanx bv is neither liable for the proper and complete 
transmission of the information has been maintained nor that the communication 
is free of viruses, interceptions or interference.

If you are not the intended recipient of this communication please return the 
communication to the sender and delete and destroy all copies.



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to