Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/146.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 在Windows应用程序中从rdl/rdlc文件写入Excel文件_C++_Excel_Reporting Services_Rdlc_Rdl - Fatal编程技术网

C++ 在Windows应用程序中从rdl/rdlc文件写入Excel文件

C++ 在Windows应用程序中从rdl/rdlc文件写入Excel文件,c++,excel,reporting-services,rdlc,rdl,C++,Excel,Reporting Services,Rdlc,Rdl,我有报告生成器3.0制作的rdl文件。我需要在我的Windows应用程序中用C++编写它们,这样我就可以在运行时设置SQL Server连接参数和报告位置。p> 这可能吗?如何实现 Google告诉我需要将rdl转换为rdlc文件,但即使是这样,我也找不到一种设置参数的方法,从C++调用“强”> RDLC文件。 < P>可以使用RePrVIEWER并使用RDL或RDLC文件,但是RDL可能有一些限制,因为它不包含创建数据绑定代码的必要信息。 RDL文件不包含在设计时 ReportViewer控件

我有报告生成器3.0制作的rdl文件。我需要在我的Windows应用程序中用C++编写它们,这样我就可以在运行时设置SQL Server连接参数和报告位置。p> 这可能吗?如何实现


Google告诉我需要将rdl转换为rdlc文件,但即使是这样,我也找不到一种设置参数的方法,从C++调用“强”> RDLC<强>文件。

< P>可以使用RePrVIEWER并使用RDL或RDLC文件,但是RDL可能有一些限制,因为它不包含创建数据绑定代码的必要信息。 RDL文件不包含在设计时 ReportViewer控件依赖于自动生成 数据绑定代码。通过手动绑定数据,RDL文件可以在 ReportViewer控件

您可以从ReportViewer中设置参数,查看文档和以下C#中的代码示例:

如果这对你有帮助,请告诉我

private void SetReportParameters() {
   // Set Processing Mode
   reportViewer1.ProcessingMode = ProcessingMode.Remote;

   // Set report server and report path
   reportViewer1.ServerReport.ReportServerUrl = new
      Uri("http://<ServerName>/reportserver");

   reportViewer1.ServerReport.ReportPath = 
      "/AdventureWorks Sample Reports/Employee Sales Summary";

   List<ReportParameter> paramList = new List<ReportParameter>();

   paramList.Add(new ReportParameter("EmpID", "288", false));
   paramList.Add(new ReportParameter("ReportMonth", "12", false));
   paramList.Add(new ReportParameter("ReportYear", "2003", false));

   this.reportViewer1.ServerReport.SetParameters(paramList);

   // Process and render the report
   reportViewer1.RefreshReport();
}
protected void Button1_Click(object sender, EventArgs e)
{
            Warning[] warnings;
            string[] streamids;
            string mimeType;
            string encoding;
            string extension;

            byte[] bytes = ReportViewer1.LocalReport.Render(
               "Excel", null, out mimeType, out encoding,
                out extension,
               out streamids, out warnings);

            FileStream fs = new FileStream(@"c:\output.xls",
               FileMode.Create);
            fs.Write(bytes, 0, bytes.Length);
            fs.Close();

            Label1.Text = "Report exported to output.xls";
}