В начало

Отчет «Карты»

 

            Постановка задачи: необходимо создать отчет по таблице «Карты» базы данных «Дисконтные карты» в среде разработки «Дельфи 7», используя набор VCL-компонентов с закладки «FastReport 5.0».

Рис. 1. Таблица «Карты» в СУБД «MS Access»

Рис. 1. Таблица «Карты» в СУБД «MS Access»

 

            Создаем в «Дельфи 7» новое приложение, на главную форму перетаскиваем компоненты:

Button (2 штуки); //Одна кнопка нужна будет для просмотра, другая для печати

frxReport;

frxPreview.

            Далее настраиваем компоненты. На кнопки размещаем код.

Procedure TForm1.Button1Click(Sender: TObject);

Begin

  frxReport1.LoadFromFile('C:\FAST REPORT\Карты.fr3');

  frxReport1.ShowReport;

End;

Procedure TForm1.Button2Click(Sender: TObject);

Begin

   frxReport1.Print;

End;

            Затем кликаем по компоненту «frxReport1» два раза или вызываем на нем контекстное меню и выбираем «Edit Report…», после чего откроется окно редактора отчетов «FastReport». Также нужно у этого компонента установить свойство «Preview = frxPreview1».

            В редакторе отчетов нужно перейти на закладку «Data» инспектора объектов и перетащить компонент «ADO Database», настроить его, подключив его к базе «Дисконтные карты.mdb»

            Затем нужно с панели инструментов перетащить компонент «ADO Table» и установить в его свойстве «TableName» имя таблицы, которое в данном случае это «Карты». Все, теперь можно вернуться на закладку «Page».

            На закладке «Page» редактора отчетов нужно добавить на форму 3 области, а именно «Report Title», «Page Header» и «Master Data». В принципе из названия понятно для чего они предназначены. По ходу дела надо привязать область «Master Data» к «ADOTable1», что на закладке «Data».

Рис. 1. Установка областей отчета

Рис. 2. Установка областей отчета

 

            На первую область помещаем с панели элементов элемент типа «Text» и обзываем его, т.е. заносим в его поле «Memo» название отчета, также меняем размер и шрифт на «покрупней».

            Далее во вторую область (PageHeader) помещаем 4 компонента типа «Text» для отображения заголовков таблицы: Вид карты, Тип карты, Дата открытия, Имя владельца. Также делаем покрупней, да пожирней, центрируем.

            Затем размещаем четыре компонента типа «Text» на область «MasterData», но текст в них не вписываем, а выбираем при помощи флажка нужное поле из таблицы базы данных.

Рис. 3. Расположение областей и элементов на форме отчета в редакторе «FastReport»

           

            Затем сохраняем отчет и закрываем редактор.

Иногда при компиляции проекта выскакивает ошибка «Class TfrxADODatabase not found», которая исправляется добавлением в раздел «USES» записи «frxADOComponents». Ну, или добавлением этого компонента на форму приложения, тогда он сам пропишется, хотя он нам и не нужен. Видимо косяк разработчиков.

Рис. 4. Ошибка «Class TfrxADODatabase not found»

Рис. 5. Ошибка «Class TfrxADODatabase not found»

 

            Все вроде готово, запускаем приложение, проверяем полученный отчет.

Рис. 4. Отчет «Карты»