Компоненты TQRTextFilter, TQRCSVFilter, TQRHTMLFilter
В ряде случаев требуется превратить отчет, который сгенерирует в файл определенного формата, чтобы передать его в другую программу.
Например, оптовый поставщик книг часто рассылает по электронной почте своим партнерам прайс - листы с перечнем книг, которые имеются в наличии. Понятно, если у партнера есть хотя бы самая простая программа с доступом к окну предыдущего пересмотра отчета, наилучшим способом экспорта является превращение отчета в файл собственного формата *.qrp и отсылка (передача) этого файла партнеру с тем, чтобы он, пользуясь упомянутой программой, раскрыл окно предыдущего пересмотра и загрузил у него отчет из файла. Однако по различным причинам у партнера может не быть нужной программы пересмотра отчета. Для такого случая в компоненте TQuickRep предвиден специальный метод ExportToFilter, с помощью которого программа может превращать отчет в текстовый файл (*.txt), в текст с двойными кавычками (*.cvs) или в гипертекстовый файл (*.htm).
Для экспорта отчета в "чужой" формат, предвидены фильтрующие компоненты TQRTextFilter, TQRCSVFilter, TQRHTMLFilter. Их использование не представляет никаких проблем: просто поместить их на отчет, и тогда после натиска в окне предыдущего пересмотра на кнопке SaveReport в списке, который раскрывается, можно будет выбрать тип файла, которые хранится (рис.23).
Рисунок 23. Список выбора типа файла для отчета, который хранится
Экспортировать файл можно не только с помощью указанных выше компонентов и окна предыдущего пересмотра, но также программным обращением к методу TQuickRep.ExportToFilfer, например:
uses QRExport; //Для программного экспорта ссылки на этот модуль обязательное!
procedure MyForm.ButtonClick(Sender: TObject);
var
AExportFilter: TQRHTMLDocumentFilter;
begin
AExportFilter: TQRHTMLDocumentFilter.Create('REPORT.HTM');
try
MyReport.ExportToFilter(AExportFilter)
finally
AExportFilter.Free;
end;
end;
Единственным параметром обращения к методу является объект класса TQRExportFilter, точнее - одного из его специализированных потомков : TQRHTMLDocumentFilter, TQRASCIIExportFilter и TQRCommaSeparatedFilter. Все эти классы описаны в модуле QRExport.
Дата добавления: 2016-02-27; просмотров: 954;