|
v7: Условие список счетов в запросе | ☑ | ||
---|---|---|---|---|
0
Slypower
14.02.19
✎
11:51
|
Добрый день. Есть такой запрос
"//{{ЗАПРОС(Сформировать) |Период с (НачМесяца(ДатаДок)) по (КонМесяца(ДатаДок)); |Сумма = Операция.Сумма; |Количество = Операция.Количество; |Счет = Операция.Счет; |КорСчет = Операция.КорСчет; |Материалы = Операция.Субконто.Материалы; |Подразделения2009 = Операция.Субконто.Подразделения2009; |Сотрудники = Операция.Субконто.Сотрудники; |ОсновныеСредства = Операция.Субконто.ОсновныеСредства; |КорСубконто = Операция.КорСубконто.ЭлементЗатрат; |Функция СуммаКО = КО(Сумма); |Функция КоличествоКО = КО(Количество); |Группировка Материалы; |Группировка Подразделения2009; |Группировка Сотрудники; |Группировка ОсновныеСредства; |Условие (Счет = Счет_10); |Условие (КорСубконто в СписокЭлЗатрат); |Условие (КорСчет в СписокКорСчетов); //ХЗ |"//}}ЗАПРОС В запрос передаю СписокКорСчетов - список счетов. Если в списке один счет, то запрос отрабатывает корректно. Если 2 и более, то пустой результат. Подскажите, как передать список счетов? |
|||
1
ZDenis
14.02.19
✎
11:57
|
(0) СписокКорСчетов - это СписокЗначений?
|
|||
2
Slypower
14.02.19
✎
11:59
|
(1) да, список значений.
|
|||
3
ZDenis
14.02.19
✎
12:29
|
(2) А как он заполняется можно посмотреть?
|
|||
4
Birmingem
14.02.19
✎
12:36
|
Возможно в СписокЭлЗатрат нет элементов, которые относятся к другим кор.счетам из СписокКорСчетов.
|
|||
5
Дмитрий
14.02.19
✎
13:02
|
(4) или у этих корсчетов нет того корсубконто, по которому отбор
|
|||
6
Slypower
14.02.19
✎
13:21
|
СписокКорСчетов.ДобавитьЗначение(СчетПоКоду("23.1.1",ПланыСчетов.Новый));
СписокКорСчетов.ДобавитьЗначение(СчетПоКоду("23.1.2",ПланыСчетов.Новый)); СписокКорСчетов.ДобавитьЗначение(СчетПоКоду("44.2",ПланыСчетов.Новый)); (4), нет, есть там |
|||
7
ZDenis
14.02.19
✎
13:29
|
(6) Точно знаешь, что по какому-то "Новому" плану счетов движения проходят? По идее все должно работать
|
|||
8
Slypower
14.02.19
✎
13:34
|
(7) точно знаю. Проверенно.
" Если в списке один счет, то запрос отрабатывает корректно. Если 2 и более, то пустой результат" |
|||
9
Slypower
14.02.19
✎
14:15
|
Такое условие отработало:
Счет_44 = СчетПоКоду("44.2",ПланыСчетов.Новый); Счет_232 = СчетПоКоду("23.1.2",ПланыСчетов.Новый); Счет_231 = СчетПоКоду("23.1.1",ПланыСчетов.Новый); |Условие ((КорСчет = Счет_44) или (КорСчет = Счет_231) или (КорСчет = Счет_232)); |
|||
10
Slypower
14.02.19
✎
14:21
|
Осталось понять, почему список в запросе не отрабатывает
|
|||
11
Ёпрст
14.02.19
✎
14:23
|
СписокКорСчетов- просто переменная модуля, или реквизит формы ?
|
|||
12
Slypower
14.02.19
✎
14:24
|
(11) Просто переменная модуля
СписокКорСчетов = СоздатьОбъект("СписокЗначений"); |
|||
13
Ёпрст
14.02.19
✎
14:25
|
база дбф, скуль ?
|
|||
14
Ёпрст
14.02.19
✎
14:26
|
Ну и можно еще не в, а список.Принадлежит = 1..
|
|||
15
Slypower
14.02.19
✎
14:27
|
(13) скуль
|
|||
16
Slypower
14.02.19
✎
14:30
|
(14) не отработало, пустой результат
|Условие (СписокКорСчетов.Принадлежит(КорСчет) = 1); |
|||
17
ZDenis
14.02.19
✎
14:33
|
(16) может у тебя где-то перетирается "СписокКорСчетов" после заполнения и до запроса?
|
|||
18
Slypower
14.02.19
✎
14:37
|
(17) )))))нет, ни в глобальном модуле, ни в модуле формы больше нигде не встречается.
|
|||
19
Ёпрст
14.02.19
✎
14:59
|
(15) ну, пробуй
Запрос.ВключитьSQL(0) или 1..не помню. Будет работать, но скорость упадёт |
|||
20
Slypower
14.02.19
✎
15:02
|
(19) Скорость Запроса в разы упала, но результат тот же, пусто((((
На текущий день решение из (9) мне подходит, но если начнут добавлять счета, проще в список запихнуть, чем текст запроса увеличивать. Проще, в смысле, читабельнее |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |