Имя: Пароль:
1C
 
Не могу удалить запись из регистра сведений.
0 Босечка
 
13.07.15
11:21
НаборЗап = РегистрыСведений.ТоварыВОборудовании.СоздатьНаборЗаписей();
НаборЗап.Отбор.Номенклатура.Установить(ВыбНом);
НаборЗап.Прочитать();
номерЗаписиНабора=НаборЗап.Количество();
НаборЗап.Удалить(номерЗаписиНабора);

Выдает ошибку


{Форма.Форма.Форма(8)}: Ошибка при вызове метода контекста (Удалить)
НаборЗап.Удалить(номерЗаписиНабора);
по причине:
Значение индекса выходит за границы диапазона
1 ale-sarin
 
13.07.15
11:22
Количество - 1
2 Ненавижу 1С
 
гуру
13.07.15
11:22
потому что если записей N, то их индексы лежат в диапазоне 0..(N-1)
3 DTXqueque
 
13.07.15
11:22
номерЗаписиНабора=НаборЗап.Количество()-1;
4 ale-sarin
 
13.07.15
11:23
И, Вам точно нужно последнюю запись удалить?
5 Отладчик
 
13.07.15
11:24
ТИИ пробовали?
6 Босечка
 
13.07.15
11:26
последнюю и единственную .Количество =1
7 lera01
 
13.07.15
11:29
Если "и единственную", можно создать набор и не использовать Прочитать(), а сразу Записать();
8 Босечка
 
13.07.15
11:32
понятно
9 ЧеловекДуши
 
13.07.15
12:09
Лучше писать

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