A multi-selection listbox with a fixed number of years.

 

Make a global variable called gv_Year as an integer and a number of extra global variables year1 – n as string. In this example 6 years were used.

On Startup script code;

 

gv_Year = Convert.stringToInt(DS_1.getVariableValueExt(“0P_CALYE”));

 

year1 = (gv_Year – 5)+“”;

year2 = (gv_Year – 4)+“”;

year3 = (gv_Year – 3)+“”;

year4 = (gv_Year – 2)+“”;

year5 = (gv_Year – 1)+“”;

year6 = (gv_Year)+“”;

 

CHART_1.setDataSelection({“0CALYEAR”:year6});

DS_1.setFilter(“0CALYEAR”, year6);

 

LISTBOX_YEAR.addItem(year6, Convert.subString(Convert.floatToString(gv_Year – 0.0), 0 , 4));

LISTBOX_YEAR.addItem(year5, Convert.subString(Convert.floatToString(gv_Year – 1.0), 0 , 4));

LISTBOX_YEAR.addItem(year4, Convert.subString(Convert.floatToString(gv_Year – 2.0), 0 , 4));

LISTBOX_YEAR.addItem(year3, Convert.subString(Convert.floatToString(gv_Year – 3.0), 0 , 4));

LISTBOX_YEAR.addItem(year2, Convert.subString(Convert.floatToString(gv_Year – 4.0), 0 , 4));

LISTBOX_YEAR.addItem(year1, Convert.subString(Convert.floatToString(gv_Year – 5.0), 0 , 4));

 

The LISTBOX_YEAR component looks like this after entering ‘2016’ in the prompt.

LISTBOX_YEAR On Select script.

 

var lv_select_arr = me.getSelectedValues();

var lv_element = [“”];

 

DS_1.clearFilter(“0CALYEAR”);

 

lv_select_arr.forEach(function(element, index)

{

lv_element.push(element);

});

 

CHART_1.setDataSelection({“0CALYEAR”:lv_element});

DS_1.setFilter(“0CALYEAR”, lv_element);

To report this post you need to login first.

Be the first to leave a comment

You must be Logged on to comment or reply to a post.

Leave a Reply