|
v7: Выбор родителя в запросе (класс ODBCRecordSet) | ☑ | ||
---|---|---|---|---|
0
pofigos
25.06.12
✎
18:50
|
Приветствую всех. Есть запрос:
Запрос = СоздатьОбъект("ODBCRecordSet"); Запрос.УстановитьТекстовыйПараметр("ВыбДата",НачДата); Запрос.УстановитьТекстовыйПараметр("КонДата",КонДата); Если ПустоеЗначение(ВыбФилиал) = 0 Тогда УслФил = "Филиал = :ВыбФилиал"; Запрос.УстановитьТекстовыйПараметр("ВыбФилиал",ВыбФилиал); Иначе УслФил = ""; КонецЕсли; ... еще параметры, которые выбираются на форме.. Контрагент или группа контрагентов, товар или группа товаров.. ТекстЗапроса = " |SELECT | Рег.Покупатель as [Покупатель $Справочник.Контрагенты], | Рег.Филиал as [Филиал $Справочник.Подразделение], | Рег.Товар as [Товар $Справочник.ВидыТоваров], | Рег.Признак as [ТипОперации $Справочник.ТипыОпераций], | Рег.СуммаОборот as СуммаОборот, | Рег.КоличествоОборот as КоличествоОборот |FROM | $РегистрОбороты.Реализация(:ВыбДата,:КонДата~,,,"+УслФил+",(Покупатель,Товар,Филиал,Признак),(Сумма,Количество)) as Рег |"; Запрос.Отладка(1); Запрос.ВыполнитьИнструкцию(ТекстЗапроса,ВыхТаб); Вопрос такой, подскажите, объясните (это было бы идеально :) ) или направьте... На форме могут выбираться группы справочников. При выборе только элементов все отрабатывает. Как правильно построить доп.условие (товар является группой и в этой группе есть еще группы). Спасибо заранее. |
|||
1
Rie
25.06.12
✎
18:54
|
(0) Смотри в сторону УложитьСписокОбъектов.
|
|||
2
pofigos
25.06.12
✎
18:56
|
Пробовал таким способом:
СпрТовары.ИспользоватьРодителя(ВыбВидыТоваров); СпрТовары.ВыбратьЭлементы(); Пока СпрТовары.ПолучитьЭлемент() = 1 Цикл Если СпрТовары.ЭтоГруппа() = 1 Тогда Список.ДобавитьЗначение(СпрТовары.ТекущийЭлемент()); КонецЕсли; КонецЦикла; ИмяТаблицы="#Группа"; Запрос.УложитьСписокОбъектов(Список,ИмяТаблицы); УслФил=УслФил+"Товар IN (SELECT Val FROM "+ИмяТаблицы+")"; Результат был нулевой.. |
|||
3
Rie
25.06.12
✎
19:13
|
(2) А до того УслФил чему было равно?
|
|||
4
КонецЦикла
25.06.12
✎
19:26
|
По идее достаточно добавить один элемент-группу и почитать доку:
Синтаксис: УложитьСписокОбъектов(Список, ИмяТаблицы, [ВидЭлементов]) Параметры: Список - тип: СписокЗначений, Справочник, Счет. Объект, содержание которого будет отправляться на сервер. Если передан список значений, во врем. таблицу попадает содержимое списка. Допустимо также передавать группу справочника, элемент справочника, группу счетов, счет - в этом случае во временную таблицу поступает переданное значение, однако если указан ВидЭлементов (вид справочника, или план счетов), то будет попытка включить в таблицу все подчененные элементы. ИмяТаблицы - тип: Строка. Имя временной таблицы. ВидЭлементов - тип: Строка. Вид справочника для иерархического включения элементов или вид плана счетов для иерархического включения счетов. Если параметр не указан, иерархического включения не происходит. |
|||
5
КонецЦикла
25.06.12
✎
19:27
|
Если что могу выложить как формировать такой список руками при необходимости и сложных условиях (текст запроса)
Но тут должно все тупо работать, ничего сложного |
|||
6
pofigos
25.06.12
✎
19:38
|
В том то и дело, за инфу спасибо, то где я читаю, этого нет.. Возможно пустая выборка, из- за того, что не указал вид элементов
(2) при начале формирования УслФил="". В зависимости от выбранных параметров на форме формируется условие. Выборка только по элементам выводит верный результат. С группами ноль. Попробую с указанием вида элементов |
|||
7
Азат
25.06.12
✎
19:40
|
(6) а что ты читаешь? по-моему, хелп к 1С++ только на www.1cpp.ru есть
|
|||
8
Rie
25.06.12
✎
19:41
|
(6) Так, на всякий случай - а тип измерения Товар какой?
|
|||
9
pofigos
25.06.12
✎
19:41
|
Данного описания (именно подробного, увы не видел). Исправлюсь :)
|
|||
10
pofigos
25.06.12
✎
19:42
|
(6) товар - справочник товаров. 5 уровней иерархии
|
|||
11
Rie
25.06.12
✎
19:43
|
(10) Задан ли вид у измерения? (предполагаю, что задан, - но на всякий случай спрашиваю).
|
|||
12
Rie
25.06.12
✎
19:44
|
+(11) Дело в том, что есть ещё и УложитьСписокОбъектов13
|
|||
13
pofigos
25.06.12
✎
19:44
|
Да, конечно задан.
|
|||
14
orefkov
25.06.12
✎
21:44
|
Огласите ...ИК... весь текст запроса, пжста...
|
|||
15
Тот же
25.06.12
✎
21:52
|
Дело в том, что в результате запроса групп нет. Чтобы были группы нужно в запросе добавить родителя и по нему группировать.
И еще в условие Запрос.УложитьСписокОбъектов(Список,ИмяТаблицы) нужен третий параметр - тип саправочника. |
|||
16
pofigos
26.06.12
✎
02:10
|
Всем спасибо, проблема была в отсутствии 3-го параметра УложитьСписокОбъектов(Список, ИмяТаблицы, [ВидЭлементов])
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |