Выбор пункта назначения вывода

Оценить
(0 голоса)

Чтобы пользователи вашего приложения могли выбирать пункт назначения выходных данных (как это могут делать пользователи приложения Xtreme Orders), вы должны написать соответствующий код, который будет обрабатывать выбираемый пользователем вариант. В приложении Xtreme Orders пользователь может выбрать подходящий пункт назначения (направить отчет в окно предварительного просмотра, распечатать на принтере или присоединить отчет в виде файла формата .PDF к электронному сообщению) с помощью переключателей и текстового поля. Если пользователь выберет в качестве пункта назначения сообщение электронной почты, он сможет ввести в текстовом поле электронный адрес, по которому должно быть направлено данное сообщение. Вы должны определить пункты назначения выходных данных в коде Visual Basic, учитывая все варианты, которые может выбрать пользователь.

На случай, если пользователь решит отобразить отчет на экране для просмотра, вы должны включить компонент Report Viewer. В приложении Xtreme Orders это предполагает просто отображение формы, содержащей элемент управления Report Viewer, путем выполнения метода Show формы. Событие Form Load этой формы передаст объект Report в компонент Report Viewer и выполнит метод ViewReport.

Как уже упоминалось ранее, использование компонента Report Viewer вовсе не является обязательным — при появлении диалогового окна с вопросом о том, хотите ли вы включить этот компонент, во время первого добавления RDC в проект, вы запросто можете выбрать переключатель No (Нет). Однако при наличии среди пунктов назначения варианта типа “to screen” (“вывести на экран”), как в приложении Xtreme Orders, компонент Report Viewer добавить в проект все-таки придется.

Если в диалоговом окне RDC с вопросом Do you want to add the Report Viewer? (Хотите ли вы добавить компонент Report Viewer?) вы выберите переключатель Yes

(Да), RDC автоматически добавит в проект компонент Report Viewer. RDC создаст новую форму, поместит в нее элемент управления Report Viewer и автоматически добавит элементарный код для предоставления объекта Report в Report Viewer и придания элементу управления Report Viewer размеров, соответствующих размерам формы. В случае, когда RDC добавляет элемент управления Report Viewer автоматически, вы можете либо оставить для него описанное поведение по умолчанию, либо переместить его в другую форму, либо добавить дополнительные элементы в форму, созданную RDC автоматически. Вы также можете позже вручную добавить элемент управления Report Viewer в свой проект и написать код для передачи ему объекта Report.

При желании распечатать объект Report на принтере, выполните метод Printout объекта Report. Синтаксис этого метода выглядит следующим образом:

object.Printout Подсказка, Число_копий, Сортировка,

Начальная_страница, Конечная_страница

Здесь Подсказка — это булевское значение, указывающее, должно ли отображаться диалоговое окно с приглашением установить параметры печати; Число_копий- это числовое значение, указывающее, какое количество копий отчета должно быть распечатано; Сортировка — булевское значение, указывающее, должна ли выполняться сортировка страниц, а Начальная_страница и Конечная_страница — числовые значения, указывающие, с какой страницы должна начинаться и на какой странице заканчиваться печать отчета. Все эти параметры являются необязательными - если вы хотите опустить какой- нибудь из них, просто добавьте вместо него запятую, не включая сам параметр.

На заметку! В исходной версии Crystal Reports XI диалоговое окно с приглашением выбрать параметры печати отображаться не будет, даже когда для аргумента Подсказка устанавливается значение True. Чтобы устранить эту проблему, вам придется загрузить пакет исправлений или обновлений с сайта по адресу support. BusinessObjects. сот.

При желании экспортировать отчет в файл на диске или присоединить его в виде файла к электронному сообщению, используйте метод Export объекта Report. Синтаксис этого метода выглядит следующим образом:

object.Export Подсказка_для_пользователя

Здесь Подсказка_для_пользователя — это булевское значение, указывающее, хотите ли вы, чтобы пользователю отображалось диалоговое окно с приглашением выбрать параметры экспорта. Если вы решите не отображать такое диалоговое окно, вам придется установить свойства объекта ExportOptions отчета. Объект ExportOptions содержит много свойств, которые определяют пункт назначения выходных данных (файл или сообщение электронной почты), формат файла (Word, Excel, PDF, XML и так далее), имя файла, адрес электронной почты и многое другое. Многие из этих свойств принимают в качестве значений целые числа или предоставляемые RDC описательные константы. Выбор MAPI в качестве пункта назначения потребует наличия на ПК пользователя установленной версии совместимого с MAPI почтового клиента, такого как Microsoft Outlook или Eudora Pro. Подробную информацию обо всех доступных свойствах объекта ExportOptions можно найти в оперативной справочной системе, в разделе “ExportOptions Object” (“Объект ExportOptions”).

В приложении Xtreme Orders для выбора пункта назначения вывода, а также для указания типа файла и информации, необходимой для отправки отчета по электронной почте, используется следующий код:

1 Выбор пункта назначения вывода If optPreview Then frmViewer.Show If OptPrint Then Report.Printout (True)

If OptEmail Then With Report

.ExportOptions.DestinationType = crEDTEMailMAPI .ExportOptions.MailToList = txtAddress

.ExportOptions.MailSubject = "Here's the Xtreme Orders Report" .ExportOptions.MailMessage = _

"Attached is a PDF file showing the latest Xtreme Orders Report." .ExportOptions.FormatType = crEFTPortableDocFormat .Export (False)

End With 'Report End If 'optEmail

Внимание! Если для экспорта или отправки отчета в виде прикрепленного к сообщению электронной почты файла вы используете метод Export объекта Report, обязательно удостоверьтесь в том, что вы указали все необходимые свойства объекта ExportOptions. Если вы укажете не все свойства или укажете их некорректно, может произойти ошибка. Можно также отобразить пользователю окно с приглашением выбрать параметры экспорта, даже если вы специально добавили аргумент False в метод Export. Если экспорт выполняется на необслуживаемой машине, ваше приложение будет ожидать от пользователя ответ, даже если никакого пользователя там нет.

Изменение источника данных во время выполнения
Несвязанные поля
Перехват событий Report Viewer
End Sub
Обработка ошибок

Добавить комментарий


Защитный код
Обновить