官术网_书友最值得收藏!

Changing the title of the value prompt

In the previous example, the first line of the value prompt shows the data item name, that is, Month key (ship date) as shown in the following screenshot:

The business owners want to change this to a more generic and user-friendly text.

Getting ready

We will use the report generated in the previous recipe.

How to do it...

We need to add a line to the JavaScript from the previous recipe to change the text of first option (index 0). To do this perform the following steps:

  1. Open the prompt page of the report created in the previous recipe.
  2. Double-click on the HTML item that contains the JavaScript.
  3. Replace the code with the following:
    <script>
    var theSpan = document.getElementById("A1");
    var a = theSpan.getElementsByTagName("select"); 
    for( var i = a.length-1; i >= 0; i-- )  
      { var prompts = a[i];
      if( prompts.id.match(/PRMT_SV_/))
      { prompts.selectedIndex = 3;
        prompts.options[0].text = 'Choose Shipment Month'; /* This is the new line added to script */
      }     
      canSubmitPrompt();
    }
    </script>
  4. Run the report to test it as shown in the following screenshot:

How it works...

By default, the first line of a value prompt is the name of the data item. If you define the data item expression within brackets, that is, ([Sales (query)].[Time (ship date)].[Month key (ship date)]) in this example, then the first line of the value prompt is populated by the parameter name.

However, there is no property within Report Studio that would allow us to put a custom title. Hence, we are using JavaScript. We already know how to capture the prompt control using the GetElementsbyTagName function. Once it is captured, we can manipulate the values. We change the text property of the options[0] element to update the first line of the prompt.

There's more...

You can also use the REMOVE() function to remove particular lines of a value prompt. It is often useful to remove the first two lines (title and separator) using the following statements:

Prompts.remove(0);
Prompts.remove(1);
Prompts.removeAttribute("hasLabel");
主站蜘蛛池模板: 宝兴县| 江西省| 东乌珠穆沁旗| 云南省| 兴仁县| 乡城县| 通州市| 建昌县| 林周县| 横峰县| 伊通| 清新县| 包头市| 苏尼特左旗| 大新县| 扶风县| 夏津县| 泰顺县| 临沂市| 赫章县| 辽阳县| 随州市| 大新县| 株洲市| 庆城县| 大兴区| 河北区| 夏河县| 江华| 保亭| 承德市| 南京市| 哈巴河县| 江城| 井陉县| 河东区| 上林县| 永定县| 鄂伦春自治旗| 高碑店市| 兴义市|