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'm wondering if someone could advise me of a best practice for including external procedures in drop-down boxes generated in an HTML Composer page.
Even with limited records (282), the HTML page takes around 10 seconds to load which to me seems a little crazy. The code I am using is:
TABLE FILE MAPMMPLANTOSERVICETYPE
SUM
COMPUTE CLIENT_TYPE_FIN/A100 = IF CLIENTTYPE EQ 'PopHealth' THEN 'Population Health' ELSE IF CLIENTTYPE EQ 'FinancialRisk' THEN 'Financial Risk';
BY MAPMMPLANTOSERVICETYPE.MAPMMPLANTOSERVICETYPE.CLIENTTYPE
BY MAPMMPLANTOSERVICETYPE.MAPMMPLANTOSERVICETYPE.MARKETTYPE
BY MAPMMPLANTOSERVICETYPE.MAPMMPLANTOSERVICETYPE.CLIENTNAME
BY MAPMMPLANTOSERVICETYPE.MAPMMPLANTOSERVICETYPE.GROUPNAME
BY MAPMMPLANTOSERVICETYPE.MAPMMPLANTOSERVICETYPE.GROUP_CD
WHERE CLIENTNAME IS NOT MISSING
WHERE GROUP_CD IS NOT MISSING
END
You don't seem to have any parameterised constraints on that procedure, so you could just cache the results into a HOLD-file and use that instead.
If that still takes 10 seconds, perhaps you're looking at a DNS issue (10s is a default DNS timeout).
Does the procedure still take 10s when run separately? If that's the case, you need to look at the underlying storage. How many rows are in that table? Do you have appropriate indices?
Is this a table in an RDBMS and is the request perhaps executed through a FOCUS managed JOIN?
WebFOCUS 8.1.03, Windows 7-64/2008-64, IBM DB2/400, Oracle 11g & RDB, MS SQL-Server 2005, SAP, PostgreSQL 11, Output: HTML, PDF, Excel 2010 : Member of User Group Benelux :
I have the same problem. I created a fex that will read my database and put the fields I want into a permanent focus hold file, and then I use the hold file in the dropdown. It's way faster than reading it from our database for some reason. I extract the database table into the hold file nightly via ReportCaster so the hold file and dropdown are up-to-date.
@Wep5622. Thanks for your response. The procedure takes maybe a second to run. There are 200 rows in the table. I don't think that's a ton. When you say cache the results, do you mean saving it in an app path such as:
ON TABLE HOLD AS 'LOCATION/HOLD_FILE'
@Mike
ohh good point. So do an app path. Thanks Mike. Yeah I was considering that. Thankfully these menu selections won't be too hard to maintain. I'll give this a whirl and let you all know.
ok here's my solution. I run my procedure, hold it in foccache and then include the filter panel after the procedure runs in a .fex wrapper. I shaved 4 seconds off load time. I think this is sufficient.
Code below:
TABLE FILE CAR
SUM
COMPUTE CLIENT_TYPE_FIN/A100 = IF COUNTRY EQ 'FRANCE' THEN 'Population Health' ELSE IF COUNTRY EQ 'ENGLAND' THEN 'Financial Risk';
BY COUNTRY
BY CAR
BY MODEL
ON TABLE HOLD AS 'FOCCACHE/TEST'
END
-HTMLFORM IBFS:/WFC/Repository/CM_Performance/Common_Content/CM_TEST.htm
Then I have a separate .fex that has the final table in it that the HTML composer uses.