Formatting the Multi-Valued Parameter Selection in report builder 3.0
Hi All,
I have a field from a data set and i assigned it to a parameter that selects multiple values.
But i want to format(i need only substring of that field value) the data set field value for the user to select those values.
I build a report dataset model for my report. so I am getting the field values that are present in my database.
So, how can i change those values before assigning them to the parameter?
Regards,
Ganga
Hi Ganga,
Based on your description, you want
a parameter get values from a query but you need only substring of the field value. Right?
In SQL Server Reporting Service, you could add a
Calculated Field in the data set. Using expression to substring the field from query. Then we can use this calculated field in parameter.
We have tested this scenario in our environment. Please refer to steps below:
Right-click the data set in the Report Data window and select Add Calculated Fields.
Click “Add” button to add a calculated field(Named “SubString”). Use text functions like Left() and Right() to substring data filed. Type in the expression like:=Left(Fields!CalendarYear.Value,1)+Right(Fields!CalendarYear.Value,2).
The result is like below:
If you have any more questions, please feel free to ask.
Regards,
Shrek Li
Similar Messages
-
Need to display the first 5 values of a Multi value parameter in SSRS report
Hi All,
I have SSRS report with multi value parameter. I need to display the parameter selection values in a text box. I've more than 50 records in the multi value parameter list. I've included the code to display "All" if I choose "select
all" option otherwise it will show the selected values. But, I need to change the logic. I have to show only the 1st 5 records if I choose more than 5 records.
How can I implement this?
I have used the below code
=iif(
Parameters!Country.Count = Count(Fields!Country.Value,
"Country")
,"All"
,iif(Parameters!Country.Count>5
,"Display the 1st 5 values"
,Join(Parameters!Country.Value,",")
Regards,
JulieHi Julie,
Per my understanding that you want to always show the first values from the param country to a textbox when you have select more then five values from the dropdown list, if you checked "select all", textbox will display "All", if
you select <=5 amount of values. it will display the selected values, right?
I have tested on my local environment and that you can create an hide parameter(Param2) to display just the first five values from the Country and when you select more then five values from country you will get the Join(Parameters!Param2.Value,",")
to display.
Details information below for your reference:
Create an new DataSet2 which the Param2 will get the values from:
SELECT TOP (5) Country
FROM tablename
Create an new param2 and hide this parameter, Set the "Available values" and "Default values" by select the "Get the values from a query"(DataSet2)
You can also Specify first five value for the "Available values" and "Default values", thus you will not need to follow the step1 to create the dataset2
Modify the expression you have provided as below:
=iif(Parameters!Country.Count = Count(Fields!Country.Value, "DataSet1"),"All" ,iif(Parameters!Country.Count>5 ,Join(Parameters!Param2.Value,","),Join(Parameters!Country.Value,",")))
Preview like below
If you still have any problem, please feel free to ask.
Thanks,
Vicky Liu
If you have any feedback on our support, please click
here.
Vicky Liu
TechNet Community Support -
Pass multi value parameter to sub report in Drill through report, ssrs
I have two reports 1 is subreport and other is main report. Date Field are placed in both reports. i have groups in main report,
one group is task. In the task fields one persons is working in 3 project, two project are same company and 1 is for other and it give me count for each project. I
want when i click on link it send multivalue parameter to subreport and it just show matching records.
Asif MehmoodAs I understand what you need is to use LookupSet function.
Suppose if your dataset is like this (for simplicity I'm showing only required fields)
PersonID Project Company
ID1 P1 C1
ID1 P2 C1
ID1 P3 C2
ID1 P4 C2
ID1 P5 C3
If you want to get the full project list for the person just send the PersonID alone and filter using it in the subreport. You can keep the project/company parameters optional in that case and put a default value. This would be the easiest thing.
Now if you want pass the project parameter also you need to pass it like this
=Join(LookupSet(Fields!Person.Value,Fields!Person.Value,Fields!Project.Value,"DatasetName"),",")
This would act like a self lookup and return you full list of projects for the person and then you can use this to set the parameter value in the subreport.
Please Mark This As Answer if it solved your issue
Please Vote This As Helpful if it helps to solve your issue
Visakh
My MSDN Page
My Personal Blog
My Facebook Page -
SSRS : Reporting Services - Multi-Value Parameter Issue
Hi,
This problem is been around the blogs and forums for while now but may be it's not answered to the fullest. I couldn't get any satisfactory or completed solution on the issue so far, any clues/help will be highly appreciated.
My scenario is very simple :-
I am using SQL Server 2005 and SSRS. I need to develop a report which has a parameter value called Customer Name. The users should be able to select multiple customers from the list and sometimes Select All also. I tried the following :-
Created two data sets : Second dataset is just to populate the Customer Name
Created a Report Parameter and mapped with the query parameter where it says "Where CName in (@Parameter1)"
Nothing seems to be working although I tried to apply all the existing half-way solutions currently available in the forums. May be I am not getting to the right solution.
Here is what's happening :-
When used '?' like "where CName = ?" then it's working fine for the single value. {Multi value query cannot be used with ?}
But for multiple values when used @Parameter1 like "where CName in (@Parameter1)" it's giving the following error
Cannot add multi value query parameter '@Parameter1' for data set 'Dataset1' because it is not supported by the data extension.
However if commented this line it's pulling all the values whether or not selected from the parameter list.
This is the basic thing which I was not able to get the desired result, in addition I was looking to get the Customer Name parameter selected with a partial entry as we use LIKE. Example :- If the user enters 'St' in the text box the list should show all the names starting from those two letters
Starter
Steve
Steven
Stevenson etc.
I am not sure whether I'll will be able to get to this extent or not but until the multi value parameter, I am desperate to get the solution. So any sort of help/advise is highly appreciated.
Regards,Hi,
This problem is been around the blogs and forums for while now but may be it's not answered to the fullest. I couldn't get any satisfactory or completed solution on the issue so far, any clues/help will be highly appreciated.
My scenario is very simple :-
I am using SQL Server 2005 and SSRS. I need to develop a report which has a parameter value called Customer Name. The users should be able to select multiple customers from the list and sometimes Select All also. I tried the following :-
Created two data sets : Second dataset is just to populate the Customer Name
Created a Report Parameter and mapped with the query parameter where it says "Where CName in (@Parameter1)"
Nothing seems to be working although I tried to apply all the existing half-way solutions currently available in the forums. May be I am not getting to the right solution.
Here is what's happening :-
When used '?' like "where CName = ?" then it's working fine for the single value. {Multi value query cannot be used with ?}
But for multiple values when used @Parameter1 like "where CName in (@Parameter1)" it's giving the following error
Cannot add multi value query parameter '@Parameter1' for data set 'Dataset1' because it is not supported by the data extension.
However if commented this line it's pulling all the values whether or not selected from the parameter list.
This is the basic thing which I was not able to get the desired result, in addition I was looking to get the Customer Name parameter selected with a partial entry as we use LIKE. Example :- If the user enters 'St' in the text box the list should show all the names starting from those two letters
Starter
Steve
Steven
Stevenson etc.
I am not sure whether I'll will be able to get to this extent or not but until the multi value parameter, I am desperate to get the solution. So any sort of help/advise is highly appreciated.
Regards,
you speak spanish -
Multi Value Parameter in SP error in Crystal Report SAP B1 ?
Hi Experts ,
i am Getting an error in Crystal Report
"Failed to retrieve data from the database. Details: 42000:[Microsoft][ODBC SQL Server Driver][SQL Server]Line 1: Incorrect syntax near '('. [Database vendor code: 120]"
I an executing the SP In Command , I want to pass multi value parameter in SP
When Pressing ok
than On Ok Button Error come
So I have Some Question
1> Why All parameter in Commend Are Automatic getting Compulsory and How to Avoid It?
2> How to Solve this error ? this error is only coming with multivalued parameter ?
i have many report in which i have to send the multi value parameter into query it self so , Plz Help Me
I am New to Crystal Report so it will be Kind Of you if explain with example .
Thankks in Advance !!!
Regards,
Mayank ShahHi Shachar,
i will explain one because i think some thing is misunderstood
please the images
when all parameter record selected and no parameter record selected ... i want all record should display
this blank report is problem
Regards,
Mayank Shah -
Passing multi-value parameter from BIEE dashboard to BIP report
It is possibile passing multi-value parameter from BIEE dashboard prompt to BI Publisher integrated report? (BIP report has a DB data source (not a answers))
Thank you
R.Hi Rajkm,
In order to pass a multi-value parameter through the Reporting Services Web services, you need to define the same numbers of ParameterValue objects as the number of the values of the multi-value parameter being past into the report. The Name property
of these ParameterValue objects must be specified same to the parameter name.
I found a good FAQ article for this scenario:
How do I pass a multi-value parameter into a report with Reporting Services Web service API?:
http://blogs.msdn.com/b/sqlforum/archive/2010/12/21/faq-how-do-i-pass-a-multi-value-parameter-into-a-report-with-sql-server-reporting-services-ssrs-web-services-api.aspx
Hope this helps.
Elvis Long
TechNet Community Support -
Passing value to multi value parameter from SSIS using Report server webservice
Hi
I am triggering SSRS report from SSIS(Script task). I am passing parameter values from SSIS package.
So far working fine. Now, I have a report which has 2 parameters. One is single value parameter and the other is multi value parameter.
No issue assigning value to single value parameter. But how can I pass multi value to multi value parameter?
My code as below
ReportExecutionService rs = new ReportExecutionService()
rs.Credentials = System.Net.CredentialCache.DefaultCredentials;
rs.Url = _webserviceURL;
rs.LoadReport(_reportPath, null);
ParameterValue[] paramval = new ParameterValue[2];
paramval[0] = new ParameterValue();
paramval[0].Name = "CountryCode";
paramval[0].Value = _countryNames;
**paramval[1] = new ParameterValue();
paramval[1].Name = "BusinessCode";
paramval[1].Value = _businessCode;****
rs.SetExecutionParameters(paramval, "en-us");
I am not sure how to pass value to BusinessCode(Multi value parameter)Hi Rajkm,
In order to pass a multi-value parameter through the Reporting Services Web services, you need to define the same numbers of ParameterValue objects as the number of the values of the multi-value parameter being past into the report. The Name property
of these ParameterValue objects must be specified same to the parameter name.
I found a good FAQ article for this scenario:
How do I pass a multi-value parameter into a report with Reporting Services Web service API?:
http://blogs.msdn.com/b/sqlforum/archive/2010/12/21/faq-how-do-i-pass-a-multi-value-parameter-into-a-report-with-sql-server-reporting-services-ssrs-web-services-api.aspx
Hope this helps.
Elvis Long
TechNet Community Support -
Parameter gets reset and Multi-value parameter doesn't work
Hi
Two Issues:
I've set the value of a Date parameter (Start Date) when moving from the home screen (Report 1) to the next screen (Report 2) as the first day of the current year (DateSerial(Year(Today),1,1). In report 2, if I try to change the Start Date to another date,
it gets reset to the first day of the year. I had the default value set as the first day of the year and even after removing it, the Start Date gets reset.
I've set a multi-value parameter (Area) in Report 1 that collects four integers. I pass Area to Report 2 (through Join (Parameters!Area.value,",")). I also used SPLIT (Join (Parameters!Area.value,","),",") to get the value.
Then, in the data set, I call this parameter as "Select A1,A2,A3,B1,B2,B3 FROM TEST_VIEW WHERE ID IN (?)". But this query throws an error that the query could not be executed. I ran the same query on the server side and it runs fine.
Note:
We cannot reference parameter names as @area for example because the Composite Server doesn't allow that.
Split and Join operate on strings but my parameters are of integer type. Is this an issue?
Please help.1. Are setting an expression for available values of parameter in report 2? Is the value you pass a valid among the set of values?
2. IN wont work with comma separated values. You need to parse the individual values out using a string parsing udf as a table and then join to that
so in your case you would be like
Select A1,A2,A3,B1,B2,B3 FROM TEST_VIEW t
INNER JOIN dbo.ParseValues (@Area,',')f
ON t.ID = f.Val
ParseValues UDF can be found in below link
http://visakhm.blogspot.in/2010/02/parsing-delimited-string.html
Please Mark This As Answer if it solved your issue
Please Vote This As Helpful if it helps to solve your issue
Visakh
My Wiki User Page
My MSDN Page
My Personal Blog
My Facebook Page -
Multi value parameter issue.
We are facing some issue in SSRS report, whilst running SSRS report it shows as blank in the multi value parameter field when the <all> option is selected(character will be more than 20000). (Report server: MS windows server 2003 and 32 bit(GIRMSA3),
server: MS windows server 2008 and 64 bit)
Same is working in the SSRS Server and Citrix servers both are 32 bit , MS windows server 2003.
1. What is the Maximum Number of Values allowed in a SSRS 2008 Text Parameter Dropdown ? Is it configurable ?
2. What is the Maximum of Length of Select Values in a Text Parameter Dropdown in SSRS 2005 ? Is it configurable ?
Thanks
Vijay
Thanks RaiHi Vijay,
This is because of the following patch
“MS11-100 .Net Framework Security Update (KB 2656355)”. Applying this update limits the maximum number of form keys, files and JSON members to 1000 in a request.
Go to the reporting services installation folder.
Go to the report server folder and make a backup of the file “Web.config”. Once you have the backup, open the original file in notepad and add the following entry under the Configuration section:
<appSettings>
<add key="aspnet:MaxHttpCollectionKeys" value="30000"/>
</appSettings>
Go to the Report Manager folder and again make a backup of the file “Web.config”. Once you have the backup, open the original file in notepad and add the following entry under the appSettings tag:
< add key="aspnet:MaxHttpCollectionKeys" value="10000"/>
Once you do the above steps, you should be able to run the report without any issue.
Hope this helps.
Regards,
Charlie Liao
TechNet Community Support -
Passing Multi-Value Parameter to a Stored Procedure
Has anyone experienced passing a Parameter (MultiValue) to a Stored Procedure? I am aware that Crystal Passes the Param as an Array. How would you go about handling this within a Stored Procedure???
Hi Daniel
Try as below:
1. Create a Crystal report, and add a multi-value parameter.
2. Since the multi-value parameter is treated as an array, create a formula that uses the JOIN function. Create a formula as below:
//Formula: @JoinFormula
Join ({?Multi-value parameter array},";")
====================
NOTE:
In the formula above, a semi-colon (";") is the delimiter.
====================
3. Within the main report, create a subreport based on the stored procedure, and include the parameter to be populated with the multi-value list.
4. Link the Join formula in the main report to the stored procedure parameter in the subreport.
Doing so passes a multi-value parameter to the stored procedure.
Hope this helps!!!!
Regards
Sourashree -
How to set the default selection to "Select All" in a Multi valued parameter in SSRS 2008?
Hello Everyone,
How to set the default selection to "Select All" in a Multi valued parameter in SSRS 2008?
Regards
Gautam S
RegardsYou need to specify "Default Values" in the report parameter property. Choose similar option used in the "Available Values" option, this will allow the parameter to check "Select All".
Regards, RSingh -
Passing multi value parameter to the Drill through report
Hi
I have two reports say Report A and Report B.
Both reports using same parameters.
I am Navigating from Report A to Report B using Jump to Report option.
Now when I pass multiple parameter to the Report B it only displays first parameter results.
In report B I have parameter multi value select to true.
I would like to know if its possible or not to pass multi value parameter in drill through report?
I would appreciate if someone can help me here.
Regards
AmitYes you can pass multi value parameters to a drill through report.
It works similar to multi value parameters for subreports, which is discussed in detail in this thread: http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=163803&SiteID=1
-- Robert -
Reporting Services Multi Value Parameter
I have an SSRS 2005 report that I want to enable for multi value. However, I always run into the issue with the way it passes multiple values. How exactly do I get a multi-value parameter setup and working on both the report AND SQL side?
I used the MS example of checking the multi checkbox for the parameter and then using a WHERE Column IN (@MultiParam), but this doesn't work. When you select one item, or is it multiple I can't remember, it fails. I really appreciate the help!
Nathon Dalton
Software Developer
Systems Administrator
Network Administrator
Blog: http://nathondalton.wordpress.comHere's a sample of the SQL stored procedure that I use to get the dataset:
Create
proc [dbo].[spStoredProcName]
@supervisor
varchar(max)
as
begin
create
table #tempSups
Supervisor
varchar(62)
declare
@i
int
select
@i = 0
select
@i =
charindex(',',@supervisor
begin
if @i
<> 0
while @i
>0
begin
insert
into #tempSups
values
(ltrim(rtrim(left(@supervisor,
@i-1))))
select @supervisor
=
right(@supervisor,
len(@supervisor)
- @i)
select @i
=
charindex(',',
@supervisor)
end
end
insert
into #tempSups
values
(ltrim(rtrim(@supervisor)))
From there, simply join your query to the temp table -
How to design SSRS report to filter multi-value parameter?
I developed an RDL which takes a multivalue parameter and I want to set a visibility expression or filter based on this parameter. This parameter uses an "All" value equal to '660E4583-7F29-4D37-8038-5096AE6A1A7F'.
I want to make the main tablix visible if this parameter is set to this uniqueidentifier and invisible otherwise. How can I achieve this either in the tsql dataset or on the report side? I have tried numerous workarounds, but none have worked so far! I've tried
different expressions and datatypes.
Before I tried If/Else statements in the tsql dataset, but most recently I instead added flags to the tsql dataset for each condition and am trying to make this tablix only include the records with the flag matching the parameters chosen. But even this is not
working for me.
Here is sample data:
create table #dummydata
parameter varchar(max),
b varchar(max)
insert #dummydata values('660E4583-7F29-4D37-8038-5096AE6A1A7F','record 1'),('660E4583-7F29-4D37-8038-5096AE6A1vcd','record 2'),('660E4583-7F29-4D37-8038-5096AE6A1v52','record 3')
select * from #dummydata
And my filter expression in the RDL for this tablix is:
=iif(Parameters!Modifier.Value(0)="660E4583-7F29-4D37-8038-5096AE6A1A7F",1,0)
With datatype = integer and value = 1 However, this tablix is invisible with the above even when I choose "All" for the parameter value = default value. How can I make this tablix visible?
Ryan DHi Ryan D,
After testing the scenario in my local environment, everything goes well. As per my understanding, I think this issue can be caused by the Available values in the Modifier parameter. Could you tell us the Available values of Modifier parameter in your scenario?
The following scenario in my test is for your reference:
I create a dataset with the sample data you posted.
Add a multi-value parameter named Modifier in the report.
Specify the following values in the Available Values of the parameter (please note that the value “All” should be located in the first place, because we use Parameters!Modifier.Value(0) in the filter):
Label: All Value: ="660E4583-7F29-4D37-8038-5096AE6A1A7F"
Label: A Value: ="1"
Label: B Value: ="2"
Label: C Value: ="3"
Drag a table to the design surface, insert parameter and b fields in the table.
Use the same expression as you said to add a filter in the tablix.
We can refer to the following screenshot:
If there are any other questions, please feel free to ask.
Thanks,
Katherine Xiong
Katherine Xiong
TechNet Community Support -
Hello Forum Members,
I have a Multi Valued Parameter as text field.
Input field Sale_Month is of the type Nvarchar in the Database and has 2014.01,2014.02,2014.05 etc.
I can multi select the values but when I run the report only values from first check box are retrieved though I have data for all.
Please advise me.
Sqlquery9Go to tablix properties, under Filter tab make sure that the Sale_Month filter expression has "IN" operator. Also make sure that the value expression has =Parameter!Sale_Month.Value
Regards, RSingh
Maybe you are looking for
-
I have a Mac Powerbook G4, running OS X 10.5.8. I'm getting messages from Google that Firefox is an old version and needs updating - so I went to the Firefox website and the message said that "Unfortunately the latest version of Firefox isn't compati
-
Youtube video stops playing after 11 seconds
Mac Pro / Mountain Lion 10.8.2 / Flash 11.4 - YouTube videos stop playing after 11 secs. Only just started happening last week - around time when I installed latest Lion upgrade but this may be a red herring. Tried uninstalling Flash and reinstalli
-
Errors in N-comp comiplation of sqlj code in oracle 9.2
While N-comp compilation of an Java Stored Procedure (SQLJ) am getting following errors :- softwares used Java ver :- JDK 1.3 database :- oracle version 9.2 with JServer Rel 9.2.0.1.0 Steps carried for Ncomp compilation 1) sqlj -ser2class Ap_cm_am_ex
-
I'm using CS4 Extended. I'm now getting busy enough with my photography on the side that softening the skin manually through layers is becoming rather time consuming. I'm curious if there is some kind of plug in that is able to speed up productivity
-
Does Mac have a text editor?
I need a text editor in Mac similar to Notepad or Wordpad in the PC. Is there such a thing? Thanks