Is it possible to have an outer table mapped to a dataset and use another table inside the outer table which maps to a second dataset,where the second dataset should take the feild value
from the first dataset(as parameter) to pull data?
Please comment
Thanks in advance,
San
You should be able to do this with a subreport. Pass in a parameter to use as a filter. If you're using a filter rather than a query parameter, it should be able to use the same Intermediate Report (ie, RDL + Data) for each subreport, thereby achieving your goal.
It's not possible. Reporting Services doesn't support multiple datasets. You'll need to get creative with your SQL to create a single dataset of all data.
Related
I have created 2 datasets that return data from a web service.
now I want to merge those two datasets in a single dataset, is it possible to create another dataset that contains those 2 merged ?
PS: you can also propose new solutions
Unfortunately SSRS doesn't offer that feature. One alternative is using the Lookup and LookupSet functions to use both datasets together in the report, but this is not efficient for large datasets. If the data doesn't need to be live, another option would be to create a procedure that caches the joined data in a table on a schedule and then use that table in the report. If those options aren't adequate, you may want to look at using a different reporting tool such as Excel (with web services and power query) or Tableau (if you have licenses).
I have a (very simple) report that load yearly data from an SSAS Cube for any given customer number. The report is linked in our CRM and I want to load the report within the CRM by passing the customer number into the URL.
I know how to do it with a relational dataset, but I'm at a loss here.
I thought the URL was:
http://reportserver/CRM/Salesreport&Customer=[customer].[fields!id.value]="1234"
Where 1234 is being passed on by the CRM.
Edit: This is for SSAS-datasets, not relational datasets!
When working with MDX, you have to be mindful of the syntax of the parameter values. The value of "1234" doesn't exist in your SSAS cube. There are several ways to go about applying parameters and filters, but I'll give you one example.
Change the URL to be in this format:
http://reportserver/CRM/Salesreport&Customer=1234
Add a Filter to your dataset where Fields!id.Value = Parameters!Customer.Value
By using a dataset filter, you are avoiding the complications of MDX syntax and using the data after the query has been run. A more efficient approach would be to convert the parameter to MDX syntax and pass it into the query, but that requires more work.
Also, if you check the Parameter box while in the Query Designer, it will automatically add a parameter along with a hidden dataset to populate it. That can be very useful because it converts the values into MDX syntax for you.
I am using SSRS 2012.
I have two datasets. I have two tables.
The first table contains a contract Id which is used as parameter in the second dataset.
I want to set the parameter as the contractId (ie Fields!ContractId.Value, or ReportItems!Contract1.Value) or something like that but nothing works because of different limitations.
If I would be using a subreport that would have been easy just pass the Field!Contract.Value from the 1st dataset as the parameter for the second and there you go. But since we want to call the report using SQL server agent, I cannot use subreport since the agent is limited and does not accept subreport.
So I believe my only option is to use two different tables, but I still need the value from the first dataset. Also, I don't think LookUp() would work for me as I do not have Ids.
Does anyone already did something like that?
Thanks for any help.
You can create report parameters in which the available values are pulled from a query.
Then just use the parameter in your second data set.
I am trying work on a requirement using SSRS 2008 R2. The requirement is to create a detailed report which has main query(dataset1). And a column in this main query is used as a join or input to another query(dataset2).
I am trying to create a parameter and get the value for this from the main query or dataset1. How do I assign this parameter to dataset2? Also I will have similar situation to create dataset3, dataset4 etc and all this sub queries needs to be joined to dataset1.
Can you please help me what is the best way to do this?
In Dataset2, use a SQL variable in your query. SSRS will create a report parameter for you. Then go into this new report parameter and tell it that its available values should come from Dataset1.
Then repeat for the other datasets. :)
I have made one main report containing a few subreports. At the end I would like to compare some figures from the different parts of the report and also make some calculations with numbers received from the different parts.
Does anybody know a way to get values from the subreport into the main report? All calculations e.g. aggregates that will be made at the end refer only to the dataset for the main part and the other subreports have their own datasets, fetched from other tables.
I must second #JoaoLeal's comment, I think the method you propose (retrieving data from a subreport in the main report) is technically not possible.
However, there's another way to achieve what you want (show aggregate info on the data displayed in subreports). You could encapsulate your dataset queries in a way that they can be reused by the main report. There are two main/basic options:
Use a stored procedure to query the data
Use a database view for the data
Your datasets will be very simple: the subreports will select all the data. The main report can then either have a dataset query that aggregates data appropriately from the view / proc, or also retrieve all results and do the aggregation in SSRS.
I think in RDLC report there is no way for share variable between main report and subreport . So the only way is use another dataset or passing new vaiable. Hope this will help...
I have myself managed to achieve what I expected through using different datasets on the main form which also contains data for the sub reports.
But also I found this way (not tested):
[Reports]![YourReportName]![YourSubReportName]![TheValueFromTheSubReportYouWantToReference]
There is also a long discution about this on SQL Server Central.