Добавление и присвоение имен TABS для превосходных отчетов в Microsoft Reporting Services - PullRequest
2 голосов
/ 06 мая 2009

В службах Microsoft Reporting Services я хочу иметь возможность называть вкладки для итогового документа при создании отчета Excel.

Кто-нибудь знает, как я могу это сделать?

Ответы [ 2 ]

2 голосов
/ 17 марта 2010

Чтобы обойти эту проблему с веб-интерфейса (который сводил меня с ума с помощью веб-элемента управления ReportViewer), я понял, что SSRS возвращает данные в виде байтового массива, который затем можно обработать. Таким образом, захват потока в .NET вы можете написать метод, который делает что-то вроде:

private byte[] ExportStream(string streamType, out string mimeType, out string extension)
{
    Microsoft.Reporting.WebForms.Warning[] warnings;
    string[] streamids;
    string encoding;
    string deviceInfo = "<DeviceInfo><SimplePageHeaders>True</SimplePageHeaders></DeviceInfo>"

    byte[] bytes = ReportViewerClientReport.ServerReport.Render(streamType,
                          deviceInfo, out mimeType, out encoding, out extension, out streamids, out warnings);

    return bytes;
}

Затем постобработайте выходные данные этого метода с помощью чего-то вроде фантастической библиотеки NPOI из http://npoi.codeplex.com/ в виде байтов или создайте некоторый поток памяти, затем вы можете заставить его делать все, что захотите.

Также обратите внимание, что SSRS (Sql Server Reporting Services) R2 будет иметь эту функцию, но она появится примерно в мае 2010 года. http://www.bidn.com/blogs/bretupdegraff/bidn-blog/234/new-features-of-ssrs-2008-r2-part-1-naming-excel-sheets-when-exporting-reports

1 голос
/ 06 мая 2009

Если вы хотите разбить отчет на вкладках при экспорте, используйте несколько таблиц с разрывами страниц.

Нельзя переименовывать вкладки из SSRS. Если вы хотите переименовать вкладки, вам нужно написать собственный код.

...