Когда и где создавать Memo в Run-time

отредактировано 04:35 Раздел: FastReport 4.0
Добрый день.

Есть отчет, в котором в бэнде master-data, есть поля, созданные в дизайнере (они отображаются всегда), и есть поля, которые создаются в runtime.
Количество таких полей переменное (точнее - их количество переменное не для каждой строчки дата-бэнда, а для разных документов, в зависимости от наличия или отсутствия инфы в документе).

Вопрос - когда, в каком месте отчета их правильнее создавать?

Сейчас они создаются в событии OnBeforePrint своего master-бэнда. Вроде бы всё работает правильно, но остаются сомнения, что создавать эти поля нужно раньше. 'Не размножаются' ли одни и те же поля при каждом вызове события?

Т.е., при печати первой строки бэнда обрабатывается событие BeforePrint, в бэнде создаются Memo для печати данных из полей F1 и F2, а при печати второй строки снова обрабатывается событие BeforePrint, два поля уже есть(?) от печати первой строки, а я создаю два новых поля для печати этих же F1 и F2...?

Спасибо.

Комментарии

  • gpigpi
    отредактировано 04:35
    написал:
    Сейчас они создаются в событии OnBeforePrint своего master-бэнда. Вроде бы всё работает правильно, но остаются сомнения, что создавать эти поля нужно раньше. 'Не размножаются' ли одни и те же поля при каждом вызове события?
    Размножаются.
    Попробуйте создавать в TfrxReportPage.OnBeforePrint
  • отредактировано 04:35
    gpi написал: »
    Размножаются.
    Попробуйте создавать в TfrxReportPage.OnBeforePrint

    Спасибо. буду пробовать.

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

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