Шрифт:
Сохраним эту форму отчета из дизайнера на диске в текущем каталоге под именем "detailed.frf".
Рис 2.50. Шаблон дополнительного отчета
Определим в коде программы для TfrReport событие OnObjectClick следующим образом:
procedure Tforml.frReportObjectClick(View: TfrView);
var str: string;
begin
str .= View.Memo.Text;
frReport.LoadFromFile('detailed.frf')
frReportl.Dictionary.Variables['Varl'] := str;
if frReport.PrepareReport then begin
frReport.OnObjectClick := nil; { чтобы при щелчке на детализованном отчете не показывался детализованный отчет }
frReport.ShowPreparedReport;
frReport.OnObjectClick := frReportObjectClick; { возвращаем событие для вывода детализованного отчета }
frReport.ShowReport;
end;
end;
Наиболее полную документацию, описание всех возможностей, а также последние версии FastReport можно найти на официальном Web-сайте http://www.fastreport.ru.
Использование специальных инструментов в design-time: FIBPIus Tools
Кроме компонентов библиотека FIBPIus также включает ряд дополнительных инструментов - FIBPIus Tools, которые расширяют возможности среды разработки специально для более удобного и эффективного использования FIBPIus.
Установка FIBPIus Tools
FIBPIus Tools - это эксперты для Delphi и C++ Builder, поставляющиеся в готовом, скомпилированном виде, поэтому для их установки в среде необходимо установить соответствующий пакет.
На момент создания книги опубликованы FIBPIus Tools для Borland Delphi 3-7 и Borland C++ Builder 5-6. Если вы используете другие версии продуктов Borland, мы рекомендуем вам проверить более новые версии FIBPIus Tools на сайте http://www.tlbplus.net/.
Рассмотрим установку в среде Delphi (рис. 2.51). Необходимо выбрать пункт основного меню Components -> Install Packages.
Рис 2.51. Установка FIBPIusTools в среду Delphi
Нажмите на кнопку Add и найдите соответствующий вашей версии Delphi пакет (табл. 2.1).
Табл 2.1. FIBPlusTools: Поддерживаемые версии Delphi/C++ Builder
Версия Delphi/C++ Builder | Название пакета FIBPIus Tools |
Delphi 3 | PFIBPIusTools3.dpl |
Delphi 4 | pFIBPIusTools4.bpl |
Delphi 5 | pFIBPIusToolsS.bpl |
Delphi 6 | PFIBPIusTools6.bpl |
Delphi 7 | PFIBPIusTools7.bpl |
C++ Builder 5 | PFIBPIusTools_CB5.bpl |
C++ Builder 6 | pFIBPIusTools_CB6.bpl |
После установки вы обнаружите пункт FIBPIus в основном меню Delphi (рис. 2.52).
Рис 2.52. Меню FIBPIus Tools
Последний пункт в меню FIBPIus фактически ничего не делает, но показывает номер установленной версии.
Preferences
Пункт Preferences позволяет настроить параметры основных компонентов по умолчанию (рис. 2.53).
На первой странице диалога вы можете задать значения по умолчанию для свойств Options, PrepareOptions и DetailsConditions для всех компонентов класса TpFIBDataSet. Вы можете задать определенные ключи для этих свойств. Например, если вы включите флажок SetRequiredFields то, когда вы положите новый компонент TpFIBDataSet на вашу форму, ее свойство PrepareOptions будет содержать ключ pfSetRequiredFields. Наиболее важным является тот факт, что умолчания, заданные в FIBPIus Tools Preferences, действуют во всех приложениях, которые вы будете создавать. Однако необходимо иметь в виду, что это только первоначальные умолчания. То есть если после помещения компонента на форму вы измените свойства, то это никак не коснется Preferences. Также изменение Preferences не коснется тех компонент значения свойств которых уже были заданы.
Рис. 2.53. Диалог настройки опций TpFIBDataSet в design-time.
Обратите внимание на поля "Prefix Generator name" и "Suffix Generator name". Задав их значения, вы сможете регулировать формирование имен для названий генераторов в свойстве AutoUpdateOptions у TpFIBDataSet. Имя генератора в AutoUpdateOptions генерируется из названия таблицы (UpdateTable), префикса и суффикса.
Следующие страницы диалога позволяют настраивать ключевые свойства компонентов TpFIBDataBase, TpFIBTransaction и TpFIBQuery.
В частности, если вы всегда работаете с новыми версиями InterBase, т. е. С версиями 6 и более (а также Firebird), то мы рекомендуем вам задать значение SQL Dialect на закладке TpFIBDatabase равным 3, чтобы каждый раз не переключать это свойство вручную.
SQL Navigator
Это наиболее интересная часть FIBPlus Tools, не имеющая аналогов в других продуктах. Фактически это инструмент централизованной обработки SQL в рамках целого приложения (рис. 2.54):