Шаг 48 - Элемент ActiveX Crystal Report Control

Элемент управления Crystal Report Control (файл CRYSTL32.OCX) автоматически устанавливается в системе при инсталляции Crystal Reports. Это единственное средство интеграции отчета с приложением, если установлен Crystal Reports 4.6.

Подключается элемент Crystal Report Control к среде Visual Basic как обычно, через меню Project ->Components:

48_1.gif (13317 b)

После этого на панели инструментов появляется соответствующий значок:

48_2.gif (2033 b)

Теперь методом перетаскивания элемент можно установить в приложение. Crystal Report Control является элементом, невидимым в runtime, и его можно располагать в любом месте. Если у вас сложное приложение, и отображать отчеты необходимо из нескольких форм, то на все приложение достаточно одного элемента Crystal Report Control, помещенного, например, в главной форме. При этом только при каждом его вызове надо явно указывать имя формы. Поместим в форме кнопку, нажатие на которую вызовет отображение отчета:

48_3.gif (1695 b)

Пишем код обработчика нажатия клавиши. В минимальном виде:

Private Sub Command3_Click()
MousePointer = 11
CrystalReport1.ReportFileName = App.Path + "\rptmestn.rpt" 'указываем имя файла отчета
CrystalReport1.RetrieveDataFiles 'обновляем данные в отчете
CrystalReport1.Destination = crptToWindow 'указываем, куда выводить отчет (В окно вьювера. Варианты: на принтер, e-mail)
CrystalReport1.WindowTitle = "Отчет о продажах" 'устанавливаем заголовок окна вьювера
CrystalReport1.Action = 1 'отображаем отчет
MousePointer = 0
End Sub

Здесь CrystalReport1 – имя элемента Crystal Report Control, помещенного на форме. Теперь после нажатия на кнопку будет выведено окно с отчетом:

48_4.gif (12651 b)

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


Предыдущий Шаг | Следующий Шаг | Оглавление
Автор Юрий Гвоздев - 26.02.2003