15.12.2022 Игорь Борисенко 14870
Запись в регистр сведений в 1С 8.3

Содержание:

1.      Свойства регистров сведений, влияющие на указание их ключа при записи в режиме конфигурации 1С

2.      Объект встроенного языка программирования 1С для записи регистров сведений в 1С 8.3  

 

1.      Свойства регистров сведений, влияющие на указание их ключа при записи в режиме конфигурации 1С


Регистры сведений – удобный механизм хранения различной информации (ресурсов) в сопоставлении с какими-то наборами 1С ключевых полей (измерений – или «ключами записей»). Одному (уникальному) набору ключа может соответствовать только один набор ресурсов, что отличает их, например, от справочников, которые в принципе могут иметь одинаковые значения ключевых полей (код, наименование и т.д.). Если в 1С 8 регистр сведений периодический, то уникальность набора измерений расширяется еще и в разрезе периода – т.е. ключ записи регистра составляет уникальный набор измерений плюс значение периода записи. Кроме того, регистры сведений, в отличие от тех же справочников, обладают большими возможностями по параллельной работе с СУБД (операции записи/чтения), т.к. архитектура их таблиц в СУБД позволяет производить более тонкие блокировки.


Рассмотрим, какие бывают особенности записи регистров сведений 1С 8.3 программно.


К таковым относятся:

·        Режим записи 1С

-   Независимый

-   Подчинение регистратору

·        Периодичность

-   Непериодический

-   Периодический: в переделах секунды, дня, месяца, квартала или года; если регистр сведений подчиненный регистратору, то к вариантам периодичности добавляется еще и «по позиции регистратора»


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


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


Если регистр «подчинен регистратору», то среди ключевых полей появляется обязательное для заполнения поле «Регистратор». Запись таки регистров ведется, как правило, в процедурах обработки проведения документов – но это не обязательно – важно, чтобы было заполнено поле «Регистратор». Интересно, что в качестве регистратора может выступать не только ссылка на проводимый документ, но и ссылка на любой другой документ допустимого типа – т.е. текущий проводимый документ может формировать по регистру сведений движения для другого документа.


Если регистр периодический, то среди 1С ключевых полей появляется обязательное для заполнения поле «Период». При передаче значения в этой поле оно (значение) всегда преобразуется к «началу периода» выбранного для регистра варианта периодичности: например, если периодичность регистра «В пределах месяца», а мы отправляем в поле «Период» значение 09.10.2022 19:29:35, то в этом поле «Период» будет зафиксировано значение 01.10.2022 0:00:00 – и именно оно будет участвовать в запросах. Для вариантов периодичности «По позиции регистратора» и «В пределах секунды» эти преобразования не столь очевидны, но, тем не менее, о разнице между «позицией» и «секундой» помнить нужно.


Для периодического регистра 1С подчиненного регистратору требуется самая полная форма заполнения ключа: помимо обязательных измерений следует заполнять и «Период» и «Регистратор».  


2.      Объект встроенного языка программирования 1С для записи регистров сведений в 1С 8.3


В 1С 8 регистр сведений можно заполнять (записывать) с помощью двух объектов:

·        РегистрСведенийМенеджерЗаписи

·        РегистрСведенийНаборЗаписей


С точки зрения производительности важно понимать, что когда мы используем менеджер записи 1С, то каждая запись отправляется в СУБД отдельным запросом (например, в цикле), в то время, как в 1С набор записей регистра сведений за одно обращение к СУБД можно записать сразу много записей.


Также следует помнить, что в 1С 8 регистр сведений по одному ключу может хранить только один набор ресурсов, и если вы попытаетесь добавить запись с уже существующим набором 1С ключевых полей, то в общем случае получите ошибку «запись с такими ключевыми полями уже существует». Для управления такой ситуацией в команде «Записать» есть параметр «Замещать» (как у менеджера записи, так и у набора записей). При «Замещать» = Истина мы перепишем значения существующих ключей и уникальность будет сохранена.


Еще одна особенность наборов записей: он предоставляет разработчику возможность работы с «событиями», такими как «ОбработкаЗаполнения», «ПередЗаписью», «ПриЗаписи» и другими (см. описание встроенного языка), что может быть полезно при решении многих задач.

 

Мы рассмотрели особенности регистров, которые влияет на их запись. Конкретные пр

имеры программного кода 1С по записи регистров можно легко найти в документации и на просторах интернета.


Специалист компании "Кодерлайн"

Игорь Борисенко


Наши проекты

ФГУП «Почта России»
ФГУП «Почта России»

Отрасль:
Почта, доставка

Внедренное типовое решение:
1С:Управление торговлей

- Оформление заказов поставщикам
- Оформление заказов покупателей
- Упр...

Автоматизация системы учета продаж газа на базе «1С:ERP Управление предприятием 2.0»
ООО «Эйр Продактс Газ»

Отрасль:
Производство промышленных газов

Внедренное типовое решение:
1С:ERP Управление предприятием 2.0

- Расчеты с контрагентами;
- Производственные операции;
- Управление скла...

ООО «ДАФ Тракс Рус» (DAF Trucks Rus)
ООО «ДАФ Тракс Рус» (DAF Trucks Rus)

Отрасль:
Машиностроение

Внедренное типовое решение:
«1С:Управление корпоративными финансами»

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

Внедрение блоков в 1С:Комплексная автоматизация 8
ООО «Больцен Рус»

Отрасль:
Оптовая торговля

Внедренное типовое решение:
1С:Комплексная автоматизация

- Оперативный учет...

ООО "СЖД"
ООО "СЖД"

Отрасль:
Торговля, склад, логистика, транспорт

Внедренное типовое решение:
1С:Бухгалтерия 8 ПРОФ

Расчет зарплаты
Подбор кадров
Кадровый учет
Анализ кадрового состава...

ООО "РУКАРД-АУРА"
ООО "РУКАРД-АУРА"

Отрасль:
Профессиональные услуги

Внедренное типовое решение:
1С:Комплексная автоматизация

- Налоговый учет;...

Внедрение 1С:Управление торговлей в оптово-розничной компании «Ална-Байк»
ИП Титов Виктор Сергеевич «Ална-Байк»

Отрасль:
Торговля

Внедренное типовое решение:
1С:Управление торговлей

- Управление складами;
- Управление заказами поставщиков;
- Управление зак...

Автоматизации бизнес-процессов учета и планирования на базе «1С:ERP Управление предприятием 2.0»
ООО «Буровая сервисная компания «ГРАНД»

Отрасль:
Нефтесервис

Внедренное типовое решение:
1С:ERP Управление предприятием 2.0

- Создание полноценной управленческой системы взамен существующих
- Внедр...

Автоматизация торгового учета на базе "1С:Управление торговлей"
ООО «ТЕЛЕВЕС РУСС»

Отрасль:
Торговля

Внедренное типовое решение:
1С:Управление торговлей

- Управление складскими запасами;
- Оформление заказов покупателей;
- Пла...

ООО «Лаборатория успеха»
ООО «Лаборатория успеха»

Отрасль:
Общественное и плановое питание, гостиничный бизнес, туризм

Внедренное типовое решение:
1С:Зарплата и управление персоналом 8. КОРП

Кадровый учет;
Расчет зарплаты;...

АО «РЭП Холдинг»
АО «РЭП Холдинг»

Отрасль:
Энергомашиностроительный холдинг

Внедренное типовое решение:
«1С: Управление производственным предприятием» и «1С:Консолидация ПРОФ»

- Функциональный блок «Консолидированная отчетность РСБУ» - разработка час...

ООО "НЦКТ"
ООО "НЦКТ"

Отрасль:
Профессиональные услуги

Внедренное типовое решение:
1С:Бухгалтерия 8 ПРОФ

Производственные операции
Автоматизация бизнес-процессов...

Наши соц. сети

Telegram-канал «Koderline 1С» Группа в Вконтакте «Кодерлайн КОРП» Rutube

Остались вопросы - обратитесь к нам!

Впишите свои Имя и Телефон, чтобы мы ответили на все интересующие Вас вопросы.
ФИО*
E-mail*
Телефон*
Сообщение