Имя: Пароль:
1C
1С v8
Отбор в таблице значений по списку значений
0 ONE1
 
27.07.22
17:04
Нужен отбор в таблице значений по колонке с типом - СписокЗначений. Пробовал в ТЗ.НайтиСтроки() передавать список значений, вроде как нельзя.
Пробовал запрос:

Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ
    |*
        |ПОМЕСТИТЬ ВТаблица
    |ИЗ
    |&Таблица КАК Таблица
        |ГДЕ Таблица.ТорговыйПредставитель В (СписокПредставителей)
    |;
    |///////////////////
    |ВЫБРАТЬ
        |*
    |ИЗ
    |   ВТаблица КАК ВТаблица";

    Запрос.УстановитьПараметр("Таблица", ТЗ.Выгрузить());
    //Запрос.УстановитьПараметр("СписокП", СписокПредставителей);
    Результат = Запрос.Выполнить().Выгрузить();

Ругается: Неверные параметры в операции сравнения. Нельзя сравнивать поля неограниченной длины и поля несовместимых типов.
1 ONE1
 
27.07.22
17:04
памагите, может все проще(
2 mistеr
 
27.07.22
17:13
...или сложнее.

Ты сначала объясни что значит "отбор по списку значений".
3 TormozIT
 
гуру
27.07.22
17:17
Делай цикл по элемента списка и для каждого НайтиСтроки() вызывай, а потом объединяй полученные массивы.
4 ONE1
 
27.07.22
17:18
у таблицы значений есть колонка типа (СписокЗначений), там может быть: Пользователь1, Пользователь2. Мне нужно отбор делать по этой колонке. Я добавил реквизит с типом СписокЗначений и по заполнению этого реквизита должен происходить отбор (2)
5 RomanYS
 
27.07.22
17:19
(0) >>таблица значений по колонке с типом - СписокЗначений
Очень странная архитектура. И непонятно что тебе в итоге нужно: совпадение списка с эталонным или нлиие общих элементов
6 mistеr
 
27.07.22
17:19
(4) И как именно должны сравниваться два списка значений?
7 ONE1
 
27.07.22
17:22
(5) наличие общих элементов
8 ONE1
 
27.07.22
17:23
(6) я могу поменять тип колонки, но что-то не могу придумать на что, в колонке должен храниться список пользователей, по которым нужно делать отбор. Возможно использовать СписокЗначений неверное решение?
9 RomanYS
 
27.07.22
17:27
(8) Возможно использовать СписокЗначений неверное решение?
99%

Начни с начала: откуда эти списки возникли
10 ONE1
 
27.07.22
17:29
(9) я добавил свою колонку в таблицу значений и сам установил тип СписокЗначений, т.к. подумал, что в нем можно будет хранить пользователей, завис на отборе по такой колонке
11 mistеr
 
27.07.22
17:29
(7) Такого сравнения в платформе нет. Реализуй своей функцией.
12 RomanYS
 
27.07.22
17:32
(10) создай служебную таблицу для отбор с двумя колонками:
"Пользователь" и "Индекс строки исходной таблицы"
13 RomanYS
 
27.07.22
17:34
*(12) а ещё лучше соответствие массивов строк по пользователям
14 Йохохо
 
27.07.22
17:46
(10) может проще если отбор будет списком