Регистры накоплений, сведений¶
Манипулирование записями регистров без использования регистратора¶
https://its.1c.ru/db/metod8dev/content/2719/hdoc
Перезапись ресурсов регистра сведений¶
Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | КонтактнаяИнформация.Объект, | КонтактнаяИнформация.Тип, | КонтактнаяИнформация.Вид, | КонтактнаяИнформация.Поле10, | КонтактнаяИнформация.Представление |ИЗ | РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация |ГДЕ | КонтактнаяИнформация.Вид = &ВидКИ"; Запрос.УстановитьПараметр("ВидКИ", ВидКИ); РезультатЗапроса = Запрос.Выполнить(); ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать(); Пока ВыборкаДетальныеЗаписи.Следующий() Цикл ТелТекст = сокрЛП(ВыборкаДетальныеЗаписи.Представление); Поле10 = ВернутьТолькоЦифры(ТелТекст); Если СтрДлина(Поле10)=11 и (Лев(Поле10, 1)= "8" или Лев(Поле10, 1)= "7") тогда Поле10 = Прав(Поле10, 10); КонецЕсли; сообщить(ТелТекст + " / " + поле10); МенеджерЗаписи = РегистрыСведений.КонтактнаяИнформация.СоздатьМенеджерЗаписи(); МенеджерЗаписи.Объект = ВыборкаДетальныеЗаписи.Объект; МенеджерЗаписи.Тип = ВыборкаДетальныеЗаписи.Тип; МенеджерЗаписи.Вид = ВыборкаДетальныеЗаписи.Вид; МенеджерЗаписи.Прочитать(); Если МенеджерЗаписи.Выбран() Тогда МенеджерЗаписи.Поле10 = Поле10; Попытка МенеджерЗаписи.Записать(); Исключение ТекстСообщения = ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()); ЗаписьЖурналаРегистрации(НСтр("ru = 'Обновление информационной базы'"), УровеньЖурналаРегистрации.Ошибка,,, ТекстСообщения); КонецПопытки; КонецЕсли; ОбработкаПрерыванияПользователя(); КонецЦикла;