17.07.2007, 17:56 | #1 |
Участник
|
Объединение запросов
Добрый вечер.
Подскажите пожалуйста, как объединить два запроса. В репозитарии создал 2 запроса, с одними и теми же таблицами. В одном запросе указываю критерии отбора и пытаюсь объединить их с помощью SysQueryRange::mergeRanges(), но критерии не копируются. В чем может быть проблема? |
|
17.07.2007, 18:01 | #2 |
Участник
|
Возможно не так вызываете?
Метод SysQuery::mergeRanges(Query, Query, int, boolean, boolean) копирует фильтры источника, номер которого передан третьим параметров, в запрос, переданный первым параметром (именно в этот источник, если он существует. иначе, если указан 4ый параметр как true, то источник этот добавляется). то есть, источники в обоих запросах должны быть на одном и том же месте. У вас это так? |
|
18.07.2007, 08:08 | #3 |
Участник
|
Источники в запросах находятся в разных местах, но я указываю конкретно в каком месте. Вот пример:
SysQuery::mergeRanges(qMain, qRow, qRow.dataSourceTable(tablenum(InventTable)).id(), false, false, qMain.dataSourceTable(tablenum(InventTable)).id()); |
|
18.07.2007, 10:04 | #4 |
Участник
|
Ну, в стандарте шестого параметра нет.
А на qMain у вас уже есть такие фильтры? (без значений, возможно) Потому что, если да, то они пропускаются (у вас пятый параметр addSameFieldRange = false) |
|
18.07.2007, 10:25 | #5 |
Участник
|
Пятый параметр я поставил True.
То есть на qMain не должны быть указаны Range? |
|
18.07.2007, 10:29 | #6 |
Участник
|
Цитата:
Если пятый параметр = true, то можно оставить существующие фильтры. |
|
19.07.2007, 08:07 | #7 |
Участник
|
Спасибо. Разобрался
|
|