Focal Point
My simple match is not working

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

May 03, 2007, 04:49 PM
MrBlurry
My simple match is not working
In a FOCEXEC I made, I have a very simple join:
Join fielda and fieldb in table a to fieldc and fieldd in tableb.

However, when I do a table print of my joined file, the results that show are not matching. FieldA in tablea should match fieldc in table b, but what I am getting is good results in fielda and in fieldc, just one value, which doesn't match anything and on top of that, the one value is repeated.

What might I be doing wrong? Any help is greatly appreciated, and I look forward to your replies.
May 03, 2007, 05:42 PM
Francis Mariani
MrBlurry, are you joining RDBMS tables? Multi-field JOINs do not work for flat files or FOCUS databases.

How about adding your environment information to your Profile Signature? It would help us to know which version of WebFOCUS you're running, what platform you're on and what kind of databases you're accessing.

Cheers.


Francis


Give me code, or give me retirement. In FOCUS since 1991

Production: WF 7.7.05M, Dev Studio, BID, MRE, WebSphere, DB2 / Test: WF 8.1.05M, App Studio, BI Portal, Report Caster, jQuery, HighCharts, Apache Tomcat, MS SQL Server
May 03, 2007, 05:53 PM
MrBlurry
Francis,

Thank you for replying..... I am using MVS/TSO cataloged datasets, which as far as I am aware are not FOCUS files. At least I'm able to look at the data manually.

Also, I am using FOCUS Rel 7.0.3

Thanks again....it's appreciated!
May 03, 2007, 06:00 PM
Francis Mariani
Then they're flat files or VSAM files, depending on how you're looking at them manually.

You may be able to do what you want by creating a DEFINE based JOIN, that is, DEFINE new fields for both files that are the two fields concatenated together, e.g.

JOIN FIELDAB WITH FIELDA IN TABLEA TO FIELDCD WITH FIELDC IN TABLEB AS J1

DEFINE FILE TABLEA
FIELDAB/A50 = FIELDA | FIELDB;
END

DEFINE FILE TABLEB
FIELDCD/A50 = FIELDC | FIELDD;
END

Each file must already be sorted by the two fields. I am not 100% sure that this will work, I haven't had to do anything like this in quite a while, but it's worth a try. I hope someone else confirms that this is feasible.


Francis


Give me code, or give me retirement. In FOCUS since 1991

Production: WF 7.7.05M, Dev Studio, BID, MRE, WebSphere, DB2 / Test: WF 8.1.05M, App Studio, BI Portal, Report Caster, jQuery, HighCharts, Apache Tomcat, MS SQL Server
May 04, 2007, 08:48 AM
jgelona
If these are flat files, why not use the MATCH command:

MATCH FILE TABLEA
SUM E F G
BY A
BY B
RUN
FILE TABLEB
SUM H I J
BY C AS A
BY D AS B
AFTER MATCH HOLD OLD-AND-NEW
END


In FOCUS since 1985. Prod WF 8.0.08 (z90/Suse Linux) DB (Oracle 11g), Self Serv, Report Caster, WebServer Intel/Linux.
May 04, 2007, 04:19 PM
Leah
quote:
Join fielda and fieldb in table a to fieldc and fieldd in tableb.

However, when I do a table print of my joined file, the results that show are not matching


Question, is it posssible that tableb has multiple occurances of ..c and ..d that the join is picking up. Not seeing the masters or having a more vivid description of the data might help.


Leah