Связь между несколькими Masterdata

отредактировано March 2013 Раздел: FastReport 4.0
Добрый день! Разрабатываю отчет, в котором использую вертикальные бэнды.
На странице один горизонтальный MasterData и 4 вертикальных MasterData.

В ReportTitle1OnBeforePrint
Создаю динамический запрос SQLText := 'slect ID, bla bla bla ';
Далее
SQLSET('People', SQLText);
SQLOpen('People');

Датасет People подключаю к горизонтальному MasterData
Теперь, мне нужно связать(или передать) в остальные датасеты, id из датсета People
Причем остальные тоже создаются динамически.
Подскажите, как лучше организовать связь?
Если в томже ReportTitle1OnBeforePrint ниже назначить

SQLText := 'select ..... where id__ = ''' + IntToStr([people."id") + ''' ;
SQLSET('Nach', SQLText);
SQLOpen('Nach);
и т.д. для остальных бендов
То для всех записей из основного бенда people в вертикальных бендах будут значения соответствующие 1 записи основного бенда

Комментарии

  • gpigpi
    отредактировано 01:20
    Попробуйте открывать датасеты для вертикальных MasterData в событии OnBeforePrint горизонтального MasterData
  • отредактировано 01:20
    gpi написал: »
    Попробуйте открывать датасеты для вертикальных MasterData в событии OnBeforePrint горизонтального MasterData

    Попробовал, но после ReportTitlteOnBeforePrint, в котором открывается запрос People, осуществляется переход к OnBeforePrint уже вертикальных бэндов, минуя OnBeforePrint горизонтального, и та как данные не определены возникает ошибка отсутствия данных.
    Еще такой нюанс:
    Горизонтальный мастердата имеет название MasterData3, а вертикальные начинаются с MasterData1,2,4,5,6,7

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

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