Rave Reports – выводим данные из DBGrid на печать

В нашем примере мы рассмотрим последовательность действий, необходимых для создания проекта отчета и последующего вывода данных из базы .xml, отображаемых в DBGrid непосредственно на принтер.

1. Создаем new Delphi Win32 application и сохраняем в папку проекта, к примеру в С:\RaveExample.
2. Рассмотрим пример работы с базой данных EMPLOYEE.XML, файл находится здесь: (C:\Program Files\Common Files\CodeGear Shared\Data\EMPLOYEE.XML). Копируем его в папку нашего проекта С:\RaveExample.
3. Помещаем на форму компонент tClientDataSet (вкладка Data Access)
4. Устанавливаем значение FileName – С:\RaveExample\Employee.xml
5. Помещаем на форму компонент tDataSource (вкладка Data Access) и устанавливаем свойство DataSet равным ClientDataSet1.
6. Помещаем на форму компонент tDbGrid (вкладка Data Controls) и устанавливаем свойство DataSource равным DataSource1.
7. Устанавливаем свойство Active компонента tClientDataSet в True. В DBGrid отображается база Employee.xml.
8. Помещаем на форму компонент tRvProject(вкладка Rave).

9. Помещаем на форму компонент tRvDatasetConnection (вкладка Rave) и устанавливаем значение DataSet равным ClientDataset1.
Для создания отчета будем использовать Rave Designer. Для запуска сделаем двойной щелчок на компоненте tRvProject. Откроется окно Rave Designer.
10. Выбираем “File | New Data Object”

11. В появившемся окне выбираем “Direct Data View” и нажимаем “Next“.
12. Далее появляется окно с RvDatasetConnection1, выбираем и нажимаем “Finish“.
13. Делаем двойной щелчок на “DataViewDictionary” (панель справа). Открывается DataVeiw1, в котором описаны все поля базы.

Теперь займемся построением отчета.
1. В RaveReports на верхней панели выберем вкладку Report и поместим компонент Region Component по центру планируемого отчета (растянем его по ширине листа, именно в нем будут отображаться данные базы).
2. Выбираем компонент DataBand (вкладка Report) и помещаем его на
компонент Region1.
3. В Инспекторе объектов устанавливаем:
DataView – DataView1
BandStyle – в открывшемся окне устанавливаем флажок на Detail и
нажимаем Ok.
4. На панели справа щелкаем на DataView1 (чтобы открыть список полей).
5. При зажатой кнопке CTRL переносим поля на узкую белую полоску DataBand.

Вкладка PageDesigner должна выглядеть следующим образом:

6. Нажимаем F9 для просмотра. Открывается окно “Output Options“, выбираем “Preview” и щелкаем Ok.

7. Закрываем окно просмотра, заходим в меню File и сохраняем наш отчет в .Rav файл. В папку нашего проекта С:\RaveExample. Назовем файл Employee.rav.Теперь мы можем закрыть программу Rave Reports.
1. Помещаем на форму компонент tRvSystem (вкладка Rave)
2. Устанавливаем свойство DefaultDest в rdFile.
3. В свойстве SystemSetups, ssAlowSetup установим в False.
4. В RvProject1 свойство Engine устанавливаем в RvSystem1
5. В ProjectFile выбираем Employee.rav.
6. Помещаем на форму компонент tRvRenderPrinter1.
7. Помещаем на форму компонент TButton и в обработчике событий OnClick записываем следующий код:
procedure TForm1.Button1Click(Sender: TObject);
begin
with RvSystem1 do
begin
DoNativeOutput:= False;
RenderObject:= RvRenderPrinter1;
end;
RvProject1.Execute;
end;

Первоисточник: DelphiCode 08.09.2008 – Miyusov Sergey

Comments are closed.