Рекомендую: Фриланс-биржа | Кэшбэк-сервис | Интернет-бухгалтерия

Запись в регистр сведений 1С

Создание в реестре дополнительной записи
Внесение записей в регистр осуществляется при помощи менеджера записи. Используемый набор команд предполагает:

// Создаем менеджер записи

СоздатьКурсыВалют = РегистрыСведений.КурсыВалют.СоздатьМенеджерЗаписи();

// Устанавливаем измерения, ресурсы и устанавливаем период записи

СоздатьКурсыВалют.Валюта = СсылкаВалюта;

СоздатьКурсыВалют.Курс = Курс;

СоздатьКурсыВалют.Кратность = 1;

СоздатьКурсыВалют.Период = ТекущаяДата();

//Записываем получившуюся запись с замещением (если уже есть такая запись с такими измерениями и периодом)

СоздатьКурсыВалют.Записать(Истина);

При выполнении данной команды для выбранного раздела происходит добавление новой записи или обновление существующей в случае наличия у нее идентичных ключевых полей.

Создание сразу нескольких записей
При необходимости включения в реестр нескольких записей, используется набор записей:

//Создаем набор записей

НаборКурсыВалют = РегистрыСведений.КурсыВалют.СоздатьНаборЗаписей();

//Устанавливаем отбор по измерению

НаборКурсыВалют.Отбор.Валюта.Установить(СсылкаВалюта);

//Делаем цикл по таблице с курсами и добавляем записи

Для Каждого Строка Из ТаблицаКурсов Цикл

НоваяЗаписьКурс = НаборКурсыВалют.Добавить();

НоваяЗаписьКурс.Валюта = Строка.Валюта;

НоваяЗаписьКурс.Курс = Строка.Курс;

НоваяЗаписьКурс.Кратность = 1;

КонецЦикла;

НаборКурсыВалют.Записать();

После выполнения данной команды в регистре все записи с указанными параметрами будут замещены новыми.

Изменение записей с отбором
В случае, если в уже существующие строки необходимо внести корректировки, применяется следующий набор команд:

НаборКурсыВалют = РегистрыСведений.КонтактнаяИнформация.СоздатьНаборЗаписей();

НаборКурсыВалют.Отбор.Валюта.Установить(СсылкаВалюта);

//Прочитаем записи по отбору

НаборКурсыВалют.Прочитать();

Для Каждого ЗаписьНабора из НаборКурсыВалют Цикл

ЗаписьНабора.Курс = НовыйКурс;

КонецЦикла;

НаборКурсыВалют.Записать();

В результате выполнения команды произойдет изменение значений, первоначально внесенных в строку.

If you liked my post, feel free to subscribe to my rss feeds