Quantcast
Channel: SQL Server Reporting Services
Viewing all articles
Browse latest Browse all 1418

Binding C# Entity Framework dataset to Remote SSRS (.rdl) from inside ASP.NET MVC 5

$
0
0
//My Controller.
public ActionResult ExpectedSales(string[] Quarter, int Year, string[] Divisions)
        {
                try
                {
                    int myQtr = GFIHelper.GetQuarterNumber(Quarter);
                    string ProductDivisions = Repository.getMyDivision(@User.Identity.Name, Divisions);
                    //All ReportViewer parameters are returned with GFISSRSReportViewer.GetReportViewer();
                    //.....................................................................
                    ReportViewer MyReportViewer = GFISSRSReportViewer.GetReportViewer();
                    MyReportViewer.ServerReport.ReportPath = GFIReportsPath.GetSalesManagementReportURL("ExpectedSales");
                    //.....................................................................
                    //GFISSRSReportViewer.GetCommonParaList includes only PrintedDate.
                    //.....................................................................
                    List<ReportParameter> paramList = GFISSRSReportViewer.GetCommonParaList(GFIHelper.TitleCase(User.Identity.Name));
                    //.....................................................................
                    string nextyear = "";
                    if (myQtr == 1)
                        nextyear = Convert.ToString(Year + 0);
                    else
                        nextyear = Convert.ToString(Year + 1);
                    //Printedby and report name must be assigned here
                    //.....................................................................
                    string rptname = "EXPECTED SALES" + "@" + string.Join("+", Divisions) + "@" + string.Join("+", Quarter) + " : " + Year + (Year == Convert.ToInt32(nextyear) ? "" : " - " + nextyear);
                    rptname = rptname.Replace("@", Environment.NewLine);
                    paramList.Add(new ReportParameter("ReportName", rptname, false));
                    //.....................................................................

                    paramList.Add(new ReportParameter("YearPara", Convert.ToString(Year), false));
                    paramList.Add(new ReportParameter("QuarterStringPara", Convert.ToString(myQtr), false));
                    paramList.Add(new ReportParameter("DivisionsPara", ProductDivisions, false));

                    MyReportViewer.ServerReport.SetParameters(paramList);

                    
                    ViewBag.ReportViewer = MyReportViewer;
                    return PartialView("_ReportLayout");
                }
                catch (Exception ex)
                {
                    return PartialView(ex.Message + ex.StackTrace);
                }
        }
//My Layout for Report

@using ReportViewerForMvc;
@using System.Web.UI.WebControls;

<br /><br /><div class="myReportViewer md-block" flex="100" flex-gt-sm><div class="myReportViewerHead"><span>Report Viewer</span></div><md-divider style="background-color:orange;"></md-divider>
    @if (ViewBag.ReportViewer != null)
    {
        @Html.ReportViewer(ViewBag.ReportViewer as Microsoft.Reporting.WebForms.ReportViewer, new
               {
                   frameBorder = "0",
                   Width = Unit.Percentage(100),
                   Height = 600,
                   ScrollBars="Yes",
                   SizeToReportContent=true
               })
    }</div>

I have been working on a C# / ASP.NET MVC 5 / AngualrJs project with SQL Server 2008 R2 Reporting Server (

.rdl

). I actually want to bind dataset from inside ASP.NET MVC to the ReportViewer object. But I don't know exactly how to accomplish this.

Can anyone help me with this?

Currently my reports are using datasets from inside the VS Report Server project and working fine, but I just need to pass the dataset from C# code.

I am simply passing parameters to the remote report server. But In my controller I also want to provide the processed dataset.

Thanks


Viewing all articles
Browse latest Browse all 1418

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>