Отчет со вложенными SQL запросами

отредактировано 10:20 Раздел: FastReport 2.xx VCL
Есть запрос вида

SELECT id FROM table_root;

теперь по его результату треебуется выполнить несколько запросов
примерно такого плана:

SELECT * FROM table_1 WHERE tableroot_id = <значение из первого запроса>;

SELECT * FROM table_2 WHERE tableroot_id = <значение из первого запроса>;
...

SELECT * FROM table_n WHERE tableroot_id = <значение из первого запроса>;

Сами запросы очень большие и сложные. Поэтому объединить их в один просто нереально.

Подскажите, pls, есть ли возможность на FR сделать отчет примерно следующего вида
и если "да", то в каком направлении копать.

ID: <значение 1 из table_root>

соответствующие поля из table_1
соответствующие поля из table_2
...
соответствующие поля из table_n

ID: <значение 2 из table_root>

соответствующие поля из table_1
соответствующие поля из table_2
...
соответствующие поля из table_n

И.т.д.



Комментарии

  • отредактировано 10:20
    Не совсем понятно - результаты запросов вида
    "SELECT * FROM table_1 WHERE tableroot_id"
    возвращают одинаковый набо полей (количество+типы+названия) или нет ?
    Если одинаковый, то можно всё объединить с помощью UNION - так будет намного проще. Главный запрос будет отображать MasterData, а дочерний DetailData.
    Если наборы полей разные, то придётся для каждого запроса лепить свой SubReport, его класть на отдельный Child и все чайлды крепить к MasterData (главному запросу).




  • отредактировано 10:20
    Про CHILD бэнды читай доку.

    P.S. Просьба по мылу такие вопросы не задавать ;) )
  • отредактировано 10:20
    Vano написал:
    Если наборы полей разные, то придётся для каждого запроса лепить свой SubReport, его класть на отдельный Child и все чайлды крепить к MasterData (главному запросу).
    Наборы полей разные

    А вот как во время генерации отчета формировать и выполнять подчиненные SQL запросы?
  • отредактировано 10:20
    написал:
    А вот как во время генерации отчета формировать и выполнять подчиненные SQL запросы?
    У подчинённых кверей укажи в Datasource гавлный запрос (через параметры связь полей главного и подчиненного запроса).

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

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