InfoCaptor

  1. Home
  2. Docs
  3. InfoCaptor
  4. How to create dashboard filters and prompts

How to create dashboard filters and prompts

Purpose and Benefits

Dashboard prompts/filters are input elements that let you set a value or a range of values. These values are then passed on to the display widgets. These display widgets use these values and show the results that are filtered by the values. These provide increased iteractivity on the dashboards. 

InfoCaptor Enterprise employs a very sophisticated yet simple mechanism for ensuring highest amount of interactivity and best user satisfaction from the UI perspective. 

Dashboard controls allow you to change selections or indicate new values or manually type values for search purpose. These values are then propogated to the widgets. So far very good and here is how the mechanism works internally 

Action Oriented Framework – How it works

Every html control passes information to the entire dashboard using a specific channel. And all the data widgets would selectively listen to these channels for any change in values. So when the user selects a different value in the control, this new value is broadcasted to this channel and every widget that is subscribed to this channel is notified of the change. The widget will then update its data based on the new channel value. 

InfoCaptor takes this concept further and incorporates the channel broadcasting and listening feature to each and every widget in the entire library. So for instance your flow chart lines can listen to the html controls. It can also listen to data broadcasting from other non html control widgets as well. 

So when you click on any cell on your Data Grid, the cells pass values to a unique channel and let say if a bar chart is listening for the data grid channel then it will refresh based on the changes. So suddenly you can build a very context sensitive – extremely data aware application. 

Usually in traditional BI software, the html controls represent the “dashboard filtering or dashboard prompts” and the refresh of widgets based on actions taken on other widgets is kind of a “drill down” action. 

In InfoCaptor, the mechanism is just one, broadcast actions and associated data change to a channel and every widget is given the privelege and ability to listen onto these channels.

This single “Action Oriented Framework” gives InfoCaptor the ability to provide extremely useful drill down functionality and unlimited options for data presentations. 

The channel values are also passed on to an external URL or different dashboard based on the drilling action. This simply means you can drill down on single or multiple widgets in the same dashboard or you can drill into a completely different dashboard or you can drill down into an external URL or third party application. 

How to use it

So what is this channel and how do you define it? From the end user perspective, every widget comes with a predefined channel so there is nothing to create. The only thing needed is to give an appropriate name to this channel. 

When you drag a new widget on the dashboard canvas, say you dragged html_radio, then internally the channel is named say html_radio_01. Every time the user changes the Radio button control, the change is broadcasted onto the channel “html_radio_01” 

Now say, there is a data grid, that wants to filter its contents based on this radio selection. The Grid SQL can simply reference this channel as”param<html_radio_01>” inside the SQL where condition. This change in the SQL is detected and then the Grid is automatically subscribed to this channel changes.

In the same fashion if there was a bar chart that wanted to listen to this channel then it can reference the channel the same way inside its SQL query. By default the name given to the channel is a combination of the component name and a sequence id.

This is not very useful when you are referencing so it is beneficial to give a descriptive name to the channel and all the steps are covered in following sections. 

Preparation

The following tutorials are designed with Excel File as data source but you can import the excel file into a MySQL, Oracle, SQL server table or any other SQL database and make it work. For your reference, you can download the Excel file for HR_DATA 

Download the above hr_data.xlsx file and save it in a directory.

Create another copy of hr_data.xlsx such as hr_data1.xlsx and open this copy in Microsoft Excel so you can refer the data. (When you connect to Excel using ODBC the file gets locked and hence cannnot be opened in MS Excel) 

Then follow the steps to create Excel Connection When you define the above Excel Connection, you may name the connection handle to “hr_employee_data” Now you should be ready to follow the instructions in sections below.

Articles

Was this article helpful to you? Yes No

How can we help?