As of December 1, 2020, Focal Point is retired and repurposed as a reference repository. We value the wealth of knowledge that's been shared here over the years. You'll continue to have access to this treasure trove of knowledge, for search purposes only.
Join the TIBCO Community TIBCO Community is a collaborative space for users to share knowledge and support one another in making the best use of TIBCO products and services. There are several TIBCO WebFOCUS resources in the community.
From the Home page, select Predict: WebFOCUS to view articles, questions, and trending articles.
Select Products from the top navigation bar, scroll, and then select the TIBCO WebFOCUS product page to view product overview, articles, and discussions.
Request access to the private WebFOCUS User Group (login required) to network with fellow members.
Former myibi community members should have received an email on 8/3/22 to activate their user accounts to join the community. Check your Spam folder for the email. Please get in touch with us at community@tibco.com for further assistance. Reference the community FAQ to learn more about the community.
I am using the DBAFILE functionality on some Master Files to 1) implement some table-based security that is necessary for reporting from an Oracle relational data structure, and 2) is used to restrict some of the key fields from the joins so they are hidden from our users.
Right now I use SQL against the Oracle database (outside of WebFOCUS) to generate the text that is in the DBAFILE for each master file. The names of the DBAFILEs have a .mas extension, e.g. sec_dba1.mas
The list of users is on the database, changes frequently. I would like to dynamically generate the DBAFILE on a daily basis to include new users.
Is there a way to write a focexec that would create/replace a DBAFILE that has a .mas extension?
Posts: 64 | Location: Denver | Registered: July 20, 2005
YES it can but it's not easy. you have to create each row and hold it format ALPHA. It sounds like the WebFOCUS DBA exit will be more helpful in your situation.
In it's simples form here is the method for writing a .mas, I'm sure it could be expanded easily for your needs.... This writes mycar.mas to myapp under approot, make sure it's destination is in the edasprof path....
-* now use it FILEDEF MYCAR DISK &APPROOT..\MYAPP\MYCAR.TXT
TABLE FILE MYCAR PRINT CAR BY MODEL END
Hope this gives you more ideas, post more detail if you need more specific help.
Just a thought, but if you're running under WINDOWS try a DOS COPY (append), to concatenate the base MAS and you dynamic DBA text.
In your app you would have you .mas and your .dbf, the merge will concat the 2 together and produce mynewcar.mas in same directory, you'll need to experiment with file names to ensure in my e.g. that mycar.* only has the 2 hits for .dba and .mas
DOS COPY &APPROOT..\MYAPP\MYCAR.* &APPROOT..\MYAPP\MYNEWCAR.MAS
Good Luck, Paul.This message has been edited. Last edited by: ptp,
Posts: 42 | Location: UK | Registered: October 23, 2005
I was successful at creating my DBAFILE.mas description using a focexec. Now I just need to schedule it using Report Caster!
I modified the database steps so the focexec only needs to look at one table. Then did a FILEDEF and HOLD AS... FORMAT TAB.
FILEDEF DBAFILE1 DISK E:\ibi\apps\example\DBAFILE1.MAS TABLE FILE DBAFILE_LINES_FOR_MAS PRINT FILE_LINE BY SORT_VALUE NOPRINT WHERE DBAFILE_NAME EQ 'DBAFILE1' ON TABLE HOLD AS SEC_ADR FORMAT TAB END -RUN
So you'll know - lots of information about the lines is hard-coded on the Oracle database side and in a script there.
Thanks to all for the help.
Posts: 64 | Location: Denver | Registered: July 20, 2005