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 trying to figure out a way to setup Report Caster to use the &&KILL_RPC and &&KILL_RFC_NRT. When using this below at the end, it works to some extent, but I am looking for a way for the &&KILL_RPC_NRT to be universal since each of my Report Caster schedules are not all set to run at the same time. I have tried a few variations, but so far the below is all that I can get to work.
-SET &&KILL_RPC = IF &RECORDS EQ 0 THEN 'Y' ELSE 'N'; -TYPE &&KILL_RPC -SET &&KILL_RPC_NRT = IF EDIT(&TOD,'$$99$$') EQ '00' THEN 'Y' ELSE 'N'; -TYPE &&KILL_RPC_NRT
Do you guys know of a way to manipulate &&KILL_RPC_NRT to be universal for all schedules?This message has been edited. Last edited by: Tamra,
What would be the condition that prevent RC to start ?
Will it be the same condition for all schedules ?
If it's a condition that can be established (tested) by WF, maybe you can create a fex that will set the &&KILL_RPC_NRT based on above condition and add the fex in the _universal_profile ?
WF versions : Prod 8.2.04M gen 33, Dev 8.2.04M gen 33, OS : Windows, DB : MSSQL, Outputs : HTML, Excel, PDF In Focus since 2007
Posts: 2409 | Location: Montreal Area, Qc, CA | Registered: September 25, 2013
We have an ETL job that runs daily, the report will not have data until the ETL process has completed. As of right now, the only ETL job we are concerned with is this one, but eventually want the process to expand to other scheduled reports.
TABLE FILE BLAH PRINT JOB_NAME START_TIME FINISH_TIME STATUS DATE3 WHERE JOB_NAME EQ 'BLAH_REPORT' AND DATE3 EQ '&DATE' ON TABLE HOLD AS FIELDHOLD END -SET &&KILL_RPC = IF &RECORDS EQ 0 THEN 'Y' ELSE 'N'; -TYPE &&KILL_RPC -SET &&KILL_RPC_NRT = IF EDIT(&TOD,'$$99$$') EQ '00' THEN 'Y' ELSE 'N'; -TYPE &&KILL_RPC_NRT
I have also tried a -SLEEP and -LOOP, but that makes it so that there are agents holding and we can not have agents tied up for too long.
According to the fact that you will need a solution to manage RC based on execution of multiple ETL and without knowing all your spec (does all ETL will have to completed prior to let RC run or 1 ETL will manage 1 report, etc) here is some ideas of multiple solutions:
Create a table or file (execution log) that will hold the result of the ETL, then as first step in your report fex test the table row related to that report (assuming 1 ETL for 1 report fex) and set &&KILL_RPC / &&KILL_RPC_NRT according to the result or just bypass the report within the fex.
Can also have a fex that will set the &&KILL... variables based on same above ETL log table read and where this fex is called within the _universal_profile.
And could have probably many other options...
WF versions : Prod 8.2.04M gen 33, Dev 8.2.04M gen 33, OS : Windows, DB : MSSQL, Outputs : HTML, Excel, PDF In Focus since 2007
Posts: 2409 | Location: Montreal Area, Qc, CA | Registered: September 25, 2013
do please put a -RUN after your END statement, and use &LINES, not &RECORDS. why can you not hold open this one single agent for as long as it takes to get the GO signal? Its just one...
In Focus since 1979///7706m/5 ;wintel 2008/64;OAM security; Oracle db, ///MRE/BID
Posts: 3811 | Location: Manhattan | Registered: October 28, 2003
I would look at this the opposite way. Instead of waiting for the RC job to wait until the data exists, why don't you use your ETL to schedule the job once the data has been loaded. This way you don't have to have some process just waiting around indefinitely.
Eric Woerle 8.1.05M Gen 913- Reporting Server Unix 8.1.05 Client Unix Oracle 11.2.0.2
Posts: 750 | Location: Warrenville, IL | Registered: January 08, 2013
Just another option for you might be looking at the ETL_STATS file which comes with the software and registers all the ETL processes ran.
Make a pre-procedure in the ReportCaster, like:
TABLE FILE ETL_STATS
PRINT S_REQ_NAME
WHERE DATETIME_START EQ '&YYMD.EVAL';
WHERE DATETIME_END EQ '&YYMD.EVAL';
WHERE (S_REQ_NAME EQ ... );
ON TABLE HOLD
END
-RUN
-TYPE &LINES
If you schedule the ETL flow you can align the timing with this ReportCaster pre-procedure.
Good luck, SWES
WebFOCUS 8105m Windows 7, All Outputs
Member of the Benelux Usergroup
Posts: 198 | Location: Amsterdam | Registered: August 24, 2011