Создание записи в регистре сведений без привязки к документу в 1С 8.3



&НаСервере

Процедура СозданиеЗаписиБезПривязкиКДокументу()



// Создание записи в регистре сведений без привязки к документу можно только для регистров,

// в свойствах которых установлен режим записи "Независимый".



// Создание записи - для единичных записей лучше использовать "Менеджер Записей"

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

НоваяЗапись.Период = '20200401';

НоваяЗапись.Валюта = Справочники.Валюты.НайтиПоНаименованию("Евро");

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

НоваяЗапись.Записать(Истина); // Замещение - если уже есть запись с такими же измерениями и таким же периодом





// Поиск, изменение и удаление созданной запись на дату

Выборка = РегистрыСведений.КурсВалют.Выбрать('20200401', '20200401');

Если Выборка.Следующий() Тогда



Запись = Выборка.ПолучитьМенеджерЗаписи();

Запись.Прочитать();

Запись.Курс = 2.8020;// Изменение курса Евро

Запись.Записать(Истина);// Запись курса Евро

Запись.Удалить();// Удаление курса Евро



КонецЕсли;



// Для группового изменения записей лучше использовать "Набор Записей"

Евро = Справочники.Валюты.НайтиПоНаименованию("Евро");



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

НаборЗаписей.Отбор.Валюта.Установить(Евро);



Запись_1 = НаборЗаписей.Добавить();

Запись_1.Период = '20200401'; // 01 апреля 2020 г.

Запись_1.Валюта = Евро;

Запись_1.Курс = 2.8446;



Запись_2 = НаборЗаписей.Добавить();

Запись_2.Период = '20200402'; // 02 апреля 2020 г.

Запись_2.Валюта = Евро;

Запись_2.Курс = 2.8478;



Запись_3 = НаборЗаписей.Добавить();

Запись_3.Период = '20200403'; // 03 апреля 2020 г.

Запись_3.Валюта = Евро;

Запись_3.Курс = 2.8320;



Запись_4 = НаборЗаписей.Добавить();

Запись_4.Период = '20200404'; // 04 апреля 2020 г.

Запись_4.Валюта = Евро;

Запись_4.Курс = 2.7943;



Запись_5 = НаборЗаписей.Добавить();

Запись_5.Период = '20200405'; // 05 апреля 2020 г.

Запись_5.Валюта = Евро;

Запись_5.Курс = 2.7797;





// Запись сразу всего набора

НаборЗаписей.Записать(Истина); // Замещение - если уже есть запись с такими же измерениями и таким же периодом



КонецПроцедуры



✍️ @odin1C_rus