НаборЗаписей.Прочитать();
Если НаборЗаписей.Количество()>0 Тогда
Для каждого ЗаписьНабораЗаписей Из НаборЗаписей Цикл
ВыгрузитьПоПравилу(ЗаписьНабораЗаписей,,,, "Штрихкоды");
КонецЦикла;
КонецЕсли;
КонецЕсли;
В таком случае новые записи штрих-кодов появляются но и старые остаются.
А добавил в правило "ПриЗагрузке" текст
Если ОбъектНайден Тогда
Выполнить(Алгоритмы.УдалитьШтрихКоды);
КонецЕсли;
Код алгоритма:
Если Не Объект.ЭтоГруппа Тогда
НаборЗаписей = РегистрыСведений.Штрихкоды.СоздатьНаборЗаписей();
НаборЗаписей.Прочитать();
Если НаборЗаписей.Количество()>0 Тогда
Сообщить(НаборЗаписей.Количество());
Для каждого ЗаписьНабораЗаписей Из НаборЗаписей Цикл
НаборЗаписей.Удалить(ЗаписьНабораЗаписей);
КонецЦикла;
НаборЗаписей.Записать();
НаборЗаписей.Очистить();
КонецЕсли;
КонецЕсли;
Пробовал по разному, и перебивал в цикле все записи регистра с их последующим удалением, и записывал набор записей (по умолчанию должен заместить), пробовал удалить с помощью Очистить() - все равно не удаляет. А на Записать() так и вовсе при загрузке через УниверсальныйОбменДанными ошибка вылетает.
Может кто подскажет как мне эти записи забороть? :)
1) Про ПередЗагрузков в справке по обработчикам прочитал, что:
"Событие выполняется перед загрузкой объекта. Возможен отказ от загрузки, например, в случае невыполнения каких-либо условий. Загружаемый в БД объект еще не инициализирован" и подумал что не подойдет, т.к. у кого я буду регистр чистить если владелец еще не определен?