SSRS dynamic parameter value not getting refreshed - reporting-services

We have 3 parameters on the SSRS report:
StartDate: Date/Time
EndDate: Date/Time
DiffDays: Text - Default value based on an expression: =DateDiff(DateInterval.Day,Parameters!Start.Value,Parameters!End.Value)
When the report is previewed, and start date is set to 8th Apr 2019 and the end date is set to 10 Apr 2019, the DiffDays parameter textbox automatically shows 2. However, if either of the dates are changed, then the DiffDays textbox does not get refreshed. For example, changing the end date to 15 Apr 2019, still shows the DiffDays textbox value as 2.
How to refresh the SSRS dynamic parameter value?

In report parameters properties for DiffDays, make available value the same as your default value, and under advanced click automatically determine when to refresh.

Related

How can I change the date format of a date/time SSRS parameter - this is specific to en-SC culture?

I have an SSRS report that has a start and end date parameter (set to the date/time type) so that the user can choose the date range. The report sets the Localization Language value based on a parameter that is passed in at run time.
This works great for en-GB but we have a customer in the Seychelles and when the localization is set to en-SC, the date format of the 2 parameters defaults to mm-dd-yyyy, but this is incorrect as the date format should be dd-mm-yyyy. Because of this, the user is unable to set the dates correctly as choosing the 31st January for example gives a 'The value provided for the report parameter 'startdate' is not valid for its type' error.
When I drop down the date picker and pick 31st January, it fills the date in as 31/01/2023 but then displays the error. I have my Windows Region set to "Seychelles" and Regional Format to "English (Seychelles)".
Is there anything I can change to get this to work or is it a bug in SSRS?

set default value for date time parameter in rdlc

i have a report which has extension of rdl (Microsoft Reporting Services Projects) in visual studio 2017 and this report has a date time parameter
i want to set a default value for this parameter as current date in order not to force a user to choose a value for this parameter
so when i right click the parameter i choose Default Values then Specify Values
then i add the Value =Now()
with no benefit when i preview the report the date time parameter becomes disabled
how to enter a default value as current date without time value
Your only question seems to be:
How to enter a default value as current date without time value?
To do this, rather than using =now() which returns the current date and time, you can use =today() which returns just today's date.

Need to set a date parameter on an SSRS subscription

I have a report in SSRS that takes a single date as a parameter. What I want is for that report to have a subscription that uses the Saturday of two weeks ahead as the date (i.e., Monday 7/4 would give Saturday 7/16). How can I do this in the subscription? Looks like I can't do a formula in the parameter.
You have to set the default parameter value in the report, not in the subscription. An expression to use in the default for the date parameter would look something like this. There both add 2 weeks to the current date.
=DataAdd(DateInterval.WeekOfYear, 2, Today)
or
=Today.AddDays(14)
The default values can be set using the Report Parameters Properties dialog in the report designer. Just double-click on the parameter you want to change and the dialog will open.

Report Builder 3.0 Updating Parameter Panel

I have a report that has StartDt, and EndDt as parameters. When a user leaves these blank, I default StartDt to yesterday, and EndDt to today. That works fine the the actual parameter send to SQL. But is there a way to update the SSRS Parameter Panel to show the user what dates were defaulted?
I know I could just make the parms required, but I'd rather default the dates like this so users can just put in there account(s) and move on.
Set the default value expressions for each date parameter using the standard date/time functions.
You can set today as:
=Today()
Yesterday as:
=DateAdd(DateInterval.Day, -1, Today())
See How to: Add, Change, or Delete Default Values for a Report Parameter for more details.
Edit after comments
Say you have the following parameters:
StartDt and EndDt are just set up as Date/Time:
Set the Default Values expression for each parameter using the expressions above, i.e. =Today() and =DateAdd(DateInterval.Day, -1, Today()):
Now, when you load the report for the first time the two parameters are already populated with the Default Values:
Users can then just leave the dates as the defaults as they're already set, or change them as necessary.

How to add time (data type) as parameter

I need to create a report that allows the user to give a date and time range for a report. I can set up the StartDate and EndDate (DateTime data type), but I can't seem to figure out how to add StartTime and EndTime.
This is a report where they want to view what was processed between a certain date and time. Is there anything that I can do so that the user can choose/enter a value for time in a report?
As #WillA mentioned in a comment, there is no date + time picker in SSRS. However, the datepicker that comes with a DateTime parameter does allow manually entering a time component.
First, here's what happens if you select just a date in the picker:
If you render this in a TextBox with format string HH:mm:ss, MMM d `yy, this will become:
00:00:00, Dec 9 `12
However, if the user manually :'( enters a time component it will work, e.g.
This will be rendered (with the same format) as such:
15:27:00, Dec 9 `12
This is not a very user-friendly solution though.