| 
    
        
     
     | 
    
  | 
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) мне подходит, но если начнут добавлять счета, проще в список запихнуть, чем текст запроса увеличивать. Проще, в смысле, читабельнее  | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |