Skip to main content

Регистры накопления

Основные свойства

  1. Имена, синонимы и представления должны соответствовать стандартам:
  1. Комментарий - Не заполняется
  2. Представление списка - Во множественном числе. Представление списка не задается, если совпадает с синонимом.

Измерения

  1. Устанавливать галку “Запрет незаполненных значений“ у измерений. Нужно установить галку в измерениях у которых не может быть пустого значения (например, у измерения характеристика ставить не надо).

  2. Порядок измерений должен быть таким, чтобы наиболее часто используемые в условиях и соединениях измерения располагались первыми. Это обеспечивает эффективное индексирование, сокращает объем обрабатываемых данных и ускоряет выполнение запросов. Индексы таблиц базы данных.

БСП

По необходимости может быть подключен к следующему функционалу:

  1. Дата запрета - Создать подписку на событие для регистров рздПроверитьДатуЗапретаИзмененияПередЗаписьюНабораЗаписей на метод ДатыЗапретаИзменения.ПроверитьДатуЗапретаИзмененияПередЗаписьюНабораЗаписей - В методе рздМодификацияКонфигурацииСервер.ЗаполнитьИсточникиДанныхДляПроверкиЗапретаИзменения реализовать заполнение для нового документа.

Роли

На объект должны быть созданы роли согласно регламенту “Роли“. Добавлять только роль на чтение. т.к регистры подчинены документу.

В зависимости от проекта и требований по RLS выполнить необходимые действия: Устанавливается на регистры, у которых есть измерение или реквизит Организация. Для регистров, участвующих в RLS, нужно дополнительно выполнить следующее:

  • Создать предопределенный элемент в справочнике ИдентификаторыОбъектовМетаданных с именем РегистрНакопления%ИмяРегистра%, где %ИмяРегистра% - имя регистра, как оно задано в конфигураторе
  • Добавить его в переопределяемый модуль УправлениеДоступомПереопределяемый.ПриЗаполненииСписковСОграничениемДоступа
  • Добавить в модуль менеджера переопределяемый метод ПриЗаполненииОграниченияДоступа, в котором описать правила чтения и изменения для расчетной модели прав.
  • Добавить в определяемый тип ВладелецЗначенийКлючейДоступаНаборЗаписей РегистрНакопленияНаборЗаписей.%ТипОбъекта%
  • В процедуре ПриЧтенииНаСервере формы элемента (если есть), добавить вставку кода:
// СтандартныеПодсистемы.УправлениеДоступом
Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.УправлениеДоступом") Тогда
МодульУправлениеДоступом = ОбщегоНазначения.ОбщийМодуль("УправлениеДоступом");
МодульУправлениеДоступом.ПриЧтенииНаСервере(ЭтотОбъект, ТекущийОбъект);
КонецЕсли;
// Конец СтандартныеПодсистемы.УправлениеДоступом

Подсистемы

Новый объект должен быть размещен в служебную подсистему согласно регламенту “Подсистемы“. Если в ТР не прописано пользовательское размещение тогда объект добавляется только в служебную подсистему.