Расширение дизайнера

отредактировано 14:18 Раздел: FastReport 4.0
Добрый день!

Создается масса отчетов, отличающихся только только полем (набором полей), по которому выполняется группировка.
Стало быть, источник данных должен быть отсортирован по этому полю.

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

В общем-то, по минимуму было бы достаточно доп. пункта меню или кнопки. В идеале - доп. закладки на поле "данные".

Как реализовать, чтобы в дизайнере появился контрол, вызывающий кастом-экшн для реализаци моих "хотелок"?

Варианты:
- создать визард;
- создать компонент отчета;
- "обмануть" заказчика, подсунув вместо "чистого" дизайнера свой TWinControl, на котором разместить дизайнер (как в ДЕМО)?
- нагло врезаться в код дизайнера?
- ...?

Спасибо.

Комментарии

  • отредактировано 14:18
    Ну ладно, бусть будет кнока на тулбаре "Мастера".
    Создали, ОК.

    Вопрос: как, имея "на руках" свойства Designer и Report, получить выбранный в данный момент времени набор данных (в делеве DataTree)?
  • отредактировано 14:18
    Ага, ясненько:
      if (Report.DataSets.Count > 0) and
        (TfrxDesignerForm(Designer).DataTree.DataTree.Selected <> nil) then
        ShowMessage('Набор данных  +   Report.GetAlias(TfrxDataSet(TfrxDesignerForm(Designer).DataTree.DataTree.Selected.Data)))
      else
        ShowMessage('Набор данных не выбран!');
    
  • отредактировано 14:18
    Продолжение вопросов по той же теме:

    - для регистрации каждого визарда следует свой отдельныый класс объявлять?
  • отредактировано 14:18
    Я, например, просто менял текст запроса в зависимости от того, что вводится (выбирается в комбобоксах) в компонентах диалога.

Оставить комментарий

Многофункциональный текстовый редактор. Чтобы отредактировать стиль параграфа, нажмите TAB, чтобы перейти к меню абзаца. Там вы можете выбрать стиль. По умолчанию не выбран ни один стиль. Когда вы выберете текст, появится встроенное меню форматирования. Нажмите TAB, чтобы войти в него. Некоторые элементы, такие как многофункциональные вставки ссылок, картинок, индикаторов загрузки и сообщений об ошибок могут быть вставлены в редактор. Вы можете перемещаться по ним, используя стрелки внутри редактора и удалять с помощью клавиш delete или backspace.