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.
Ok guys, I need some help with my multiselect box. i have attached the javascript that will populate my S2 listbox. When i setup an alert the values in the S2 listbox are showing up. I assumed webfocus would pass &S2=A OR B...ETC, etc. When i click on submit the variable &S2 is not getting passed. i guess i know you can populate javascript with a !IBI.FIL or !IBI.AMP but shouldn't &S2 pass without a hidden variable? I do not use Developer Studio so I would not be able to throw in report painter.
Any advice would be great!! thanks for your help in advance.
<SCRIPT LANGUAGE="JavaScript">
function moveOver()
{
var boxLength = document.myChoices.S2.length;
var selectedItem = document.myChoices.S1.selectedIndex;
var selectedText = document.myChoices.S1.options[selectedItem].text;
var selectedValue = document.myChoices.S1.options[selectedItem].value;
var i;
var isNew = true;
if (boxLength != 0) {
for (i = 0; i < boxLength; i++) {
thisitem = document.myChoices.S2.options[i].text;
if (thisitem == selectedText) {
isNew = false;
break;
}
}
var strValues = "";
//var boxLength = document.myChoices.S2.length;
var count = 0;
if (boxLength != 0) {
for (i = 0; i < boxLength; i++) {
if (count == 0) {
strValues = document.myChoices.S2.options[i].value;
}
else {
strValues = strValues + "," + document.myChoices.S2.options[i].value;
}
count++;
}
}
//{
//alert("Here are the values you've selected:\r\n" + strValues);
//}
}
if (isNew) {
newoption = new Option(selectedText, selectedValue, false, false);
document.myChoices.S2.options[boxLength] = newoption;
}
document.myChoices.S1.selectedIndex=-1;
}
function removeMe() {
var boxLength = document.myChoices.S2.length;
arrSelected = new Array();
var count = 0;
for (i = 0; i < boxLength; i++) {
if (document.myChoices.S2.options[i].selected) {
arrSelected[count] = document.myChoices.S2.options[i].value;
}
count++;
}
var x;
for (i = 0; i < boxLength; i++) {
for (x = 0; x < arrSelected.length; x++) {
if (document.myChoices.S2.options[i].value == arrSelected[x]) {
document.myChoices.S2.options[i] = null;
}
}
boxLength = document.myChoices.S2.length;
}
}
</script>
<BODY LINK="#0000FF" ALINK="#0000FF" VLINK="#0000FF"
ONLOAD="DefPick()" BGCOLOR="#0FFFF">
<FORM name=myChoices method='POST' target='rptWin'
onSubmit="return validate(myChoices)";
action='/ibi_apps/WFServlet'>
<TABLE width="95%" height="10%" border=0>
<tr>
<td colspan="1">
<FONT COLOR="BLACK" SIZE=2>[b]Available Sorts[/b]</FONT>
<br>
<select name="S1" id="S1" style="WIDTH: 220px" size=13 onchange="moveOver();">
<option value='N'>No Sort
<option value='A'>Reserve Responsibility Group
<option value='B'>Intermediate Summary Group
<option value='C'>Corp Code
<option value='D'>Business Unit
<option value='E'>Market
<option value='F'>Carrier
<option value='G'>Country Code
</select>
</td>
<td colspan="2">
<FONT COLOR="BLACK" SIZE=2>[b]SortBy:[/b]</FONT>
<br>
<select multiple name="S2" id="S2" style="width:220;" size="4">
</select>
</td>
This message has been edited. Last edited by: jbanas6,
WF 7.6.10 /IIS 6/ JBoss Enterprise 4.3 Windows XP SP 2/Windows 2003 Server MVS 7.3.3
1) Hartford, simple answer is Use Dev Stu. no reason not to. 2) the old way of passing hand-written multi selects from the old devstu gave you NOT &S2 but rather &S20 = the number of elements picked &S21 the first value &S22 the second value &S23 etc etc...up to the number you've picked, i.e. the value in &S20. Then it was up to you to loop in your fex: something sorta like this: -SET &KOUNTER = 1 ; WHERE thing EQ &S21 -REPEAT end.loop &S20 - 1 TIMES -SET &KOUNTER = &KOUNTER + 1 ; OR &S2|&KOUNTER -end.loop 3) the new devstu way passes the single parm string with the ORs stuck in. &S2='RICKY OR LUCY OR DESI OR ETHEL' so WHERE thing EQ &S2 is all you need.
do a -? & as the first line of your fex to see what your page is actually passing.This message has been edited. Last edited by: susannah,
In Focus since 1979///7706m/5 ;wintel 2008/64;OAM security; Oracle db, ///MRE/BID
Posts: 3811 | Location: Manhattan | Registered: October 28, 2003
Hartford, you don't do a -? &S2 you do a -? & the variable &S2 isn't getting passed...if your multiselect is a handwritten, old non devstu7 kind. If so, you'll see &S20 &S21 etc. See???
In Focus since 1979///7706m/5 ;wintel 2008/64;OAM security; Oracle db, ///MRE/BID
Posts: 3811 | Location: Manhattan | Registered: October 28, 2003