views:

871

answers:

2

Hello,

I've done a asp.net application to generate reports over a particular data. Initially i created local reports (.rdlc) to generate reports. I created separate .xsd for each rdlc and designed the reports. I build the dataset programmatically and bind it to the rdlc. I used the following code for binding the datasource to the reports -

rptMyReport.LocalReport.ReportPath = Server.MapPath(srdlcName);
rptMyReport.LocalReport.DataSources.Add(rds);

Now i have converted all the rdlc to rdl following this msdn article and i've published the reports to the report server.

rptMyReport.ServerReport.ReportServerUrl = new System.Uri("http://ReportServer/ReportServer");
rptMyReport.ServerReport.ReportPath = "/ReportFolder/ReportName";

Now how can i set the datasource to the reports programmatically?

A: 

What are you trying to do? I believe the datasource is mentioned within the .RDL file itself. For ex: When you create an Report using BIDS, you can specify the datasource. This gets added to the .RDL file. The same concept holds true here as well.

SoftwareGeek
Based on the user choices i'm filtering the data from a table and assigning it to the rdlc. So how can i do that in rdl?
NLV
+3  A: 

This work is impossible. you should create your datasource in your rdl report. you must write needed queries for report data gathering. you can use this query as a text or stored procedure. You can pass parameters to this query and filter the output of the query. you can only pass the parameters to rdl report like this:

ReportParameter[] Params = new ReportParameter[1];
Params[0] = "Parameter Value";
ReportViewerControl.ServerReport.SetParameters(Params);
masoud ramezani
Thank you. That did it!
NLV