gpt4 book ai didi

reporting - 是否可以将 SSRS 报告与网络表单集成

转载 作者:行者123 更新时间:2023-12-01 10:16:53 26 4
gpt4 key购买 nike

是否可以将 SSRS 报告集成到网络表单中……一个示例就足以让我继续前进。

最佳答案

绝对是。

您正在寻找的是位于 Microsoft.Reporting.WebForms 程序集中的 ReportViewer 控件。它将允许您在 Web 表单上放置一个控件,为人们提供一个用于设置报告参数和获取报告的界面。

或者您可以自己设置所有参数并以您需要的任何格式输出报告。我们在我们的应用程序中使用它来输出 PDF。

例如 - 这就是我们如何为我们的一份报告设置 reportviewer 对象并获取 PDF,然后将其发送回给用户。特定代码块是 Web 处理程序。

public void ProcessRequest(HttpContext context)
{
string report = null;
int managerId = -1;
int planId = -1;
GetParametersFromSession(context.Session, out report, out managerId, out planId);
if (report == null || managerId == -1 || planId == -1)
{
return;
}

CultureInfo currentCulture = Thread.CurrentThread.CurrentCulture;

List<ReportParameter> parameters = new List<ReportParameter>();
parameters.Add(new ReportParameter("Prefix", report));
parameters.Add(new ReportParameter("ManagerId", managerId.ToString()));
parameters.Add(new ReportParameter("ActionPlanId", planId.ToString()));
string language = Thread.CurrentThread.CurrentCulture.Name;
language = String.Format("{0}_{1}", language.Substring(0, 2), language.Substring(3, 2).ToLower());
parameters.Add(new ReportParameter("Lang", language));

ReportViewer rv = new ReportViewer();
rv.ProcessingMode = ProcessingMode.Remote;
rv.ServerReport.ReportServerUrl = new Uri(ConfigurationManager.AppSettings["ReportServer"]);
if (ConfigurationManager.AppSettings["DbYear"] == "2007")
{
rv.ServerReport.ReportPath = "/ActionPlanning/Plan";
}
else
{
rv.ServerReport.ReportPath = String.Format("/ActionPlanning{0}/Plan", ConfigurationManager.AppSettings["DbYear"]);
}
rv.ServerReport.SetParameters(parameters);

string mimeType = null;
string encoding = null;
string extension = null;
string[] streamIds = null;
Warning[] warnings = null;
byte[] output = rv.ServerReport.Render("pdf", null, out mimeType, out encoding, out extension, out streamIds, out warnings);

context.Response.ContentType = mimeType;
context.Response.BinaryWrite(output);
}

关于reporting - 是否可以将 SSRS 报告与网络表单集成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/98274/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com