Как распечатать несколько раз одну страницу отчета

24.02.2022

Как распечатать несколько раз одну страницу отчета

Если вам нужно распечатать отдельные страницы отчета в нескольких экземплярах, то придется прибегнуть к кодированию. Вы можете настроить свойства печати из кода пользовательского приложения, а также вручную в диалоговом окне печати. А это позволяет выбрать конкретные страницы отчета и задать количество копий. Однако, есть нюанс - вы можете задать количество копий только для всех печатаемых страниц. Поэтому, чтобы достичь поставленной цели, нам придется разбить процедуру печати на этапы.

Допустим вам нужно напечатать вторую страницу отчета 3 раза, а все остальные - 1. Значит мы разобьем печать на два этапа: печать второй страницы и печать остальных страниц.

//Создали отчет
 var report = new Report();
//Создали источник данных
DataSet data = new DataSet();
//Загрузили данные из файла
 data.ReadXml("~/nwind.xml");
//Зарегистрировали источник данных в отчете
 report.RegisterData(data, "NorthWind");
//Загрузили шаблон отчета
 report.Load("~/Master-Detail.frx");
 
 //Подготовили отчет
 report.Prepare();
 //Выбираем вторую страницу отчета
 report.PrintSettings.PageNumbers = "2";
 //Настраиваем количество копий
 report.PrintSettings.Copies = 3;
 //Скрываем диалоговое окно печати
 report.PrintSettings.ShowDialog = false;
 //Отправляем отчет на печать
 report.Print();
 //Повторяем то же самое для остальных страниц отчета
 report.PrintSettings.PageNumbers = "1, 3, 4, 5";
 report.PrintSettings.Copies = 1;
 report.Print();

Таким образом, мы можем печатать нужные страницы отчета отдельно от всех остальных. Единственное неудобство приведенного выше кода - распечатанные страницы будут не по порядку. Если нужно все же по порядку, то придется разделять процедуру печати отчета на 3 этапа: печать первой страницы, печать второй страницы, печать остальных страниц отчета.

.NET FastReport Отчет Печать .NET FastReport Отчет Печать
21 апреля 2025

Как работают RFID-метки в FastReport VCL

В этой статье мы рассмотрим принцип работы RFID-меток с новым объектом TfrxDeviceCommand в FastReport VCL с релизом 2025.2.
21 апреля 2025

Работа с форматами XML и JSON в FastScript

В этой статье мы подробнее рассмотрим, как работать с JSON и XML в FastReport, увидим какие в них есть свойства и методы, а также построим отчеты из кода со скриптами.
21 апреля 2025

Работа с компонентом TfrShellTreeView в FastReport VCL

В данной статье мы рассмотрим компонент TfrShellTreeView. Он предназначен для отображения элементов файловой системы и частично является аналогом компонентов TDirectoryListBox, TDirectoryOutline и TShellTreeView.