Focal Point Banner
Community Center Education Summit Technical Support User Groups
Let's Get Social!

Facebook Twitter LinkedIn YouTube
Focal Point    Focal Point Forums  Hop To Forum Categories  WebFOCUS/FOCUS Forum on Focal Point     WF Browser : form submission with a lot of elements
Go
New
Search
Notify
Tools
Reply
  
WF Browser : form submission with a lot of elements
 Login/Join
 
Member
posted
I'll try to sum it up the best way possible.

I've got an html page that contains a form with 8 multi-selection lists. Some list have hundreds of values.

This is just a simple reporting application that spits out the report with the "where clauses" created dynamically in Focus depending on what values the user selected in the lists.

When they submit the form, an html window pops up that contains 2 frames. The top frame is to select "excel" or "html" format. Bottom frame, of course, gives the report. This is where the problem lies actually, because if it was only one format, I could just submit the form using the "POST" method to call the fex directly, and the limitation would be a lot higher.

Now I can't submit the form using the "GET" method or by creating a CGI call because there's a 2048 character string limit. This limit is quickly reached with all theses values that they can select.

So these are my questions :

1 - I know that if I put the user selections in files and just do "-READs" on them, I wouldn't have any limitation. I want to avoid doing this. But if I have no choice, what would be the best method of writing the selections to a file ?

2 - If I use "POST" to submit the form, can I grab these values in the new html window and assigning them to the 2 frames ? I guess that means asp. But if so, I still have a problem when calling the fex.

3 - Instead of using frames to choose between Excel and HTML format, do you have a better idea so that I don't have to go through resolving the issues above ?

thanks
 
Posts: 21 | Registered: January 27, 2004Reply With QuoteReport This Post
Silver Member
posted Hide Post
Why isn't the 'output' option a selection on the original form? Gather all variables needed for the report through one html form.
 
Posts: 37 | Registered: April 14, 2003Reply With QuoteReport This Post
Member
posted Hide Post
Because my boss doesn't want the user to resubmit the report if he wants to see it in the other format (usually, they see it by default in html and then they view it in Excel and save it).
 
Posts: 21 | Registered: January 27, 2004Reply With QuoteReport This Post
Virtuoso
posted Hide Post
I would add the Excel or HTML selection to your first screen so when the submit button is clicked you already know which format the user would like and therefore you do not need to figure out how to get the values into the �framed� window that pops up.

If you really would like to stick to the way you are doing things, you can actually trigger a submit on the first window (parent) from the pop up window (child). This will eliminate the need to populate variables in the pop up window. I have used this technique many times.

With either solution you can use POST.

It sounds like you are building the FOCEXEC using JavaScript. You may want to look at doing this with a FOCEXEC instead. This may help you to get around the issues with the GET method if you don�t use POST.
 
Posts: 995 | Location: Gaithersburg, MD, USA | Registered: May 07, 2003Reply With QuoteReport This Post
Member
posted Hide Post
quote:
Originally posted by Mickey Grackin:
[qb]
If you really would like to stick to the way you are doing things, you can actually trigger a submit on the first window (parent) from the pop up window (child). This will eliminate the need to populate variables in the pop up window. I have used this technique many times.
[/qb]
Mmm...Ok, and how would I then call the focexec ?
Let's say, in the popup window, I do smth like :

opener.form.submit() (I guess that's the way I would do it ?), how could I then call the fex ?
 
Posts: 21 | Registered: January 27, 2004Reply With QuoteReport This Post
Virtuoso
posted Hide Post
If you are building the FOCEXEC with JavaScript, create a hidden INPUT item on the parent window with the name IBIF_adhocfex and then set the VALUE equal to the complete FOCEXEC. Then using the window.opener.document.form.submit() you can execute the FOCEXEC.

Is my assumption correct that you are building the FOCEXEC in the browser with JavaScript?
 
Posts: 995 | Location: Gaithersburg, MD, USA | Registered: May 07, 2003Reply With QuoteReport This Post
Member
posted Hide Post
quote:
Originally posted by Mickey Grackin:
[qb]
Is my assumption correct that you are building the FOCEXEC in the browser with JavaScript? [/qb]
Honnestly, I don't know what you mean by that. I just want to pass user selection to the focexec. I assumed the use of javascript was only to build the cgi call or submit, no ?
 
Posts: 21 | Registered: January 27, 2004Reply With QuoteReport This Post
Virtuoso
posted Hide Post
Let me try to make this easier.

What does your FORM look like in the pop-up window that you are submitting to WebFOCUS?

Whatever that FORM looks like, make the FORM in the parent window look exactly like it so that the window.open.document.form.submit() sends a request to WebFOCUS that looks identical to what you are sending from the pop-up window.

The other additional thing you will need to do is to change the TARGET value for the FORM on the parent window so that it points to the frame on the pop up window.

I hope this makes more sense. Let me know. Big Grin
 
Posts: 995 | Location: Gaithersburg, MD, USA | Registered: May 07, 2003Reply With QuoteReport This Post
Platinum Member
posted Hide Post
Here is something I've done... it's somewhat transparent to the user.....

-DEFAULT &FORMAT = HTML

TABLE FILE CAR
PRINT
MODEL
CAR
ON TABLE SUBHEAD
"Download to Spreadsheet"
ON TABLE SET ONLINE-FMT &FORMAT
ON TABLE SET STYLE *
TYPE = TABHEADING, FOCEXEC=app/vshtmlex(FORMAT='EXL2K'), $
ENDSTYLE
END


vshtmlex is the name of your focexec. It does run it a second time.....
 
Posts: 132 | Location: Kansas | Registered: November 12, 2003Reply With QuoteReport This Post
Silver Member
posted Hide Post
I guess I'm a little confused why a user can't run a report more than once, especially if they want a downloadable format after they have verified the data is what they are looking for, but hey, everyone runs a business differently. This is a simple example of something else you could do, it actually creates two reports at once - maybe your boss won't be able to tell since its really only 'one' request Wink -- anyway, this actually creates the necessary frames without having to code each - try it, you may or may not like it, but it can be handy.


-TYPE WEBFOCUS CGIVAR IBIWF_mreports=index
-*TYPE WEBFOCUS CGIVAR IBIWF_index=OFF

-TYPE WEBFOCUS CGIVAR IBIWF_mprefix=Report
TABLE FILE CAR
PRINT CAR MODEL SEATS
BY COUNTRY
ON TABLE PCHOLD FORMAT HTML
END
-RUN

-TYPE WEBFOCUS CGIVAR IBIWF_mprefix=Report
TABLE FILE CAR
PRINT CAR MODEL SEATS
BY COUNTRY
ON TABLE PCHOLD FORMAT EXL2K
END
 
Posts: 37 | Registered: April 14, 2003Reply With QuoteReport This Post
Member
posted Hide Post
quote:
Originally posted by Mickey Grackin:
[qb]
If you really would like to stick to the way you are doing things, you can actually trigger a submit on the first window (parent) from the pop up window (child). This will eliminate the need to populate variables in the pop up window. I have used this technique many times.
[/qb]
Actually, this worked!!! THANKS A BUNCH!
 
Posts: 21 | Registered: January 27, 2004Reply With QuoteReport This Post
Expert
posted Hide Post
idea..if your users have XP or higher, just teach them to "right click export to excel" from the html table output.
 
Posts: 3811 | Location: Manhattan | Registered: October 28, 2003Reply With QuoteReport This Post
  Powered by Social Strata  
 

Focal Point    Focal Point Forums  Hop To Forum Categories  WebFOCUS/FOCUS Forum on Focal Point     WF Browser : form submission with a lot of elements

Copyright © 1996-2018 Information Builders, leaders in enterprise business intelligence.