Ззапрос с условием выбор когда... тогда

1. fugu 23 14.01.22 10:32 Сейчас в теме
Добрый день.

Часть запроса-
ВЫБОР
		КОГДА ТИПЗНАЧЕНИЯ(&Строения) = ТИП(Справочник.ГруппыСтроений)
			ТОГДА  ГруппаСтроений = &Строения
		ИНАЧЕ Строение  В (&Строения)
КОНЕЦ


ошибка:
по причине:
Неверные параметры в операции сравнения. Нельзя сравнивать поля
неограниченной длины и поля несовместимых типов.
ТОГДА ГруппаСтроений <<?>>= &Строения


Передается или справочник группа строений, или массив строений.
Почему ругается на указанную строчку не понятно. Не должно вообще туда заходить, если массив.

Подскажите, где бокопорю?
По теме из базы знаний
Вознаграждение за ответ
Показать полностью
Найденные решения
5. PlatonStepan 38 14.01.22 10:46 Сейчас в теме +1 $m
К чему проверка на тип?
Вроде здесь достаточно условия :
ГруппаСтроений В (&Строения)
        ИЛИ Строение  В (&Строения)


Ошибка происходит потому что преобразователь запроса ожидает одинаковое обращение к параметру &Строение, а в вашем запросе вы к нему и как к коллекции обращаетесь и как к одиночному значению
user1619761; SlavaKron; +2 Ответить
Остальные ответы
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
2. user1619761 14.01.22 10:35 Сейчас в теме
(1)
ТИП(Справочник.ГруппыСтроений)
попробуйте добавить проверку на пустую ссылку.
3. VZyryanov 14.01.22 10:37 Сейчас в теме
 (&Строения ССЫЛКА Справочник.ГруппыСтроений И  ГруппаСтроений = &Строения)
ИЛИ Строение  В (&Строения))
4. SlavaKron 14.01.22 10:39 Сейчас в теме
ВЫБОР
        КОГДА ТИПЗНАЧЕНИЯ(&Строения) = ТИП(Справочник.ГруппыСтроений)
            ТОГДА  ГруппаСтроений В (&Строения)
        ИНАЧЕ Строение  В (&Строения)
КОНЕЦ
5. PlatonStepan 38 14.01.22 10:46 Сейчас в теме +1 $m
К чему проверка на тип?
Вроде здесь достаточно условия :
ГруппаСтроений В (&Строения)
        ИЛИ Строение  В (&Строения)


Ошибка происходит потому что преобразователь запроса ожидает одинаковое обращение к параметру &Строение, а в вашем запросе вы к нему и как к коллекции обращаетесь и как к одиночному значению
user1619761; SlavaKron; +2 Ответить
6. fugu 23 14.01.22 11:04 Сейчас в теме
(2) поясните, зачем проверка на пустую ссылку и куда добавить?

(3) Не корректное условие, по типу я определяю, если справочник - тогда сравнить по группе строений, если массив - значит все строения массива.

(4) Вы предлагает все добавить в массив, просто разные массивы, но как определять, какой тип массива?) Тогда не корректно условие по ТИПЗначение

(5) мне нужен отбор или по группе или по списку строений - это разные справочники.
10 строений может входить в группу, а в списке может быть 5 строений. и я определяю почем делать отбор.
9. VZyryanov 14.01.22 11:11 Сейчас в теме
(6)
&Строения ССЫЛКА Справочник.ГруппыСтроений

это тоже самое, что
ТИПЗНАЧЕНИЯ(&Строения) = ТИП(Справочник.ГруппыСтроений)

Только короче.
10. PlatonStepan 38 14.01.22 11:18 Сейчас в теме
(6) У вас всё равно один параметр!
Если вы хотите усложнить условие, то расширьте логику на проверку 2х параметров:
&ГруппыСтроений и &Строения
7. Romeo_1c_programmer 29 14.01.22 11:05 Сейчас в теме
Типы в 1С 8.3 это классификация данных по их виду (число, строка, дата, документ, справочник и т.п.). Массив в данном случае не подойдет
8. Romeo_1c_programmer 29 14.01.22 11:09 Сейчас в теме
(7) будет работать как предложил (5)
11. coollerinc 185 14.01.22 11:22 Сейчас в теме
Просто напишите Строение В (&Строения) и это будет работать, если строение будет Массивом или Ссылкой
PlatonStepan; +1 Ответить
12. PlatonStepan 38 14.01.22 11:28 Сейчас в теме
(11) да, точно! В (5), забыл это упомянуть.

И ещё если нужно подгруппы шерстить, то условие должно быть "...В ИЕРАРХИИ ..."
13. fugu 23 14.01.22 11:30 Сейчас в теме
(9) ошибку выдает - Несовместимые типы "ССЫЛКА"
КОГДА &Строения <<?>>ССЫЛКА Справочник.ГруппыСтроений
14. VZyryanov 14.01.22 11:57 Сейчас в теме
(13) Был не прав, извините.
ССЫЛКА не работает не только, когда параметр слева массив, но и когда параметр элемент другого справочника.
15. fugu 23 14.01.22 12:42 Сейчас в теме
Оставьте свое сообщение
Вакансии
1С аналитик
Москва
зарплата от 210 000 руб.
Полный день

Руководитель направления 1С
Москва
зарплата от 350 000 руб.
Полный день

1С Программист
Москва
зарплата от 180 000 руб.
Полный день

Программист 1С
Москва
зарплата от 180 000 руб. до 220 000 руб.
Полный день

Аналитик 1С / Бизнес-аналитик
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)