FocalPoint Forum Community:
As always, thank you in advance for any advice or guidance you can provide me. This community has been wonderful to me, and I appreciate it.
My latest challenge is to create a portal using
Chapter 8: Enhancing Portals Using Interactive Features and Coding Techniques in the manual titled Business Intelligence Portal Release 8.2 Version 04.
The portal works beautifully overall. I followed the directions to create a reporting object, its accompanying filter panel, and then I combined them in the filter panel.
The one glitch I'm experiencing has to do with the dynamic filters I've established.
TABLE FILE CAR BY CAR.ORIGIN.COUNTRY BY CAR.COMP.CAR BY CAR.CARREC.MODEL BY CAR.BODY.BODYTYPE WHERE ( CAR.ORIGIN.COUNTRY EQ &COUNTRY.(FIND CAR.ORIGIN.COUNTRY IN car|FORMAT=A10).COUNTRY:.QUOTEDSTRING ) WHERE ( CAR.COMP.CAR EQ &CAR.(FIND CAR.COMP.CAR IN car|FORMAT=A16).CAR:.QUOTEDSTRING ) WHERE ( CAR.CARREC.MODEL EQ &MODEL.(FIND CAR.CARREC.MODEL IN car|FORMAT=A24).MODEL:.QUOTEDSTRING ) WHERE ( CAR.BODY.BODYTYPE EQ &BODYTYPE.(FIND CAR.BODY.BODYTYPE IN car|FORMAT=A12).BODYTYPE:.QUOTEDSTRING ); ON TABLE SET PAGE-NUM NOLEAD ON TABLE SET ASNAMES ON ON TABLE NOTOTAL ON TABLE PCHOLD FORMAT HTML ON TABLE SET HTMLEMBEDIMG ON ON TABLE SET HTMLCSS ON ON TABLE SET STYLE * INCLUDE = IBFS:/EDA/EDASERVE/_EDAHOME/ETC/warm.sty, $ ENDSTYLE END
In the filter panel, I chained all four filters together. That way, when one changes, they all update appropriately.
They are all optional, dynamic filters. None are multiselect.
They all work great except one.
If someone selects the model first, the report headings show without data.
If someone selects the model, the other data around it should populate the report.
To liken it to a country, region, store example, if someone chooses the store first, the country and region should update, but they don't.
Does anyone have any suggestions?
I apologize if this seems like a mundane question. I've looked in several manuals, and I've tried various combinations of dynamic and static parameters, all with varying degrees of success. I think I am missing something obvious. This is my first foray into reporting objects.
Thank you again for any advice, even if it's to direct me to a manual or post. I might have overlooked something.This message has been edited. Last edited by: FP Mod Chuck,
You need to see this as a Hierarchy between Country - > Car - > Model - > BodyType.
Chaining the control together will insure that from the selection you made, the following criteria will update accordingly : from left to right and will never update from right to left.
In other words, a parent selection will update downward its child but a child selection will not update its parent backward. Always in the "- >" direction never in the opposite direction.
If you want to have the Country and Car list updated according to selected Model you will need to go with js (or jquery) recursively.
I don't think that it will be possible with a RO or dynamic filter built that way. You will need to code.
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
Are you using the Page Designer to assemble your content and generate the parameters? You may want to use the WITHIN= in your WHERE test and try putting your code in a Page. Allowing the Page to generate the parameters makes this a little easier to deal with and picking a value in any of the parameters cascades to the available values in the others. Create this example and put it in a Page. When you get prompted to create the parameters you'll see 4 parameters that are inter-related.
-DEFAULT &COUNTRY=_FOC_NULL; -DEFAULT &CAR=_FOC_NULL; -DEFAULT &MODEL=_FOC_NULL; -DEFAULT &BODYTYPE=_FOC_NULL; TABLE FILE CAR BY CAR.ORIGIN.COUNTRY BY CAR.COMP.CAR BY CAR.CARREC.MODEL BY CAR.BODY.BODYTYPE WHERE ( CAR.ORIGIN.COUNTRY EQ &COUNTRY.(FIND CAR.ORIGIN.COUNTRY IN car|FORMAT=A10).COUNTRY:.QUOTEDSTRING ) WHERE ( CAR.COMP.CAR EQ &CAR.(FIND CAR.COMP.CAR IN car|FORMAT=A16,WITHIN=COUNTRY).CAR:.QUOTEDSTRING ) WHERE ( CAR.CARREC.MODEL EQ &MODEL.(FIND CAR.CARREC.MODEL IN car|FORMAT=A24,WITHIN=CAR).MODEL:.QUOTEDSTRING ) WHERE ( CAR.BODY.BODYTYPE EQ &BODYTYPE.(FIND CAR.BODY.BODYTYPE IN car|FORMAT=A12, WITHIN=CAR).BODYTYPE:.QUOTEDSTRING ); ON TABLE SET PAGE-NUM NOLEAD ON TABLE SET ASNAMES ON ON TABLE NOTOTAL ON TABLE PCHOLD FORMAT HTML ON TABLE SET HTMLEMBEDIMG ON ON TABLE SET HTMLCSS ON ON TABLE SET STYLE * INCLUDE = IBFS:/EDA/EDASERVE/_EDAHOME/ETC/warm.sty, $ ENDSTYLE END
WebFOCUS 8206, Unix, Windows
The use of WITHIN might have done it. I understand the example, and I'm going to try it with my own data now. I'll post any additional questions next week.
The use of WITHIN works inside my reporting object and with my filter panel. Thank you so much, BabakNYC. I appreciate learning about WITHIN and its usage.
Thank you again, BabakNYC, for explaining WITHIN to me.
I have a different question somewhat related to this one.
My user is requesting one more feature be added to the reporting object-that of a report heading.
The report heading should display the filters chosen at any given time.
In a regular report fex, I have done this many times. So, I think the principle and theory should be the same here.
Here's my sample code
SET EMGSRV=OFF SET MESSAGE = OFF SET ERROROUT = OFF SET WARNING = OFF SET TRMOUT = OFF SET MSG = OFF SET ASNAMES = ON SET HOLDATTR = ON SET EMPTYREPORT = ON -SET &STORE_HEAD = IF &STORE EQ '_FOC_NULL' THEN 'STORE=All' ELSE 'STORE=' | &STORE; -SET ®ION_HEAD = IF ®ION EQ '_FOC_NULL' THEN 'REGION=All' ELSE 'REGION=' | ®ION; -SET &MANAGER_HEAD = IF &MANAGER EQ '_FOC_NULL' THEN 'MANAGER=All' ELSE 'MANAGER=' | &MANAGER; -SET &FOOTING_1 = &STORE_HEAD | ', ' | ®ION_HEAD | ', ' | &MANAGER_HEAD;
Then, I add the footing to the footing area inside the report. It works beautifully.
With my reporting object, I added similar code to the preprocessing section and the report section; however, then the reporting object ignores the -DEFAULTH commands in the report section and shows the panel on the left side of the screen. I did some additional research and learned that DEFAULT commands are ignored if -SET commands are used; so, I'm left with trying to devise the best way to accomplish my objective. I'd appreciate any guidance.This message has been edited. Last edited by: JulieA,
I think you should open a case with techsupport on this as I don't know away around that limitation.
Thank you for using Focal Point!
Chuck Wolff - Focal Point Moderator
WebFOCUS 7x and 8x, Windows, Linux All output Formats
-SET supersedes -DEFAULT but I don’t see a -DEFAULT for your &STORE or &ION or &MANAGER. Your -SET commands depend on the default values of these variables but has to prompt you because there is no default values populated.
WebFOCUS 8206, Unix, Windows
Yes, I understand -SET supersedes -DEFAULT. You are correct my example does not include -DEFAULT or -DEFAULTH commands in it. My reporting object has the -DEFAULTH commands in it like this:
ENGINE INT CACHE SET ON
-DEFAULTH &WF_TITLE='WebFOCUS Report';
Are you saying if I have the DEFAULT values set as in this reporting object, the left nav should not prompt me?
I've used similar code in the past, and I've not experienced this issue.
|Powered by Social Strata|