Dashboard Parameters DateTime Input is mandatory

Dashboard Parameters - if we have multiple parameters controllers, how can we make sure that each of them can be applied independently of each other. Example - If we have parameter like - Order Date (Start Date and End Date) and Delivered Date (Start Date and End Date), then how can we have the options to apply only either of them if needed and set the others to null.

Hi, parameters are designed to be created and applied independently, if you are doing it right. After you create the parameter, you would need to link the parameter with the filters to specific visuals. In that step, you will need to specify which column do you apply the filter on. I would recommend you name the parameters clearly so that each control is applied as intended. Also, when you setup different filters, make sure you apply them to the right visual(s).
Also per your question title, QS does require a static default value for datetime parameter, do you have any question about that?

If we have parameter like - Order Date (Start Date and End Date) and Delivered Date (Start Date and End Date), then how can we have the options to apply only either of them if needed and set the others to null(or to something that is not affect the filter, in case of dropdown we can choose [All]. but in datetime there is no option.

As the title, when we have a DateTime type parameter, we can not change it’s value to empty one or null.

Screenshot 2022-03-01 at 3.17.28 PM
See this red colour border around the date input

Hi,
I think there would be a couple ways to accomplish something like this, but here is one example. To start, under Settings I chose Free-Form layout. Then I created a parameter ${FilterBy} (1st picture) where I can choose if I want to filter by Delivered Date, Order Date, or Select all. I set the default as Select all. Then I made my parameters for delivered start & end date as well as ordered start & end date, 4 date parameters total. I added controls for all five of my parameters to the sheet. Next I added control rules, to hide the controls that are not in use. So for example in the 2nd picture for Delivered Date Start, it is hidden when ${FilterBy} = ‘Order Date’. Then I added 2 Filters to my visual. The first filters Order Date between ${OrderDateStart} and ${OrderDateEnd}. The second filters Delivered Date between ${DeliveredDateStart} and ${DeliveredDateEnd}. At this point in time my visual is filtered both by Order Date and Delivered Date at all times regardless of ${FilterBy} selection. To remedy this I made a calculated field which I named {Filter By} (3rd picture). This field is equal to the ${FilterBy} parameter. Now I go back to my filters and use the “OR” option to “Add filter condition”. On the Order Date filter I add an OR custom filter {Filter By} Equals “Delivered Date” (4th picture). Now this filter is selecting records whose Order Date is between the selected order date range, except when ${FilterBy} = “Delivered Date”. Lastly I did the same for my Delivered Date filter and added an OR custom filter so that it effectively disables when ${FilterBy} = “Order Date”.
I apologize if that was messy, it’s difficult to show everything without going into too much detail, but I hope this helps.


2.

3.
image
4.
image

2 Likes