2010-01-18 3 views
0

В службах отчетов SQL Server я хотел бы иметь возможность распечатывать все страницы отчета, даже если отчет разбит на несколько страниц отчета в пользовательском интерфейсе.Службы Reporting Services: Печать всех страниц

В настоящее время мы имеем отчет со следующим:

  • один страницу за единицу
  • нет опции для печати в формате PDF (намеренно удалены по требованию, иначе было бы возможным решением: скачать в pdf, а затем распечатать весь документ в формате pdf)
  • возможность печати страница за один раз

и хотел бы следующие изменения:

  • возможность печатать все страницы одним действием пользователя

ответ

2

Для того, чтобы вручную управлять печать, вам нужно написать свои собственные методы печати. Это широко освещалось онлайн, разочарованными разработчиками ReportViewer.

В принципе, идея заключается в том, что вы создаете свой собственный рендер рендеринга. Вы должны отображать все страницы отчетов в изображениях (либо с помощью фильтра потока, либо с помощью memystream), и передавать изображения на принтер. Слово совета, если вы решите использовать MemoryStream (это более простой метод, поскольку он не требует очистки), имейте в виду, что если ваши отчеты очень большие, у вас могут возникнуть проблемы с памятью.

Наличие пользовательского метода печати даст вам полный контроль над печатью отчета.

MSDN статью на эту тему можно найти на http://msdn.microsoft.com/en-us/library/ms252091%28VS.80%29.aspx

Кроме того, если вы Google «Выборочная печать ReportViewer», вы найдете множество статей, относящихся к этой теме.

+0

Спасибо за ответ. Однако я не буду заниматься этим в настоящее время и не пробовал этого предложения. –