I need assistance with something which I have not been able to find through searching this site or even via Google.
I currently have an SSRS report which has a dropdown list that is immediately populated upon loading of the page.
Due to the extensiveness of this list, I have been asked to add another paramater to the report - a text box that would allow the user input and further "filter" the already-populated dropdown list.
By adding this feature, it would allow the user to narrow the contents of the dropdown list, if the user already knows what value he/she is after.
Now this is where I'm getting stuck... as far as I am aware, you can only have one dataset that is able to provide the data of any given paramater (in this case, a dropdown list). So how do you repopulate a dropdown list, that has already been populated?
Any assistance with this would be greatly appreciated.
EDIT: Please note that the only code driving this report are SQL stored procedures. This report was created using Visual Studio 2013.
Thanks.
Use a second dataset in order to populate your dropdown. In the second dataset, simply take your sql query and select distinct in a group, then you can use the second dataset as the dropdown and tie it to your column that matches.
I created one rdlc file using report wizard in C#. Initially i chose some columns to display in the report.Later i want to include extra columns in the report which is already available in Table. Just i need to reopen the rdlc in report wizard and i want to change the table as Matrix instead of Stepped and add more columns,need to change group item.
Im using visual studio 2008, in that i cannot see some fields in that.Tool controls are get overlapping
How can i change some properties here or otherwise i have to delete the present rdlc file and start to Design the new report?
There are two ways you can do it.
if you created DataSet in the same project and used it as a base for your wizard, then you can make changes in that DataSet, open your report, open ReportData (under View, if you are using VS2013), open DataSets, right-click on DataSet in question and select Refresh option. This should bring new fields in DataSet definition of the report.
You can add new fields directly in XML definition of the report. To do it, right click on your report in Solution Explore and open it with XML editor. Here is the same question answered: Update datasouce in RDLC report
I'm a bit new to reportviewer so I have a question that could solve my doubts about it. I created a DataSet and bind the table using the DataSet and created a report and show the data using the reportviewer. Here comes the problem that I can't seems to solve it. Below were the pictures that I am showing to you guys.
Notice the + sign in the box? How to make the reportviewer that it wouldn't show the + sign and immediately shows every data that I put. I need to click several times in order to see the entire data inside the reportviewer like the picture below.
I just found the answer to that doubts. It is to unselect the 'Expand/collapse' groups check box when you were creating.
On my RDLC page, the "Report Data" window shows a custom dataset that it pulls fields from to display. I've modified this DataSet with some additional tables. However, these tables aren't shown and therefore I'm unable to select them for use in expressions (in the Expression window, under Datasets, there are only the tables that were originally there, not the additional tables I've added).
Refreshing the data source doesn't do anything, and if I right-click on it and select "New Dataset", I'm unable to select the parent data source (it doesn't appear in the drop down list). What I mean is, if the data source is called "MyDataSet", and under that are other DataSets, if I right-click and go to "Add Dataset", it brings up the dialog box but "MyDataSet" is not in the list of available Data sources, even though I'm specifically saying I want to add a datatable to that data source. The other, existing, datatables list it under the data source, but new ones do not.
How do I refresh the data source so I can access these new tables in my report?
This is an old question, but I was having this problem too and I'll mention my answer for future googlers.
In the Report Data Window (which automatically appears for me when I am editing a .rdlc file), I had to Refresh my Dataset (same name as the DataSetName in the Tablix in my .rdlc Report), and then that updated the XML of the .rdlc file. The new fields are then available to me.
I have the same problem with Visual Studio 2010 Premium. You must do this step:
Re-build the project that contain your Business Object
Restart Visual Studio
Refresh your DataSet (Report Data --> Right click on DataSet --> Refresh).
I managed to get this working (for SSRS in C# using a Dataset that points to a Stored Procedure) by:
hitting Shift+Alt+D (which opens the "Data Sources" window)
In Data Sources, select/click the table you want to update
At the top of the window there are icons (I'm using VS2012). The 2nd from the right is "Configure Data Source" - click it and it will open a new wizard window that will appear to be refreshing everything.
UN-check the column that is no longer applicable and/or check the new column (if the values aren't already checked/unchecked).
Go back to your "Report Data" window (Ctrl+Alt+D) and right-click on your Dataset and then click "Refresh".
All the columns should be updated at that point.
Have you tried rebuilding your project? I had to do this after changing any business object.
I had this issue for hours on VS-2008. Tried everything and at the end what worked was just to close and open it VS again.
I can confirm that just closing the solution and reopening it, with later refreshing the DataSet from Report Data window worked for me.
Seems like there is no need to restart VS.
I got the same issue in visual studio 2012. I solved it, here is the steps,
Press Ctrl + Q and type Report Data (If No Report Data window available)
Expand Data Source node to find the data set (I have used Data Set)
Right click on the Data set and select Refresh (Simply refresh the data source)
Delete the dataset and again add it with ur query or usp...
If you are using a database source the likely culprit is that you didn't create the query with select *. Without the * the query will always be static and new fields won't appear. HTH
For visual studio 2010
Open Your Data Set (.xsd file)
Right click on data set click on configure
Click on Next Next than finish
On your dataset click refresh than Changes willbe display.
Sounds like same issue is happening on VS2019. I could resolve the issue by only restarting Visual Studio, nothing else worked!
This is the only solution worked for me.
After updating the DataSource properly, open the .rdlc file in NotePad and add the newly added Field manually. Then it will be available to use in the report.
Had the same in VS2019 using an object datasource, right click and refresh on the dataset in the Report Data window had no effect until I changed the build configuration from x64 to Any CPU, then it worked as expected. Once it updated changed the build back and all was well - not at all flakey!
As ChanthJ said -
It is the only solution worked for me.
After updating the DataSource properly, open the .rdlc file in NotePad and add the newly added Field manually. Then it will be available to use in the report.
steps
Assuming you Data source is fed by stored procedures, the following worked for me (On Visual Studio 2017): -
Make the necessary changes in the source stored procedure in the Database(new Field Names etc.).
Double click the .XSD file from the Solution Explorer to open it
Delete the associated Data Table / Table Adapter.
Add the Table Adapter back into the .XSD file (the changes will be reflected)
Save and close the .XSD
Open the .rdlc report designer.
Press "ctrl+Alt+D" or Click View > Report Data.
Expand the Data Sources node.
Right Click the Data Source.
Select "Refresh".
Expand the Datasets node.
Right Click the Data Source.
Select "Refresh"
The changes will now reflect and be available for selection on the .rdlc
report designer
i want to know is it possible to bind my all crystal reports to a single reportviewer, somewhat in tabbed view or treevie. If tabbed then visible through navigation button.
If yes then how?
any help would be highly appreciated.
Amit Ranjan
Having reviewed the micrososft documentation, it seems you can not bind multiple reports to a viewer. As suggested here:
"Displaying a report using the CrystalReportViewer control
The CrystalReportViewer control displays only one report at a time. Which report is displayed by the control is determined by which report you bind to your code. To tell the control which report to display, you bind the ReportSource property of the control to a particular report. At runtime, the control loads the report that is bound to the ReportSource property and displays it. "
The diocumentation goes on to say you can only bind a report type to the report source.
So, basically you need to build the multi view yourself. In my mind this can be done in two ways.
Create a report viewer for each
report (maybe using a tab control)
Create a single viewer and display
different reports based on what the user
selects in your application. i.e.
I have done something simular in the past, but rather than using the report viewer, i used crystal to export the report to pdf and displayed those to the user.
I hope this is clearer. :-)
Could you not hold your reports in a hierarchical structure in memory , which relates to a visible tree view and displayed the relevant report one at a time as the users selects various nodes..
If you can't pass a colection of reports to your viewer. I would hold a list of reports in a Dictionary or some other kind of list , which has a report and an identifier for that report.
Then display a tree view which represents the reports structure you have, with each node holding the id of the report it represents, when the user selects the a TreeView node, you can look up you report from the dictionary and load it into the report viewer.
I hope that makes sense...