Имя: Пароль:
1C
 
Не получается создать набор записей в РС с одним измерением
,
0 Dobriy
 
11.03.23
19:19
Всем привет, есть РС периодический, независимый, с одним измерением типа УникальныйИдентификатор (имя ГУИД), пытаюсь удалить записи и добавить новые, выдает ошибку, ругаясь на отбор:


        МассивГУИДов = Объект.Товары.Выгрузить(,"ГУИД");
        
        //Удаляем
        НаборСтатусНоменклатуры = РегистрыСведений.СтатусНоменклатуры.СоздатьНаборЗаписей();
        НаборСтатусНоменклатуры.Отбор.ГУИД.Установить(МассивГУИДов);
        НаборСтатусНоменклатуры.Записать();
        
        //добавляем
        Для Каждого СтрокаНоменклатуры Из Объект.Товары Цикл
            НоваяЗапись = НаборСтатусНоменклатуры.Добавить();
            НоваяЗапись.ДокументПредприятия = Объект.Ссылка;
            НоваяЗапись.СтатусНоменклатуры  = СтатусНоменклатуры;
            НоваяЗапись.ГУИД   = СтрокаНоменклатуры.ГУИД;
            НоваяЗапись.Период = Объект.ДатаСоздания;
        КонецЦикла;  
        НаборСтатусНоменклатуры.Записать();

Пишет ошибку не соответствия отбору, подскажите, пож-ста, в чем ошибка?
1 Dobriy
 
11.03.23
19:22
после удаления добавляются те же самые гуиды
2 Beduin
 
11.03.23
19:24
Прочитать
3 Beduin
 
11.03.23
19:26
СтрокаНоменклатуры.ГУИД входит в МассивГУИДов?
4 Dobriy
 
11.03.23
19:27
(3) угу
5 RomanYS
 
11.03.23
19:29
(0) Отбор по списку не работает для набора. Даже бы если он работал, то так он не устанавливается НаборСтатусНоменклатуры.Отбор.ГУИД.Установить(МассивГУИДов);
6 RomanYS
 
11.03.23
19:29
(2) мимо
7 RomanYS
 
11.03.23
19:30
(0) посмотри в отладчике какой на самом деле установился отбор после
НаборСтатусНоменклатуры.Отбор.ГУИД.Установить(МассивГУИДов);
Подозреваю, что отбор по пустому ГУИДу
8 Dobriy
 
11.03.23
19:34
(7) в яблочко
9 Dobriy
 
11.03.23
19:38
В синтаксисе написано, что "Важно! Отбор может устанавливаться только на равенство." походу дело скопом все сразу сделать не получится, перебирать в цикле...
10 Chameleon1980
 
12.03.23
09:04
МассивГУИДов = Объект.Товары.Выгрузить(,"ГУИД");

а тут разве массив получится?
может еще добавить .ВыгрузитьКолонку() ?
Закон Брукера: Даже маленькая практика стоит большой теории.