Отчеты как MDI

vncvnc
отредактировано 11:09 Раздел: FastReport 3.0
Подскажите как поступить, а ситуация такая:
в приложении должна быть возможность запуска нескольких MDI окон с отчетами (на окнах расположены компоненты TfrxReport, TfrxPreview и TfrxDBDataSet - укладываются на окно в дизайнтайме). Отчеты по своей структуре одинаковые (загружаются из одного файла). Для каждого MDI окна есть свой DataModule из которого и распечатываются данные в отчете.
Проблема в том, что первое окно с отчетом открывается нормально, а во все последующие окна попадают данные из первого окна. Модули данных у каждого из окон свои, выборки (DataSet в модуле данных) для каждого окна открываются нормально и содержат те данные, что нужно, но (повторюсь) в отчетах данные того окна, которое было открыто первым.
Как сделать так, чтобы в разных окнах отчеты содержали свои данные?

Комментарии

  • LexLex
    отредактировано 11:09
    не уверен, но поробуй каждый отчет запускать в отделном потоке.
  • vncvnc
    отредактировано 11:09
    Вопрос снимается :-)
    Все решилось следующим образом:
    в методе инициализации каждой формы дописал следующие строки
    frxDBDataSet.DataSet = NULL;
    frxDBDataSet.DataSet = <необходимый TDataSet>;

    видимо, это для всех очевидно, но я с такой ситуацией столкнулся впервые, да и знания FastReport поверхностные
    :-)

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

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