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.
What is the best way to create a "Please Wait" message for long running reports? I have some that are 10-15 seconds that really need to give the user feedback that it is running. I tried adding HTML
to the front and hiding it after the report loaded. Unfortunately I need a JAVA equiv to a "Reponse.flush" to get it to load fast.
I'm sure this has been done many times before. Can anyone help?
NOTAJAVAGUYThis message has been edited. Last edited by: Kerry,
The fnSubmitReport opens a new window, loads the Please Wait message html file and then submits the form a few milliseconds later:
// Open a new window and display "Please Wait" HTML page winReport = window.open["/approot/zzzz/zz_html/zzh152.htm", "winReport",vFeatures]; winReport.focus[]; winReport.moveTo[0,0]; winReport.resizeTo[screen.availWidth,screen.availHeight];
// Submit the form setTimeout["document.forms[0].submit[];", 600];
You get a Please Wait message and then, after 600 milliseconds the form is submitted.
The one problem with this is that the Please Wait message is in the browser window history, which means you can click the back button and you're back at the please wait message.
I've tried displaying the please wait message in a different window that the submitted report window, but it's not that easy to manipulate one window from another - a question of the possibility that the user closes the please wait window before the report has completed running.
1. Create the HTML page that you want to display. 2. use a button instead of submit that calls a function. 3. in the function open a new window like so replacing the ? with the value of the size of the window you want to open.
var cmd = "/approot/wait/pleasewait.htm"; var SPW; SPW = window.open(cmd,"PleaseWait","height=" + ? + ",width=" + ? + ", toolbar=no, menubar=no, scrollbars=no, resizable=no, location=no, directories=no, status=no");[/code]4. in the function submit the form with the target of PleaseWait. replace the ? with the real form name. [code]document.?.target = "PleaseWait"; document.?.submit(); Hope this helpsThis message has been edited. Last edited by: <Mabel>,
This is a variant of the problem "how to clear out a report from a frame when a new report has been requested... and you're waiting" The only thing we got to work was an alert box.(suggested by one of our fellow fp'ers]
User has to close the alert box, but that might be better than inserting a goofy page into the history stream. I have an [A] tag with the href loading the launch page, and an onclick calling the cgi and running the fex. you can put a second action into an onclick...the alert box. What i want is a second action into that onclick that calls a 'please wait' page into the same frame where the fex results will eventually appear. no cigar! only the alert box works. you can call it from a button as well.Still, its not a great solution.
here's a better one (9/12/07) have your launch page execute a first fex, a launch fex, and that launch fex takes all the parms and executes a redirect. This works for me.
-* a launch fex that is all html
-DEFAULT &PARM1='LUCY';
-DEFAULT &PARM2='RICKY';
-HTMLFORM BEGIN
<html>
<head>
<META HTTP-EQUIV="Refresh" CONTENT="0 ;
URL=http://servername/ibi_html/WFServlet?IBIF_ex=fexname&|PARM1=&PARM1&|PARM2=&PARM2">
</head>
<body TOPMARGIN="0">
<table width="100%" height="*"
style="border-collapse: collapse"
bordercolor="#111111" cellpadding="0" cellspacing="0" >
<tr height="300"> <td valign="middle" align="center">
[i]
<font face="Verdana, Arial, Helvetica, sans-serif"
style="letter-spacing: 3; font-weight:700"> your wait message goes here .....</font>[/i]
</TD></TR>
</table>
</body>
</html>
-HTMLFORM END
-* end of launch fex
This message has been edited. Last edited by: susannah,
Posts: 3811 | Location: Manhattan | Registered: October 28, 2003
You could try having the "Patience..." page in a frame hidden behind the target frame, have onsubmit() adjust the target frame's z-index to reveal the Patience page, and have the result's onload() restore the target's z-index.
But that might also bring the Accessibility police to your door.
Posts: 1925 | Location: NYC | In FOCUS since 1983 | Registered: January 11, 2005
My first post! I'm glad I can already add something here... We installed WF last week.
What I found to work out well is to write to the iFrame and then when the report displays it writes over what you previously put in there. So basically I have an animated gif and text written to the iFrame via HTML. Here is code I am currently using from the onclick event of the long loading reports...
parent.mainframe.document.write ("<HTML><center><br><br><br><br><br><br><br><br><img src=loading_animation2.gif><font face='arial' color = 'gray'><h3>Generating Requested Report<\/h3><\/font><\/center><\/HTML>")
I am not a javascript or html guru or anything, so take this with a grain of salt!
rob
WebFOCUS 8.0.0.5 - SQL Server - Windows Server
Posts: 21 | Location: Fort Wayne, IN | Registered: June 29, 2007
Hi I was looking through posts to try and figure out how to create a wait page while a report is loading. I really like Suzanne's technique above. However I can not get to call up the actual fex using the code she supplied. (see below)
I obviously changed the server name to my server name and the fexname to the fex I'm trying to call up. I'm not having any luck. My launch page is in the same folder as the fex - if that helps any.
Hi. I just modified Susannah's code to run within my environment. It does in fact work.Thanks Susannah! I did NOT pass any parameters to the code as this was not necessary in my case. You will note that in my case I am using the localhost and in addition I passed through the port number. /*URL=http://localhost:8080/ibi_apps/WFServlet?IBIF_ex=REGINAFUNDLISTQUERY" */ With regards to the execute statement, I have my fex file "REGINAFUNDLISTQUERY" "directly connected" to the ..IBIF_ex "command". The rest is actually quite simple. One of those things that you always wanted to know how to do, yet were afraid to ask regards SteveThis message has been edited. Last edited by: Stefaans,