Имя: Пароль:
1C
1С v8
Вопрос по отбору по множеству значений
,
0 wishma
 
25.03.13
08:46
Здраствуйте!
Есть вопрос.
Есть большой внешний бухгалтерский отчет, который собирает информацию по оборотам за период, по таким параметрам как "подразделение контрагент СчетЗатрат СтатьяЗатрат".  
Статья затрат привязана через текст запроса:
"ВЫБОР
  |         КОГДА Запрос1.СчетДт В ИЕРАРХИИ (&Сч25) ИЛИ Запрос1.СчетДт В ИЕРАРХИИ (&Сч26)
  |         ТОГДА Запрос1.СубконтоДт2
  |         ИНАЧЕ Запрос1.СубконтоДт3      
  |      КОНЕЦ                              КАК СтатьяЗатрат,
"
Вопрос - как в этом случае отфильтровать значение КодСтатьиЗатрат по определёному списку?
интересуют не диапазоны значений, а конкретные значения (допустим 00300, 00342, 00423 и т.д.)

Конфигурация Бухгалтерия 8.1
1 butterbean
 
25.03.13
08:50
ВЫБОР
           КОГДА Запрос1.СчетДт В ИЕРАРХИИ (&Сч25) ИЛИ Запрос1.СчетДт В ИЕРАРХИИ (&Сч26)
           ТОГДА Запрос1.СубконтоДт2.Код В (&МассивКодов)
           ИНАЧЕ Запрос1.СубконтоДт3.Код В (&МассивКодов)      
        КОНЕЦ
2 wishma
 
25.03.13
08:52
Вот ещё пару кусков кода на эту тему

|       СтатьиЗатрат.Код                    КАК
|       СтатьяЗатратКод,
|    СтатьиЗатрат.КлассификаторЗатрат,



|    ЛЕВОЕ СОЕДИНЕНИЕ Справочник.СтатьиЗатрат КАК СтатьиЗатрат
|    ПО Расходы.СтатьяЗатрат = СтатьиЗатрат.Ссылка
3 НафНаф
 
25.03.13
09:00
(ВЫБОР
          КОГДА Запрос1.СчетДт В ИЕРАРХИИ (&Сч25) ИЛИ Запрос1.СчетДт В ИЕРАРХИИ (&Сч26)
          ТОГДА Запрос1.СубконтоДт2
          ИНАЧЕ Запрос1.СубконтоДт3
       КОНЕЦ).Код В {&МассивКодов)
4 wishma
 
25.03.13
09:01
спасибо за целых 2 варианта, сейчас попробую и отпишусь по результатам
5 wishma
 
25.03.13
09:33
Переоценил свои возможности, теперь проблема с созданием массива
Пишу это:
МассивКодов = Новый Массив;
   ОтборПоКоду.Добавить = ("03010");
   ОтборПоКоду.Добавить = ("03040");
   ОтборПоКоду.Добавить = ("03041");

Получаю это:
{Форма.Форма(621)}: Поле объекта не обнаружено (Добавить)
   ОтборПоКоду.Добавить = ("03010");

В чем тут дело?
6 butterbean
 
25.03.13
09:34
(5)ты СП открывал вообще??
МассивКодов.Добавить("03010");
7 wishma
 
25.03.13
09:36
всё со всем перепутал
пишу так
ОтборПоКоду = Новый Массив();
   ОтборПоКоду.Добавить = ("03010");
   ОтборПоКоду.Добавить = ("03040");
   ОтборПоКоду.Добавить = ("03041");
   ОтборПоКоду.Добавить = ("03042");
СП - это процедура? Естественно это всё в теле процедуры выполняется
8 wishma
 
25.03.13
09:41
ВЫБОР
   |            КОГДА Запрос1.СчетДт В ИЕРАРХИИ (&Сч25) ИЛИ Запрос1.СчетДт В ИЕРАРХИИ (&Сч26)
   |            ТОГДА Запрос1.СубконтоДт2.Код               В (&ОтборПоКоду)
   |            ИНАЧЕ Запрос1.СубконтоДт3.Код               В (&ОтборПоКоду)
   |        КОНЕЦ                                        КАК СтатьяЗатрат,


{Форма.Форма(841)}: Ошибка при вызове метода контекста (Выполнить): {(35, 48)}: Неверные параметры "ВЫБОР"
ИНАЧЕ Запрос1.СубконтоДт3.Код               <<?>>В (&ОтборПоКоду)
   РезультатЗапроса = Запрос.Выполнить();
по причине:
{(35, 48)}: Неверные параметры "ВЫБОР"
ИНАЧЕ Запрос1.СубконтоДт3.Код               <<?>>В (&ОтборПоКоду)

вот что выдаёт по первому варианту.
массив успешно создал, не надо было знак = ставить) извиняюсь за такие ошибки
9 wishma
 
25.03.13
09:51
так точно правильно, как вы говорите? ни один из вариантов не работает, ругается на неверные параметры ВЫБОР

могу весь текст запроса вставить, просто он ООООЧЕНЬ большой
10 wishma
 
25.03.13
09:57
можно тут как то под спойлер запрос убрать?
и как тут редактировать сообщения? или такой возможности вообще нет?
11 НафНаф
 
25.03.13
10:01
что ты хочешь получить?
12 wishma
 
25.03.13
10:05
хочу получить то что делаем
то есть - есть сложный запрос, состоящий из 3х запросов
статья затрат выбирается в первом запросе, текст которого обрывками я и копировал сюда
задача - отфильтровать результаты отчета ТОЛЬКО по конкретным номерам Кода Статьи Затрат, которые я указываю в массиве "ОтборПоКоду"
С массивом разобрался) теперь проблема в этом...
13 wishma
 
25.03.13
10:06
чтобы не "выносить мозг" - вставлю лучше весь код запроса, может сам чего не понимаю...

|ВЫБРАТЬ
   |    Расходы.Подразделение,
   |    Расходы.Контрагент,
   |    Расходы.Договор,
   |    Расходы.СчетЗатрат,
   |    Расходы.КорСчет,
   |    Расходы.СтатьяЗатрат,
   |    СтатьиЗатрат.Код                    КАК СтатьяЗатратКод,
   |    СтатьиЗатрат.КлассификаторЗатрат,
   |    Расходы.Номенклатура.Родитель        КАК ГруппаНоменклатуры,
   |    Расходы.Номенклатура,
   |    Расходы.Содержание,
   |    Расходы.Месяц,
   |    Расходы.Документ,
   |    СУММА(Расходы.Сумма)                КАК Сумма,
   |    СУММА(Расходы.Количество)            КАК Количество
   |ИЗ
   |    (
   //---------------------------------------------------------------------------------------------------------------
   //первый запрос - по счетам 60, 70, 71, 73, 76.06, 76.09, 76.12
   //Контрагенты из СубконтоКт2, Договоры из СубконтоКт3 (а для корсчетов 70 и 71 - Договоры пустые)
   |    ВЫБРАТЬ
   |        Запрос1.СубконтоДт1                        КАК Подразделение,
   |        Запрос1.СубконтоКт2                        КАК Контрагент,
   
   |        ВЫБОР
   |            КОГДА Запрос1.СчетКт В ИЕРАРХИИ (&Сч70) ИЛИ Запрос1.СчетКт В ИЕРАРХИИ (&Сч71)
   |            ТОГДА """"
   |            ИНАЧЕ Запрос1.СубконтоКт3      
   |        КОНЕЦ                                        КАК Договор,
   |
   |        Запрос1.СчетДт                                КАК СчетЗатрат,
   |        Запрос1.СчетКт                                КАК КорСчет,
   |
   |        ВЫБОР
   |            КОГДА Запрос1.СчетДт В ИЕРАРХИИ (&Сч25) ИЛИ Запрос1.СчетДт В ИЕРАРХИИ (&Сч26)
   |            ТОГДА Запрос1.СубконтоДт2
   |            ИНАЧЕ Запрос1.СубконтоДт3      
   |        КОНЕЦ                                        КАК СтатьяЗатрат,
   |      
   |        Запрос1.Содержание                            КАК Содержание,
   |        НачалоПериода(Запрос1.Период, Месяц)        КАК Месяц,
   |        Запрос1.Регистратор                        КАК Документ,
   //        группировка по номеру строки обязательно нужна, иначе отсеиваются проводки с одинаковыми суммами и аналитикой
   |        Запрос1.НомерСтроки                        КАК НомСтроки,
   |        Запрос1.Сумма                                КАК Сумма,
   |        0                                            КАК Количество,
   |       ПоступлениеТоваровУслугУслуги.Номенклатура    КАК Номенклатура
   |    ИЗ
   |        РегистрБухгалтерии.Хозрасчетный.ДвиженияССубконто(
   |            &НачДата,
   |            &КонДата,
   |            СчетДт В ИЕРАРХИИ (&СчетаЗатрат) И СчетКт В ИЕРАРХИИ (&КорСчетаЗапроса1) И Активность = ИСТИНА)    
   |    КАК Запрос1
   |
   |        ЛЕВОЕ СОЕДИНЕНИЕ Документ.ПоступлениеТоваровУслуг.Услуги КАК ПоступлениеТоваровУслугУслуги
   |            ПО  (Запрос1.Регистратор = ПоступлениеТоваровУслугУслуги.Ссылка
   |            И    Запрос1.СчетДт        = ПоступлениеТоваровУслугУслуги.СчетЗатрат
   |            И    Запрос1.Сумма          = ПоступлениеТоваровУслугУслуги.Сумма
   |            И    Запрос1.НомерСтроки = ПоступлениеТоваровУслугУслуги.НомерСтроки)
   |
   |    ОБЪЕДИНИТЬ
   |
   //---------------------------------------------------------------------------------------------------------------
   //второй запрос - по счетам 68 и 69
   //Контрагенты из СубконтоКт4, Договоры - пустые
   |    ВЫБРАТЬ
   |        Запрос2.СубконтоДт1,
   |        Запрос2.СубконтоКт4,
   |        """",
   |        Запрос2.СчетДт,
   |        Запрос2.СчетКт,
   |
   |        ВЫБОР
   |            КОГДА Запрос2.СчетДт В ИЕРАРХИИ (&Сч25) ИЛИ Запрос2.СчетДт В ИЕРАРХИИ (&Сч26)
   |            ТОГДА Запрос2.СубконтоДт2
   |            ИНАЧЕ Запрос2.СубконтоДт3
   |        КОНЕЦ,
   |      
   |        Запрос2.Содержание,
   |        НачалоПериода(Запрос2.Период, Месяц),
   |        Запрос2.Регистратор,
   //        группировка по номеру строки обязательно нужна, иначе отсеиваются проводки с одинаковыми суммами и аналитикой
   |        Запрос2.НомерСтроки,
   |        Запрос2.Сумма,
   |        0,
   |        Неопределено
   |    ИЗ
   |        РегистрБухгалтерии.Хозрасчетный.ДвиженияССубконто(
   |            &НачДата,
   |            &КонДата,
   |            СчетДт В ИЕРАРХИИ (&СчетаЗатрат) И СчетКт В ИЕРАРХИИ (&КорСчетаЗапроса2) И Активность = ИСТИНА)    
   |    КАК Запрос2
   |      
   |    ОБЪЕДИНИТЬ
   |
   //---------------------------------------------------------------------------------------------------------------
   //третий запрос - по счетам 000, 02, 10, 76.01.2, 97, 79.09
   //Контрагенты либо пустые, либо из СубконтоКт1 (счёт 79.09); Договоры пустые; Номенклатура из СубконтоКт2 (только для 10 счёта)
   |    ВЫБРАТЬ
   |        Запрос3.СубконтоДт1,
   |        ВЫБОР КОГДА Запрос3.СчетКт В ИЕРАРХИИ (&Сч79_09) ТОГДА Запрос3.СубконтоКт1 ИНАЧЕ """" КОНЕЦ,
   |        """",
   |        Запрос3.СчетДт,
   |        Запрос3.СчетКт,
   |
   |        ВЫБОР
   |            КОГДА Запрос3.СчетДт В ИЕРАРХИИ (&Сч25) ИЛИ Запрос3.СчетДт В ИЕРАРХИИ (&Сч26)
   |            ТОГДА Запрос3.СубконтоДт2
   |            ИНАЧЕ Запрос3.СубконтоДт3
   |        КОНЕЦ,
   |      
   |        Запрос3.Содержание,
   |        НачалоПериода(Запрос3.Период, Месяц),
   |        Запрос3.Регистратор,
   //        группировка по номеру строки обязательно нужна, иначе отсеиваются проводки с одинаковыми суммами и аналитикой
   |        Запрос3.НомерСтроки,
   |        Запрос3.Сумма,
   |
   |        ВЫБОР
   |            КОГДА Запрос3.СчетКт В ИЕРАРХИИ (&Сч10)
   |            ТОГДА Запрос3.КоличествоКт
   |            ИНАЧЕ 0
   |        КОНЕЦ,
   |
   |        ВЫБОР
   |            КОГДА Запрос3.СчетКт В ИЕРАРХИИ (&Сч10)
   |            ТОГДА
   |                ВЫБОР
   |                    КОГДА Запрос3.СчетКт В ИЕРАРХИИ (&Сч10_11)
   |                    ТОГДА Запрос3.СубконтоКт1
   |                    ИНАЧЕ Запрос3.СубконтоКт2
   |                КОНЕЦ
   |            ИНАЧЕ Неопределено
   |        КОНЕЦ
   |
   |    ИЗ
   |        РегистрБухгалтерии.Хозрасчетный.ДвиженияССубконто(
   |            &НачДата,
   |            &КонДата,
   |            СчетДт В ИЕРАРХИИ (&СчетаЗатрат) И СчетКт В ИЕРАРХИИ (&КорСчетаЗапроса3) И Активность = ИСТИНА)    
   |    КАК Запрос3
   |    )
   |КАК Расходы
   |    ЛЕВОЕ СОЕДИНЕНИЕ Справочник.СтатьиЗатрат КАК СтатьиЗатрат
   |   ПО Расходы.СтатьяЗатрат = СтатьиЗатрат.Ссылка
   |ГДЕ
   |    СтатьиЗатрат.Код <> 03010
   |
   |    "+СформироватьУсловияОтбора()+"
   |
   |СГРУППИРОВАТЬ ПО
   |    Расходы.Подразделение,
   |    Расходы.Контрагент,
   |    Расходы.Договор,
   |    Расходы.СчетЗатрат,
   |    Расходы.КорСчет,
   |    Расходы.СтатьяЗатрат,
   |    СтатьиЗатрат.Код,
   |    СтатьиЗатрат.КлассификаторЗатрат,
   |    Расходы.Номенклатура.Родитель,
   |    Расходы.Номенклатура,
   |    Расходы.Содержание,
   |    Расходы.Месяц,
   |    Расходы.Документ
   |";
14 wishma
 
25.03.13
10:10
а вот что я "наваял". в первом примере не было "наших" изменений, и там лишняя строчка была в условиях соединения.
Ниже - всё корректно

|ВЫБРАТЬ
   |    Расходы.Подразделение,
   |    Расходы.Контрагент,
   |    Расходы.Договор,
   |    Расходы.СчетЗатрат,
   |    Расходы.КорСчет,
   |    Расходы.СтатьяЗатрат,
   |    СтатьиЗатрат.Код                    КАК СтатьяЗатратКод,
   |    СтатьиЗатрат.КлассификаторЗатрат,
   |    Расходы.Номенклатура.Родитель        КАК ГруппаНоменклатуры,
   |    Расходы.Номенклатура,
   |    Расходы.Содержание,
   |    Расходы.Месяц,
   |    Расходы.Документ,
   |    СУММА(Расходы.Сумма)                КАК Сумма,
   |    СУММА(Расходы.Количество)            КАК Количество
   |ИЗ
   |    (
   //---------------------------------------------------------------------------------------------------------------
   //первый запрос - по счетам 60, 70, 71, 73, 76.06, 76.09, 76.12
   //Контрагенты из СубконтоКт2, Договоры из СубконтоКт3 (а для корсчетов 70 и 71 - Договоры пустые)
   |    ВЫБРАТЬ
   |        Запрос1.СубконтоДт1                        КАК Подразделение,
   |        Запрос1.СубконтоКт2                        КАК Контрагент,
   
   |        ВЫБОР
   |            КОГДА Запрос1.СчетКт В ИЕРАРХИИ (&Сч70) ИЛИ Запрос1.СчетКт В ИЕРАРХИИ (&Сч71)
   |            ТОГДА """"
   |            ИНАЧЕ Запрос1.СубконтоКт3      
   |        КОНЕЦ                                        КАК Договор,
   |
   |        Запрос1.СчетДт                                КАК СчетЗатрат,
   |        Запрос1.СчетКт                                КАК КорСчет,
   |
   |ВЫБОР
   |      КОГДА Запрос1.СчетДт В ИЕРАРХИИ (&Сч25) ИЛИ Запрос1.СчетДт В ИЕРАРХИИ (&Сч26)
   |       ТОГДА Запрос1.СубконтоДт2.Код В (&ОтборПоКоду)
   |       ИНАЧЕ Запрос1.СубконтоДт3.Код В (&ОтборПоКоду)        
   | КОНЕЦ                                                      КАК СтатьяЗатрат,
   //|        ВЫБОР
   //|            КОГДА Запрос1.СчетДт В ИЕРАРХИИ (&Сч25) ИЛИ Запрос1.СчетДт В ИЕРАРХИИ (&Сч26)
   //|            ТОГДА Запрос1.СубконтоДт2.Код               В (&ОтборПоКоду)
   //|            ИНАЧЕ Запрос1.СубконтоДт3.Код               В (&ОтборПоКоду)
   //|        КОНЕЦ                                        КАК СтатьяЗатрат,
   |      
   |        Запрос1.Содержание                            КАК Содержание,
   |        НачалоПериода(Запрос1.Период, Месяц)        КАК Месяц,
   |        Запрос1.Регистратор                        КАК Документ,
   //        группировка по номеру строки обязательно нужна, иначе отсеиваются проводки с одинаковыми суммами и аналитикой
   |        Запрос1.НомерСтроки                        КАК НомСтроки,
   |        Запрос1.Сумма                                КАК Сумма,
   |        0                                            КАК Количество,
   |       ПоступлениеТоваровУслугУслуги.Номенклатура    КАК Номенклатура
   |    ИЗ
   |        РегистрБухгалтерии.Хозрасчетный.ДвиженияССубконто(
   |            &НачДата,
   |            &КонДата,
   |            СчетДт В ИЕРАРХИИ (&СчетаЗатрат) И СчетКт В ИЕРАРХИИ (&КорСчетаЗапроса1) И Активность = ИСТИНА)    
   |    КАК Запрос1
   |
   |        ЛЕВОЕ СОЕДИНЕНИЕ Документ.ПоступлениеТоваровУслуг.Услуги КАК ПоступлениеТоваровУслугУслуги
   |            ПО  (Запрос1.Регистратор = ПоступлениеТоваровУслугУслуги.Ссылка
   |            И    Запрос1.СчетДт        = ПоступлениеТоваровУслугУслуги.СчетЗатрат
   |            И    Запрос1.Сумма          = ПоступлениеТоваровУслугУслуги.Сумма
   |            И    Запрос1.НомерСтроки = ПоступлениеТоваровУслугУслуги.НомерСтроки)
   |
   |    ОБЪЕДИНИТЬ
   |
   //---------------------------------------------------------------------------------------------------------------
   //второй запрос - по счетам 68 и 69
   //Контрагенты из СубконтоКт4, Договоры - пустые
   |    ВЫБРАТЬ
   |        Запрос2.СубконтоДт1,
   |        Запрос2.СубконтоКт4,
   |        """",
   |        Запрос2.СчетДт,
   |        Запрос2.СчетКт,
   |
   |        ВЫБОР
   |            КОГДА Запрос2.СчетДт В ИЕРАРХИИ (&Сч25) ИЛИ Запрос2.СчетДт В ИЕРАРХИИ (&Сч26)
   |            ТОГДА Запрос2.СубконтоДт2
   |            ИНАЧЕ Запрос2.СубконтоДт3
   |        КОНЕЦ,
   |      
   |        Запрос2.Содержание,
   |        НачалоПериода(Запрос2.Период, Месяц),
   |        Запрос2.Регистратор,
   //        группировка по номеру строки обязательно нужна, иначе отсеиваются проводки с одинаковыми суммами и аналитикой
   |        Запрос2.НомерСтроки,
   |        Запрос2.Сумма,
   |        0,
   |        Неопределено
   |    ИЗ
   |        РегистрБухгалтерии.Хозрасчетный.ДвиженияССубконто(
   |            &НачДата,
   |            &КонДата,
   |            СчетДт В ИЕРАРХИИ (&СчетаЗатрат) И СчетКт В ИЕРАРХИИ (&КорСчетаЗапроса2) И Активность = ИСТИНА)    
   |    КАК Запрос2
   |      
   |    ОБЪЕДИНИТЬ
   |
   //---------------------------------------------------------------------------------------------------------------
   //третий запрос - по счетам 000, 02, 10, 76.01.2, 97, 79.09
   //Контрагенты либо пустые, либо из СубконтоКт1 (счёт 79.09); Договоры пустые; Номенклатура из СубконтоКт2 (только для 10 счёта)
   |    ВЫБРАТЬ
   |        Запрос3.СубконтоДт1,
   |        ВЫБОР КОГДА Запрос3.СчетКт В ИЕРАРХИИ (&Сч79_09) ТОГДА Запрос3.СубконтоКт1 ИНАЧЕ """" КОНЕЦ,
   |        """",
   |        Запрос3.СчетДт,
   |        Запрос3.СчетКт,
   |
   |        ВЫБОР
   |            КОГДА Запрос3.СчетДт В ИЕРАРХИИ (&Сч25) ИЛИ Запрос3.СчетДт В ИЕРАРХИИ (&Сч26)
   |            ТОГДА Запрос3.СубконтоДт2
   |            ИНАЧЕ Запрос3.СубконтоДт3
   |        КОНЕЦ,
   |      
   |        Запрос3.Содержание,
   |        НачалоПериода(Запрос3.Период, Месяц),
   |        Запрос3.Регистратор,
   //        группировка по номеру строки обязательно нужна, иначе отсеиваются проводки с одинаковыми суммами и аналитикой
   |        Запрос3.НомерСтроки,
   |        Запрос3.Сумма,
   |
   |        ВЫБОР
   |            КОГДА Запрос3.СчетКт В ИЕРАРХИИ (&Сч10)
   |            ТОГДА Запрос3.КоличествоКт
   |            ИНАЧЕ 0
   |        КОНЕЦ,
   |
   |        ВЫБОР
   |            КОГДА Запрос3.СчетКт В ИЕРАРХИИ (&Сч10)
   |            ТОГДА
   |                ВЫБОР
   |                    КОГДА Запрос3.СчетКт В ИЕРАРХИИ (&Сч10_11)
   |                    ТОГДА Запрос3.СубконтоКт1
   |                    ИНАЧЕ Запрос3.СубконтоКт2
   |                КОНЕЦ
   |            ИНАЧЕ Неопределено
   |        КОНЕЦ
   |
   |    ИЗ
   |        РегистрБухгалтерии.Хозрасчетный.ДвиженияССубконто(
   |            &НачДата,
   |            &КонДата,
   |            СчетДт В ИЕРАРХИИ (&СчетаЗатрат) И СчетКт В ИЕРАРХИИ (&КорСчетаЗапроса3) И Активность = ИСТИНА)    
   |    КАК Запрос3
   |    )
   |КАК Расходы
   |    ЛЕВОЕ СОЕДИНЕНИЕ Справочник.СтатьиЗатрат КАК СтатьиЗатрат
   |    ПО Расходы.СтатьяЗатрат = СтатьиЗатрат.Ссылка
   |
   |    "+СформироватьУсловияОтбора()+"
   |
   |СГРУППИРОВАТЬ ПО
   |    Расходы.Подразделение,
   |    Расходы.Контрагент,
   |    Расходы.Договор,
   |    Расходы.СчетЗатрат,
   |    Расходы.КорСчет,
   |    Расходы.СтатьяЗатрат,
   |    СтатьиЗатрат.Код,
   |    СтатьиЗатрат.КлассификаторЗатрат,
   |    Расходы.Номенклатура.Родитель,
   |    Расходы.Номенклатура,
   |    Расходы.Содержание,
   |    Расходы.Месяц,
   |    Расходы.Документ
   |";
15 НафНаф
 
25.03.13
10:13
значит так:
1. в секции "выбрать"

ВЫБОР
          КОГДА Запрос1.СчетДт В ИЕРАРХИИ (&Сч25) ИЛИ Запрос1.СчетДт В ИЕРАРХИИ (&Сч26)
          ТОГДА Запрос1.СубконтоДт2
          ИНАЧЕ Запрос1.СубконтоДт3
       КОНЕЦ

2. в секции "ГДЕ"

(ВЫБОР
          КОГДА Запрос1.СчетДт В ИЕРАРХИИ (&Сч25) ИЛИ Запрос1.СчетДт В ИЕРАРХИИ (&Сч26)
          ТОГДА Запрос1.СубконтоДт2
          ИНАЧЕ Запрос1.СубконтоДт3
       КОНЕЦ).КОД В (&СписокКодов) //но я бы делал массив ссылок, а не кодов
16 wishma
 
25.03.13
12:14
(15) Спасибо большое за помощь!
Вроде сделал как Вы сказали, то есть

|    ВЫБРАТЬ
   |        Запрос1.СубконтоДт1                        КАК Подразделение,
   |        Запрос1.СубконтоКт2                        КАК Контрагент,
   
   |        ВЫБОР
   |            КОГДА Запрос1.СчетКт В ИЕРАРХИИ (&Сч70) ИЛИ Запрос1.СчетКт В ИЕРАРХИИ (&Сч71)
   |            ТОГДА """"
   |            ИНАЧЕ Запрос1.СубконтоКт3      
   |        КОНЕЦ                                        КАК Договор,
   |
   |        Запрос1.СчетДт                                КАК СчетЗатрат,
   |        Запрос1.СчетКт                                КАК КорСчет,
   |
   |        ВЫБОР
   |            КОГДА Запрос1.СчетДт В ИЕРАРХИИ (&Сч25) ИЛИ Запрос1.СчетДт В ИЕРАРХИИ (&Сч26)
   |            ТОГДА Запрос1.СубконтоДт2
   |            ИНАЧЕ Запрос1.СубконтоДт3      
   |        КОНЕЦ                                        КАК СтатьяЗатрат,
   |      
   |        Запрос1.Содержание                            КАК Содержание,
   |        НачалоПериода(Запрос1.Период, Месяц)        КАК Месяц,
   |        Запрос1.Регистратор                        КАК Документ,
   |        Запрос1.НомерСтроки                        КАК НомСтроки,
   |        Запрос1.Сумма                                КАК Сумма,
   |        0                                            КАК Количество,
   |       ПоступлениеТоваровУслугУслуги.Номенклатура    КАК Номенклатура
   |    ИЗ
   |        РегистрБухгалтерии.Хозрасчетный.ДвиженияССубконто(
   |            &НачДата,
   |            &КонДата,
   |            СчетДт В ИЕРАРХИИ (&СчетаЗатрат) И СчетКт В ИЕРАРХИИ (&КорСчетаЗапроса1) И Активность = ИСТИНА
   |       )
   |    КАК Запрос1
   | ГДЕ (ВЫБОР
   |       КОГДА Запрос1.СчетДт В ИЕРАРХИИ (&Сч25) ИЛИ Запрос1.СчетДт В ИЕРАРХИИ (&Сч26)
   |       ТОГДА Запрос1.СубконтоДт2
   |       ИНАЧЕ Запрос1.СубконтоДт3
   |    КОНЕЦ).КОД В (&СписокКодов)
   |

//Пишет синтаксическая ошибка, где то не хватает символа ")", но я уже всё перепробовал

если вставлять отбор по коду в конце запроса - то вообще вываливается сообщение о том, что нельзя использовать больше 255 таблиц...

Не могли бы Вы уточнить куда именно вставить секцию ГДЕ?
17 wishma
 
25.03.13
12:16
насчёт массива ссылок - мне бы хотябы через коды сделать, и то буду рад очень сильно:) через массив ссылок сделаю самостоятельно, освоить бы что сейчас не так...
18 wishma
 
26.03.13
09:14
вообщем разобрался с сабжем
сделал не через запрос, а через СписокЗначений (завёл список, поставил в форме выбора Статья затрат = СЗ)
но теперь другая проблема.
СЗ создал, добавил данные, как указать ему что эти данные - это параметры справочника СтатьиЗатрат?
потому как сейчас отчёт работает, но не выводит значения в итоге, подозреваю потому что тип данных в СЗ не соответствует типу данных СтатьиЗатрат
19 wishma
 
26.03.13
09:42
спрошу проще - как в СписокЗначений добавить записи из Справочника? чтобы была связь по типу, видимо...
Есть два вида языков, одни постоянно ругают, а вторыми никто не пользуется.