В самостоятельной работе 8 написано: "В пункте "Server name" задаем имя сервера, которое необходимо узнать у преподавателя". Где узнать это имя? |
Интеграция отчетов в Windows-приложения
Интеграция отчета и Windows-приложения
Создайте в проекте новую форму и дайте ей имя FormReport. Свойству Text данной формы присвойте значение "Отчет". Для предварительного просмотра построенного отчета к форме потребуется добавить модуль просмотра Crystal Reports Viewer, в котором в качестве источника отчета ( Report Source ) следует указать проектируемый отчет.
Откройте файл формы FormReport.cs в режиме конструктора. Выберите форму и назначьте свойству Title (Заголовок) в окне свойств значение "Отчет".
Перетащите на форму элемент CrystalReportViewer из раздела CrystalReport окна инструментов Toolbox - (рисунок 13.10).
Измените значение свойства привязки Dock (Стыковка) на Fill (Заполнить), чтобы модуль просмотра отчетов CrystalReportViewer заполнил всю страницу (рисунок 13.11). Можно также определить поля вокруг пристыкованного модуля просмотра, соответствующим образом установив набор свойств в группе DockPadding (Заполнение стыковки), в результате чего вокруг модуля просмотра появится заданное обрамление в виде пустого пространства.
Привязка созданного отчета к модулю просмотра отчетов осуществляется путем добавления к форме FormReport.cs компонента ReportDocument. Встраиваемые в приложение отчеты могут быть нетипизированные и строго типизированные.
В результате этих действий будет выведено диалоговое окно (рисунок 13.13), с выпадающим списком всех доступных отчетов, которые были добавлены в приложение. Необходимо выбрать отчет CryRepEmployee, что приведет к созданию документа строго типизированного отчета.
Рис. 13.13. Создание строго типизированного отчета с использованием окна выбора вида компонента ReportDocument
Подготовительные работы по созданию модуля отчета в проекте на этом закончены.
Теперь необходимо вызвать отчет при загрузке формы FormReport.
Для этого необходимо в классе FormReport объявить и создать объекты классов DataSetEmployee, EmployeeTableAdapter, JobTitleTableAdapter и создать метод EmployeeFill для заполнения данными объект DataSet из базы данных (см. "Отображение данных на экранной форме" ).
Далее необходимо при загрузке формы FormReport заполнить данными DataSet, задать источник данных для объекта crystalReportEmployee1 класса ReportDocument и источник отчета для объекта crystalReportViewer1 класса CrystalReportViewer. Код метода FormReport_Load приведен ниже.
private void FormReport_Load(object sender, EventArgs e) { EmployeeFill(); crystalReportEmployee1.SetDataSource(dsEmployee); crystalReportViewer1.Refresh(); crystalReportViewer1.ReportSource = crystalReportEmployee1; }
После запуска созданного приложения на выполнение и загрузки формы модуль просмотра Crystal Report Viewer формирует и отображает отчет, указанный в свойстве ReportSource.
Для подключения формы FormReport к приложению в меню формы FormEmployee необходимо к пункту меню "Отчет" добавить подпункт "По всем сотрудникам", которому присваивается имя reportToolStripMenuItem2 (рисунок 13.14).
В текст программы класса FormEmployee.cs необходимо добавить код обработчика события, возникающего при выборе подпункта меню "По всем сотрудникам". По данному пункту меню должен быть создан объект класса FormReport и выведено окно на экран дисплея.
После трансляции и запуска программы на выполнение при выборе пункта меню Отчет | По всем сотрудникам будет сформирован отчет "Список сотрудников" аналогичный, приведенному на рисунке 13.15.
Задание на лабораторную работу
- Изучить теоретический материал.
- Разработать отчет и интегрировать его с приложением.
- Протестировать работу приложения с отчетом.
- Продемонстрировать работу приложения преподавателю.