Як відобразити в dbgrid результати декількох запитів

Як відобразити в DBGrid результати декількох запитів.

Добрий день. Тема така - у мене є в Interbase збережена процедура - 3 вхідних і з десяток вихідних параметрів. У моїй програмі в циклі задаються ці вхідні параметри. Потрібно, щоб результати запитів відобразилися один під іншим у DBGrid "e, тобто мені якось треба зберегти результати попередніх запитів в Dataset" e. Як це зробити? Дякуємо.

Відразу все:
SELECT * FROM MyProcedure (<первый комплект трёх параметров>)
UNION ALL
SELECT * FROM MyProcedure (<второй комплект трёх параметров>)
UNION ALL
.
SELECT * FROM MyProcedure ()

Пробував, але такий варіант не проходить. Заковика в тому, що я не знаю яке у комплектів вхідних параметрів буде, тому не можу записати це в одному запиті. У моєму випадку повинен бути цикл.
Ось фрагмент збереженої процедури (не повний текст)

begin
select
trunk_names.descr,
max (trunk_data.avlb_o),
// і Т. Д. і Т. П
from trunk_names
where // ---- //
into
: Trunkname,
// - //
: Occ_i;
suspend;
select
trunk_names.descr,
max (trunk_data.avlb_o),
// і Т. Д. і Т. П
from trunk_names
where // ---- //
into
: Trunkname,
// - //
: Occ_i;
suspend;
end;

А ось так я її викликаю з Delphi

with Form1.IB_form17 do
begin
Close;
Sql.Clear;
SQL.Add ( "select * from FORM17_OTCHET (: par1,: par2,: par2)");
ParamByName ( "par1"). AsString: = // --- //;
ParamByName ( "par2"). AsDateTime: = // --- //;
ParamByName ( "par3"). AsDateTime: = // --- //;
Open;
end;

І цей виклик поміщається в цикл.
У підсумку мені потрібно отримати один DataSet в якому будуть результати цих запитів. Які можуть бути пропозиції.

Завантажуйте результати запитів в який-небудь DataSet в пам'яті. Наприклад, ClientDataSet, або який-небудь RxMemoryData

Формуй текст запиту динамічно.
1. Імена параметрів теж формуються динамічно
знову ж в циклі (або як там у тебе) визначай значення
параметрів.
2. Без параметрів, все чистим текстом, в циклі. )

FB?
З масивами в FB не працював, але може передати масив параметрів, а в ХП їх відпрацювати?