Focal Point Banner


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.


Focal Point    Focal Point Forums  Hop To Forum Categories  WebFOCUS/FOCUS Forum on Focal Point     [SOLVED...I hope] -DEFAULT &MEMBR = 'FOC_NONE'; does not work w/multiselect?:

Read-Only Read-Only Topic
Go
Search
Notify
Tools
[SOLVED...I hope] -DEFAULT &MEMBR = 'FOC_NONE'; does not work w/multiselect?:
 Login/Join
 
Virtuoso
posted
Hey all,

So, I have a procedure where (as commonly happens) I have a number of -DEFAULT/DEFAULTH statements up top. When I run the procedure with -SET &ECHO = 'ALL'; set and look at the output, for some reason the value of &MEMBR (after defaulting it to FOC_NONE) is nothing but a single blank space. I added a -TYPE &MEMBR to be sure. I have other -DEFAULT &xxxx = 'FOC_NONE'; statements right along with the &MEMBR one, but for some reason this one ends up with a value of ' '. It's driving me mad! Why on Earth would one -DEFAULT not work, while the others have no issue?

Has anyone else here ever ran into this issue with your -DEFAULT statements?? If so, how did you fix it?

The code in question:
-SET &ECHO = 'ALL';

SET BYDISPLAY = ON

-DEFAULTH &Rec_Code = 'K';
-DEFAULTH &Nat_Code = 'E';
-DEFAULT &DIV = 'FOC_NONE';
-DEFAULTH &DIV_TEXT = 'All';
-DEFAULT &MEMBR = 'FOC_NONE';
-DEFAULTH &MEMBR_TEXT  = 'All';
-*-DEFAULT &WFFMT = 'HTML';
-DEFAULT &DTFMT = 'Default';
-DEFAULT &A = 'FOC_NONE';
-DEFAULT &B = 'FOC_NONE';

-TYPE &|MEMBR = '&MEMBR.EVAL'
-TYPE &|DIV = '&DIV.EVAL'

-SET &MEMBR = IF &MEMBR NE 'FOC_NONE' THEN STRREP(&MEMBR.LENGTH, &MEMBR, 1, '''', 0, 'X', &MEMBR.LENGTH, '&MEMBR') ELSE 'FOC_NONE';


The output of such:
-SET &ECHO = 'ALL';
 SET BYDISPLAY = ON
 -DEFAULTH &Rec_Code = 'K';
 -DEFAULTH &Nat_Code = 'E';
 -DEFAULT &DIV = 'FOC_NONE';
 -DEFAULTH &DIV_TEXT = 'All';
 -DEFAULT &MEMBR = 'FOC_NONE';
 -DEFAULTH &MEMBR_TEXT  = 'All';
 -*-DEFAULT &WFFMT = 'HTML';
 -DEFAULT &DTFMT = 'Default';
 -DEFAULT &A = 'FOC_NONE';
 -DEFAULT &B = 'FOC_NONE';
 -TYPE &MEMBR = ' '
 &MEMBR = ' '
 -TYPE &DIV = 'FOC_NONE'
 &DIV = 'FOC_NONE'
 -SET &MEMBR = IF   NE 'FOC_NONE' THEN STRREP(01,  , 1, '''', 0, 'X', 01, ' ') ELSE 'FOC_NONE';

This message has been edited. Last edited by: CoolGuy,


8.2.02M (production), 8.2.02M (test), Windows 10, all outputs.
 
Posts: 1113 | Location: USA | Registered: January 27, 2015Report This Post
Virtuoso
posted Hide Post
I've tested under 7.7.03 and 8.0.0.9 and it works fine...


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, 2013Report This Post
Expert
posted Hide Post
Works in v8.0.08 as well.

As previously stated, you now have the privilege of opening a Tech Support case!


Francis


Give me code, or give me retirement. In FOCUS since 1991

Production: WF 7.7.05M, Dev Studio, BID, MRE, WebSphere, DB2 / Test: WF 8.1.05M, App Studio, BI Portal, Report Caster, jQuery, HighCharts, Apache Tomcat, MS SQL Server
 
Posts: 10577 | Location: Toronto, Ontario, Canada | Registered: April 27, 2005Report This Post
Virtuoso
posted Hide Post
I suggest you put
-? &MEM
right after the -SET &ECHO statement, to see what's initially set.


- Jack Gross
WF through 8.1.05
 
Posts: 1925 | Location: NYC | In FOCUS since 1983 | Registered: January 11, 2005Report This Post
Virtuoso
posted Hide Post
I thought this was solved last month
 
Posts: 1925 | Location: NYC | In FOCUS since 1983 | Registered: January 11, 2005Report This Post
Expert
posted Hide Post
Just tested on our sandbox v8.1.04 server and it works there. Check your GEN number.

From our WF Admin Console:

Edition: WebFOCUS
Product Release: 8.1
Service Pack: 0.4
Build Version: branch8104
Build/GEN Number: 23
Build/GEN Date: April 9, 2015 8:00:26 PM EDT
Application Server: Apache Tomcat/7.0.33

From the reporting server console:

Configuration Date: 06/18/2014 12:15:48
Build Date: 05/29/2015 14:10:27
Gen Number: 843
Release: 81M
Source Date: 05/27/2015 15:08:58

WF jar seq number: 28
WF jar release: 8.1.0.5
Build Sys: Windows NT-5.2 X86_64 64bit
Support Sys: Windows x86_64 64bit
C Compiler: cl
C Version: Microsoft (R) C/C++ Optimizing Compiler Version 15.00.30729.01 for x64
Ajax Framework: Bindows(tm) 4.3
Host Name: DVWF02
Server Name: WebFOCUS 80 Server


Francis


Give me code, or give me retirement. In FOCUS since 1991

Production: WF 7.7.05M, Dev Studio, BID, MRE, WebSphere, DB2 / Test: WF 8.1.05M, App Studio, BI Portal, Report Caster, jQuery, HighCharts, Apache Tomcat, MS SQL Server
 
Posts: 10577 | Location: Toronto, Ontario, Canada | Registered: April 27, 2005Report This Post
Virtuoso
posted Hide Post
Thank you Martin, Francis and Jack for looking into this on your ends (again).

Jack, I thought it was figured out too. If I -SET &MEMBR = 'FOC_NONE', it works if you run just the procedure itself. If you try to reference the self-same procedure/report inside HTML Composer to set up a form to pass all the -DEFAULT values to it, having &MEMBR -SET still, it shows it working in the live preview panel you create for it. Once you run the thing however, I get the following:

quote:

Error on Reporting Server
Agent on reporting server EDASERVE may have crashed or request was halted by the operator with "hard kill" command. Please investigate reporting server log.


I went to the Reporting Server Console to see into this log it speaks of, but it says there are none.

All the controls are populated correctly, and are selectable. I did however notice that on the Parameters tab the listbox control's bound parameter (the one for &MEMBR) is blank (much like its value when reviewing the output of the procedure). The HTML Composer won't let me manually enter FOC_NONE into the parameter either. It's tied to the default value that it's given in the procedure/report. Even though -DEFAULT &MEMBR = 'FOC_NONE' sits squarely in the code. The DIV parameter populated with FOC_NONE without an issue, much like the rest of of the defaults. Not sure where I'm going wrong.

Jack, I also inserted -? &MEMBR right after -SET &ECHO = 'ALL' and got a value of blank as well.

Francis, our configuration is as follows:

Via the WF Admin Console:

Edition: WebFOCUS
Product Release: 8.1
Service Pack: 0.4
Build Version: branch8104
Build/GEN Number: 23
Build/GEN Date: April 9, 2015 6:00:26 PM MDT
Application Server: Apache Tomcat/7.0.33

Via the Reporting Server Console:

Configuration Date: 04/16/2015 07:40:34
Build Date: 03/17/2015 17:20:35
Gen Number: 833
Release: 81M
Source Date: 03/17/2015 14:28:09

WF jar seq number: 2
WF jar release: 8.1.0.4
Build Sys: Windows NT-5.2 X86_64 64bit
Support Sys: Windows x86_64 64bit
C Compiler: cl
C Version: Microsoft (R) C/C++ Optimizing Compiler Version 15.00.30729.01 for x64
Ajax Framework: Bindows(tm) 4.3
Host Name: ourHostName
Server Name: WebFOCUS 81 Server

Looks like you are configured with slightly newer versions than us in some cases.


8.2.02M (production), 8.2.02M (test), Windows 10, all outputs.
 
Posts: 1113 | Location: USA | Registered: January 27, 2015Report This Post
Virtuoso
posted Hide Post
So, I've found out a way to reproduce this incorrect behavior (to me). I tried a brand new procedure and got it to work at first (much like all of you did), but then I added the multiselect that &MEMBR is a part of down in my request, and BAM...&MEMBR no longer equals FOC_NONE but blank.

How to reproduce:

1. Create a new procedure;
2. Type the following and run it:
-DEFAULT &MEMBR = 'FOC_NONE';
-TYPE &|MEMBR = &MEMBR
It works like you all saw.
3. Then add this to the end (not the real code, but a way to add a multiselect for &MEMBR):
-DEFAULTH &STRMEMBR = 'Bob';
-SET &MEMBR = IF STRMEMBR EQ &MEMBR.(OR()). THEN 'FOC_NONE' ELSE _FOC_NULL;
Now the autoprompt prompts for &MEMBR via a list box, but the value of &MEMBR is blank.

What gives? And how do I fix this if I still need to use a multiselect for &MEMBR?


8.2.02M (production), 8.2.02M (test), Windows 10, all outputs.
 
Posts: 1113 | Location: USA | Registered: January 27, 2015Report This Post
Virtuoso
posted Hide Post
Also, this is code I've brought over from 7.6.11 and it worked with how the multiselect is structured w/o a problem. Bringing it over to 8.1 and all the sudden it just gets borked.


8.2.02M (production), 8.2.02M (test), Windows 10, all outputs.
 
Posts: 1113 | Location: USA | Registered: January 27, 2015Report This Post
Virtuoso
posted Hide Post
quote:
Jack, I also inserted -? &MEMBR right after -SET &ECHO = 'ALL' and got a value of blank as well.


So the context that is invoking this fex is supplying &MEMBR=' ', which overrides the -DEFAULT.

And I reiterate,

  • Just add something to catch the situation where &MEMBR is blank:
    After your "-DEFAULT" statements, add
    -SET &MEMBR = IF &MEMBR EQ '' THEN 'FOC_NONE' ELSE &MEMBR;
 
Posts: 1925 | Location: NYC | In FOCUS since 1983 | Registered: January 11, 2005Report This Post
Virtuoso
posted Hide Post
quote:
Also, this is code I've brought over from 7.6.11 and it worked with how the multiselect is structured w/o a problem. Bringing it over to 8.1 and all the sudden it just gets borked.


As I said, something changed in the launch page, causing it to vote for '' as the value (rather than abstaining) when none are selected.
 
Posts: 1925 | Location: NYC | In FOCUS since 1983 | Registered: January 11, 2005Report This Post
Virtuoso
posted Hide Post
Jack,

Thanks again for your willingness to chime in and review some steps that will help that you've suggested before. I added the check and it does work now at the fex level and with the form. I appreciate it.

I guess when you add a mutliselect within a request that lacks any entries, the value of the parameter it will store those values in will be blank unless you try and run it from the form that has the control with the static list to choose from that populates that multiselect list for &MEMBR.

Again, thank you and take care.


8.2.02M (production), 8.2.02M (test), Windows 10, all outputs.
 
Posts: 1113 | Location: USA | Registered: January 27, 2015Report This Post
  Powered by Social Strata  

Read-Only Read-Only Topic

Focal Point    Focal Point Forums  Hop To Forum Categories  WebFOCUS/FOCUS Forum on Focal Point     [SOLVED...I hope] -DEFAULT &MEMBR = 'FOC_NONE'; does not work w/multiselect?:

Copyright © 1996-2020 Information Builders