0

イントラネット サイトから SSRS レポートを読み込んでいます。SSRS Report Manager に移動してドキュメントを Excel にエクスポートすると、すべてのアイテムがエクスポートされます。

ただし、同じことを行うと、Web ページからいくつかのヘッダーと画像が失われます。

ここに私のC#コードがあります

Microsoft.Reporting.WebForms.ReportViewer rview = new Microsoft.Reporting.WebForms.ReportViewer();
                    rview.ServerReport.ReportServerUrl = new Uri(uri);
                    rview.ServerReport.ReportPath = "/T200/MiscAsset";

                    //For the ReportServerCredentials public class CustomReportCredentials must be added to the code
                    Microsoft.Reporting.WebForms.IReportServerCredentials irsc = new CustomReportCredentials(user, pass, domain);
                    rview.ServerReport.ReportServerCredentials = irsc;

                    if (_mode == null)
                    {
                        _mode = "PDF";
                    }

                    string deviceInfo, mimeType, encoding, extention;
                    string[] streamaids;
                    Microsoft.Reporting.WebForms.Warning[] warnings;
                    deviceInfo = "<DeviceInfo>" + "<SimplePageHeaders>True</SimplePageHeaders>" + "</DeviceInfo>";
                    byte[] bytes = rview.ServerReport.Render(_mode, deviceInfo, out mimeType, out encoding, out extention, out streamaids, out warnings);
                    Response.Clear();

                    if (_mode == "PDF")
                    {
                        Response.ContentType = "application/pdf";
                        Response.AddHeader("Content-disposition", "filename=MiscAsset.pdf");
                    }
                    else if (_mode == "excel")
                    {
                        Response.ContentType = "application/vnd.ms-excel";
                        Response.AddHeader("Content-disposition", "filename=MiscAsset.xls");
                    }
                    Response.OutputStream.Write(bytes, 0, bytes.Length);
                    Response.OutputStream.Flush();
                    Response.OutputStream.Close();
                    Response.Flush();
                    Response.Close();
4

1 に答える 1

0

画像はレポートに埋め込まれていますか、それとも外部のものですか? それらが外部の場合は、Web ページで表示されたときに、ユーザーが外部の画像を表示するために必要な権限も持っていることを確認する必要があります。

ヘッダーに関しては、コードで SimplePageHeaders = True を設定しています。これは、レポートを Excel にエクスポートすると、レポート ヘッダーがワークシートの一部としてではなく、Excel ページ ヘッダーとしてレンダリングされることを意味します。これを False に設定してみてください。

于 2013-05-01T21:26:40.743 に答える