SQL Reporting :: C# Code Call SSRS Subreport From ReportViewer?
Nov 18, 2010Any C# Code or any setting in Reportviewer to call SSRS Subreport from ReportViewerThe SSRS Subreport executes properly from report manager.
View 1 RepliesAny C# Code or any setting in Reportviewer to call SSRS Subreport from ReportViewerThe SSRS Subreport executes properly from report manager.
View 1 RepliesMy web form reportviewer control can't seem to find my sub report. When I debug, it gives an error message in the report that states the report can't be found at file path for the sub report. If I copy and paste the path out of the error into the address bar of windows explorer, the report opens right up. I am using VS 2010, the 4.0 framework, and windows 7.
View 1 RepliesI'm developing a web application , and I need to present information in a report.I have this Database in sql 2005, The report has to be a master-detail report so I'm including a subreport.I'm new to reporting I've been reading the example at:
http://www.gotreportviewer.com
as in the example I supply a hadler for the SubreportProcessing event.
private void MainForm_Load(object sender, EventArgs e)
{
this.reportViewer1.LocalReport.SubreportProcessing += new SubreportProcessingEventHandler(MySubreportEventHandler);[code]....
This even nerver fires and the page shows this error: Error: Subreport could not be shown.
I have SSRS (discountasp.net) and I currently display reports on my web page using Reportviewer and use .net code to authenticate them (username/password). Recently I have bought VPS (Windows Server 2008 Web Edition + .net 4.0) and would like to use SSRS the same way as above. I have never done this before so need some guidance on that just to ensure the server is still "safe". Below are some questions that I think are related but feel free to add other comments that I didn't think about.
1) Set up new user? What permissions are required?
2) Configure SSRS to for external connections?
3) Firewall?
Starting to look into an web app thet uses the ReportViewer to display SSRS reports. This is for SSRS 2008. What would be the best way to go about the follwoing: The reports are sales reports so only ceratin people will get to see certain reports.
1: If a user opens a report which they can see and that report has a subreport which they can't, will the subreport still be viewable?
2: If the webapp will be used by many different people internally and eventually by outside people, what is the best security startegy to use, just plain ServerReportCredentials passing, or something else?
i am trying to call an SSRS report (in VS 2005) from my asp.net (web application) implemented in VS 2008 (don't ask me why, i am kind of confused by this weird arrangement too). report has been deployed to report server and it contains a multi-value parameter.when i call report from asp.net app, i set the value for this multi-value parameter as a string and all selected values are separated by comma. i.e. i have 5 options (a, b, c, d, e), and i selected first two, the string is then "a,b".
the multi-value parameter on the report side is defined as: Multi-value selected, Allow blank selected, Avaliable values are from query (a dataset that contains a, b, c, d, e) Value field and Label field are both mapped to dataset filed (there is only one field in the dataset). the default values are from query too (same dataset). value field is mapped also.
i have two problems:
1: it looks to me that all available values are selected on the report side, regardless what i really selected and passed over (when i turn on paramters).
2: when i turn off parameters, i need to display what values being selected as a string, the join statement, join(Parameters!TeamLead.Value), gives a list of all available values for the multi-value parameter, however, i only need selected values. how should i write this expression (for a textbox) to join only selected items in the multi-value parameter(i don't see any option in the intellisense dropdown box)?
I am trying to integrate an existing SSRS report in asp.net. 1. created the report and deployed it. 2. In the web page, have a reportviewer and trying to attach the same report. The report's url is :http://ReportServername/Reports/Pages/Report.aspx?ItemPath=%Clinical+ReportQ: What is my ReportPath and reportServerUrl? Is there something else I need to do? Should I copy over the rdl file to the report server?
View 4 RepliesI have a number of .rdl SSRS 2000 files that I want to convert to SSRS 2005 .rdl files.
I have installed BIDS 2005 and have opened the project in BIDS 2005.
When i open any file individually I get about 200 error messages.
Does anyone know what I need to do to convert the .rdl files to SSRS 2005?
I have created a snapshot for a report with a default parameters which is having a subreport. Programmatically, i'm trying to access the reports with a parameter value which is rendering the reports with all parameter values. This is working fine if the subreport is removed.
View 1 RepliesI am not getting data in subreport along with main report, But If I run the subreport alone I am getting data.below is the code which I am using , Please figure out my problem and give me the solution.
rptH.FileName = Server.MapPath(
rptH.Load();
ReportClass rptH =
[code]...
I have the following a Master Table that has some Id and a child table with multiple records for that Id, i created a Main rdlc report in asp.net and a sub report, i am having trouble on displaying the sub report as multiple times (i.e. for reach record in the child table for a particular Main Id there should be a sub report with the information related to the child tabke), i was able to display it repeated but it repeated the first record of the child table.
View 1 RepliesMy main report is about half of a page long, subreport contains a table and its length depends on how many rows the table has. But even when a single row, subreport jumps to second page. How to prevent it?
View 5 RepliesI am creating a report using sql reporting services (.rdlc) in asp.net web application. I am displaying master records using List because I need to display one record in one page. In each page now I want to display the child records in a table inside the same List control.
For example: In mater records there will be Department Name, Department Location, Department Zip. In child records there will be Employee Name, Employee Id, Employee Salary, Employee Start Date. There is a link between Dapartment and Employee table by Department Id. I want to display one department record in one page and the all employee of that department in same page in a table. And next page of the report will have other department record and respective employees in a table.
I am being able to display Department records in each page but not being able to display Employees records in a table for particular Department Id. For this I used List control.
I have created a drill down report in SSRS which works fine in Visual studio but when deployed and viewed using a report viewer on an asp.net web page it acts funny. It load fine the first time but as soon as i expand any of the drill downs the width of the report suddenly becomes very! lengthy and the details data disappears.
View 2 RepliesI'm having a problem with Microsoft Report Viewer reports in local mode...
A little background info:
I have a flat data file which I load into memory (split into fields in a dataset) and need displayed in a report. The data structure of this file is hierarchical with about 4 levels: File, Batch, Entry, and AdditionalInfo. The amount and names of the fields in the Entry records change depending on a field in their parent's Batch record (lets call this field BatchType). So while I'm reading Batches i need to look at this BatchType field to know how to read/display the child Entries.
Problem:
Since my Entry sections in my report will be different depending on the BatchType field in the Batch record, I researched a bit and found out that the only way to do this was to do subreports. I figured I'd have to have a different subreport for each Entry type. However, I've been unable to find a way to change the ReportName parameter in the subreport object during runtime. I dont even know if it's possible to change a subreport's ReportName on the fly.
Am using northwind sql server database to do a test. Using customer, order table to show master detail report. Customerid is the reference. After Create a Parameter to run the subreport. Some how i cant able to refernce the master, detail. so it will show all the records in the detail section instead of showing relevant customer id details from the orders table. pls see the picture belowMainreport - > call the subreport parameter. but i miss with one more step to finish the report "Filter Expression", i guess. how to pass the parameter value subreport filter.
Customer.aspx
[Code]....
customer.aspx.cs
[Code]....
i am trying to call a report with a ReportViewer control using this code:
[Code]....
but i am having this error
Microsoft.Reporting.WebForms.MissingReportSourceException = the source of the report definition has not been specified.
iam really new to Crystal Report XI Release 2..iam using multiple subreport in mainreport and onclick of particular subreport it would list out all items related to it..for example if u have customer chart(subreport) in mainreport and onclick of this it would list all customer on demand and subreport is binded and onclick of single customer it would list out single customer which sholud be passed as parameter it would get customer(full Contact details) in another subreport.if this can be done. how it can be done and explain in steps how it can be and if possible with screen shots
View 3 RepliesI have an SSRS report that has a Comments field where there's enough text to span multiple rows per record. It renders fine in the ASP.Net ReportViewer control, but when it's exported the formatting can be different. Exporting to Word it looks fantastic. But exporting to Excel and PDF, the row height for each record is never increased beyond the default, so the text just gets truncated. In Excel I can go in and double-click on individual or multiple row heights to fix them, but this is an extra step we don't want.
View 2 RepliesI am having an issue with my reportviewer where nothing is visible, not even the control. If I add other content, it shows, but the reportviewer is not. I am using the 9.0.0.0 version of the control with SSRS 2005 inside an MVC 2.0 application. I have built and deployed the report to the server. I have confirmed by looking on the report server and running it there.
My app is MVC 2.0
I have added a regular webforms page into the root of the website. I put it in a form, runat=server, and enabled viewstate. I have added the .aspx routing exception My code behind is set up similarly to every example I can find. My webconfig is configured (maybe that is where my issue is) I set up a manual test by forcing the correct values in and I get the same blank page. I have a reference to the 9.0.0.0 versions of Microsoft.ReportViewer.WebForms and Microsoft.ReportViewer.Common and as you can see my web.config matches my references.
The page appears white - no control is visible. No errors are thrown. As I remembered it, there should at least be a blank Reportviewer control on the page, however there isn't anything there at all.
A few other oddities - If I remove the parameter setting, no error occurrs. I also added code to send in credentials, but that did not work, even when sending in the credentials for the administrator account.
Report.aspx
<%@ Page Language="C#" AutoEventWireup="true" ViewStateMode="Enabled" CodeBehind="Report.aspx.cs" Inherits="MySite.Web.Report" %>
<%@ Register Assembly="Microsoft.ReportViewer.WebForms, Version=9.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
Namespace="Microsoft.Reporting.WebForms" TagPrefix="rsweb" %>
<html>
<body>
<form id="form1" runat="server">
<rsweb:ReportViewer ID="reportViewer" EnableViewState="True" runat="server" />
</form>
</body>
</html>
Routing Exceptions
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.IgnoreRoute("{resource}.aspx/{*pathInfo}");
Code Behind
protected void Page_Load(object sender, EventArgs e)
{
var qs = ReportQueryString.Parse(Request.QueryString["R"]);
reportViewer.ServerReport.ReportServerUrl = ConfigurationHelper.Reports.ReportServerUrl;
reportViewer.ServerReport.ReportPath = String.Format(ConfigurationHelper.Reports.ReportPath, qs.ReportName);
var result = from p in qs.Parameters
select new ReportParameter(p.Key, p.Value);
reportViewer.ServerReport.SetParameters(result);
reportViewer.ServerReport.Refresh();
}
Web.config
<compilation debug="true" targetFramework="4.0">
<assemblies>
<add assembly="System.Web.Abstractions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<add assembly="System.Web.Routing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<add assembly="System.Web.Mvc, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<add assembly="Microsoft.ReportViewer.WebForms, Version=9.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A" />
<add assembly="Microsoft.ReportViewer.Common, Version=9.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A" />
</assemblies>
<buildProviders>
<add type="Microsoft.Reporting.RdlBuildProvider, Microsoft.ReportViewer.Common, Version=9.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" extension=".rdl" />
</buildProviders>
</compilation>
<pages>
<namespaces>
<add namespace="Microsoft.Web.Mvc" />
<add namespace="System.Web.Mvc" />
<add namespace="System.Web.Mvc.Ajax" />
<add namespace="System.Web.Mvc.Html" />
<add namespace="System.Web.Routing" />
<add namespace="System.Drawing" />
</namespaces>
</pages>
<httpHandlers>
<add type="Microsoft.Reporting.WebForms.HttpHandler, Microsoft.ReportViewer.WebForms, Version=9.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" path="Reserved.ReportViewerWebControl.axd" verb="*" />
</httpHandlers>
EDIT:
As requested, here is the page source. On a side note, I am using Chrome, but I did try IE with the same result.
<html>
<body>
<form method="post" action="Report.aspx?R=rYeJ28xc7emx1PJPgiRkOi1lXjmmNE6pF7aJrEJ443w*" id="form1">
<div class="aspNetHidden">
<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="/wEPDwULLTE0NzMwNTUwMTgPZBYCAgEPZBYCAgEPFCsABA8WAh4OUmVuZGVyaW5nU3RhdGULKZUBTWljcm9zb2Z0LlJlcG9ydGluZy5XZWJGb3Jtcy5SZXBvcnRSZW5kZXJpbmdTdGF0ZSwgTWljcm9zb2Z0LlJlcG9ydFZpZXdlci5XZWJGb3JtcywgVmVyc2lvbj05LjAuMC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWIwM2Y1ZjdmMTFkNTBhM2ECZCgpWFN5c3RlbS5HdWlkLCBtc2NvcmxpYiwgVmVyc2lvbj00LjAuMC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkkOTQ5NWQxOTEtMmVmMy00OTJlLTk1ZTgtMzRhZDBkYWI4ZGM4AgEUKwABFCsAAgIBZBYKZg8PFgIeB1Zpc2libGVoZGQCAQ8PFgIfAWhkFgICCA8PFgIfAWhkZAIGDxYCHgVWYWx1ZQUBMGQCBw8WAh8CBQVmYWxzZWQCCA8WAh8CBQVmYWxzZWRkvlE8tEXOwYRIWVLykp+GFwUxbrW+MAtpUdojqbM994U=" />
</div>
<script src="/Reserved.ReportViewerWebControl.axd?OpType=Resource&Version=9.0.30729.4402&Name=Microsoft.Reporting.WebForms.Scripts.ReportViewer.js" type="text/javascript"></script>
<div class="aspNetHidden">
<input type="hidden" name="__EVENTTARGET" id="__EVENTTARGET" value="" />
<input type="hidden" name="__EVENTARGUMENT" id="__EVENTARGUMENT" value="" />
<input type="hidden" name="__EVENTVALIDATION" id="__EVENTVALIDATION" value="/wEWBgLgrv+UCwL8sqiiBgL8sqyiBgL8srCiBgL8srSiBgL8stiiBkbkdSlUJxfVD65mS2OQpfO01z367cPQhXOdmZguuzmc" />
</div>
<div id="reportViewer" style="display:inline-block;height:400px;width:100%;">
<Script language="javascript"><!--
if (document.getElementById('reportViewer') != null)
{
document.getElementById('reportViewer').ClientController = new RSClientController("reportViewer_ctl03", "ReportFramereportViewer", "/Reserved.ReportViewerWebControl.axd?Mode=true&ReportID=b003c2a678b44c71b949617a693d4f8c&ControlID=9495d1912ef3492e95e834ad0dab8dc8&Culture=1033&UICulture=1033&ReportStack=1&OpType=DocMapArea&Controller=reportViewer&RootLabel=&BackColor=%23ECE9D8&Border=1px+Black+Solid&Font=font-family%3aVerdana%3bfont-size%3a8pt%3b", "25%", false, "/Reserved.ReportViewerWebControl.axd?Mode=true&ReportID=2558c6ccaa09444ea46bd3062bc553dd&ControlID=9495d1912ef3492e95e834ad0dab8dc8&Culture=1033&UICulture=1033&ReportStack=1&OpType=ReportArea&Controller=reportViewer&LinkTarget=_top", true, true, true, true, true, true, "reportViewer_ctl06", false, "/Reserved.ReportViewerWebControl.axd?Mode=true&ReportID=66fb690f271c48d59bc881cd0f07421d&ControlID=9495d1912ef3492e95e834ad0dab8dc8&Culture=1033&UICulture=1033&ReportStack=1&OpType=Export&FileName=&ContentDisposition=OnlyHtmlInline&Format=", "PrintFramereportViewer", "/Reserved.ReportViewerWebControl.axd?Mode=true&ReportID=c1c1698c78c7476b8a04e03424d3a36c&ControlID=9495d1912ef3492e95e834ad0dab8dc8&Culture=1033&UICulture=1033&ReportStack=1&OpType=PrintHtml", "reportViewer_ctl07", "reportViewer_ctl00", "reportViewer_ctl08");
document.getElementById('reportViewer').ClientController.PostBackAction =
function(actionType, actionParam)
{
document.getElementById("reportViewer_ctl04").value = actionType;
document.getElementById("reportViewer_ctl05").value = actionParam;
doPostBack('reportViewer','');
};
}
--></Script><input type="hidden" name="reportViewer$ctl04" id="reportViewer_ctl04" /><input type="hidden" name="reportViewer$ctl05" id="reportViewer_ctl05" /><input type="hidden" name="reportViewer$ctl06" id="reportViewer_ctl06" value="0" /><input type="hidden" name="reportViewer$ctl07" id="reportViewer_ctl07" value="false" /><input type="hidden" name="reportViewer$ctl08" id="reportViewer_ctl08" value="false" /><noscript>
Your browser does not support scripts or has been configured not to allow scripts.
</noscript><Script language="javascript"><!--
document.getElementById('reportViewer').ClientController.CustomOnReportLoaded = function() {};
document.getElementById('reportViewer').ClientController.CustomOnAsyncPageChange = function() {};
document.getElementById('reportViewer').ClientController.CustomOnDocMapVisibilityChange = function() {};
document.getElementById('reportViewer').ClientController.CustomOnPromptAreaVisibilityChange = function() {};
document.getElementById('reportViewer').ClientController.CustomOnReloadDocMap = function() {};
--></Script>
</div><iframe name="reportViewerTouchSession0" id="reportViewerTouchSession0" onload="if (frames['reportViewerTouchSession0'].location != 'javascript:''') frames['reportViewerTouchSession0'].location.replace('javascript:''');" src="javascript:''" style="position:absolute;width:0;height:0;border-width:0;visibility:hidden;">
</iframe><script type="text/javascript">
setTimeout("frames['reportViewerTouchSession0'].location.replace('\/Reserved.ReportViewerWebControl.axd?Mode=true&ReportID=dd0df78cbe0d4c119d2af4e5a13a33b7&ControlID=9495d1912ef3492e95e834ad0dab8dc8&Culture=1033&UICulture=1033&ReportStack=1&OpType=SessionKeepAlive&TimerMethod=KeepAliveMethodreportViewerTouchSession0&CacheSeed=' + encodeURIComponent(Date()));", 0);function KeepAliveMethodreportViewerTouchSession0() {setTimeout("frames['reportViewerTouchSession0'].location.replace('\/Reserved.ReportViewerWebControl.axd?Mode=true&ReportID=dd0df78cbe0d4c119d2af4e5a13a33b7&ControlID=9495d1912ef3492e95e834ad0dab8dc8&Culture=1033&UICulture=1033&ReportStack=1&OpType=SessionKeepAlive&TimerMethod=KeepAliveMethodreportViewerTouchSession0&CacheSeed=' + encodeURIComponent(Date()));", 1140000);}
</script><Script language="javascript"><!--
document.getElementById('reportViewer').ClientController.ShowInitialWaitFrame();
--></Script>
<script type="text/javascript">
//<![CDATA[
var theForm = document.forms['form1'];
if (!theForm) {
theForm = document.form1;
}
function __doPostBack(eventTarget, eventArgument) {
if (!theForm.onsubmit || (theForm.onsubmit() != false)) {
theForm.__EVENTTARGET.value = eventTarget;
theForm.__EVENTARGUMENT.value = eventArgument;
theForm.submit();
}
}
//]]>
</script>
</form>
</body>
</html>
A project I own was just moved from an older server to a new one, and in the process of moving the web folder, re-deploying the SSRS reports, restoring the database, configuring IIS, etc... I have lost the ability to view the Microsoft Chart Controls that are embedded in the SSRS reports, that are then displayed by a Microsoft.ReportViewer.
I could view them both locally and remotely (via the internet) on the old server. I can view them if I preview the SSRS report in Visual Studio. The report displays fine, only missing all the embedded charts. I can still view them locally through the web browser, just not from the internet.
I tried giving permissions to the ChartImageHandler temp storage folder, but it didn't work.
I'm getting the Javascript error: Error: ClientReport380ec8ca0c294a809e9986c1bef9db1c is undefined
I am getting "ASP.NET Session Expired" error when viewing SQL Server 2008 reports using the Microsoft ReportViewer web control. I found this article http://balanagaraj.wordpress.com/2009/09/25/session-has-expired-in-asp-net/ which suggests to use one worker process in IIS application pool, but that may affect performance, is there any other solution for this? I tried setting "AsyncRendering" to false already and that didn't work.
View 2 RepliesI've created a perfect matrix report using the nifty wizard and it's exactly what the client wants, but they would also like to see the detail for each row.I'm able to create subreports and pass parameters and all that jazz, but I'm having a hard time setting up a subreport for this matrix.
MakeOfCar
ModelOfCar
LotLocation Count of cars
I am doing a SSRS report to generate some kind of print outs.
I need to have different footers inside the whole print out.
e.g. After first several pages I need to use page number as page footer( this can be easily done). but after that i need have footers as Annex A -1, Annex A-2, or Annex B -1 , Annex C - 1, when the page is Annex A, Annex B...etc.
I'm a software manager that want to select a Reporting engine and develop international application , i want to know Dose SSRS support multi-languages environments(Special in Report Builder for end users) or not ?
View 1 Replies