Focal Point
WARNING: Oracle JOIN LEFT_OUTER does not allow MISSING test on target.

This topic can be found at:
https://forums.informationbuilders.com/eve/forums/a/tpc/f/7971057331/m/7751030502

January 03, 2007, 03:47 PM
hammo1j
WARNING: Oracle JOIN LEFT_OUTER does not allow MISSING test on target.
If you have tables A and B and common field FLD and want to find cases where no B exists for A then

JOIN LEFT_OUTER FLD IN A TO FLD IN B AS J1
TABLE FILE A
PRINT A.FLD
WHERE B.FLD EQ MISSING
END

does not work.

What happens is that the wf adapter reasons that any WHERE test on B does not require an outer join since the missing value retrieved will always fail the test.

This is almost true but it will pass the IS NULL test above!!!

SET ALL=PASS to get round this. (This also makes INNER JOINs into OUTER JOINs!)


Again this seems to be an unholy compromise of the original FOCUS behaviour and rdbms behaviour. This is the single most confusing element and I would say that this is a great deal of the feeling that the core product does not work.

What's needed is something like
SET JOINBEHAVIOUR=RDBMS|FOCUS
SET NULLBEHAVIOUR=RDBMS|FOCUS

Where the whole of wf table behaves in an RDBMS way!

WF is the better more logical way but there are more RDBMS's out there.

<<< End of Rant >>>



Server: WF 7.6.2 ( BID/Rcaster) Platform: W2003Server/IIS6/Tomcat/SQL Server repository Adapters: SQL Server 2000/Oracle 9.2
Desktop: Dev Studio 765/XP/Office 2003 Applications: IFS/Jobscope/Maximo
January 04, 2007, 04:13 AM
Tony A
John,

Better still use SQL passthru to achieve exactly what you want without having to go around the WF code limitations. Make the RDBMS do all the work and control the environment.

T



In FOCUS
since 1986
WebFOCUS Server 8.2.01M, thru 8.2.07 on Windows Svr 2008 R2  
WebFOCUS App Studio 8.2.06 standalone on Windows 10