1
0
mirror of https://github.com/Oxotka/TemplatesNewObject1C.git synced 2025-09-16 09:26:15 +02:00

Mock for info registry

This commit is contained in:
Арипов Никита
2023-11-08 17:09:53 +03:00
parent e7c7be429d
commit 8271d798f6

114
README.md
View File

@@ -32,12 +32,15 @@
- [Присоединенные файлы](#присоединенные-файлы)
- [Справочники](#справочники)
- [Регистры сведений](#регистры-сведений)
- [Регистры накопления](#регистры-накопления)
- [Основные свойства](#основные-свойства-1)
- [Подразделение организации](#подразделение-организации-1)
- [Командный интерфейс](#командный-интерфейс)
- [Работа в распределенной базе (РИБ)](#работа-в-распределенной-базе-риб)
- [Регистры накопления](#регистры-накопления)
- [Основные свойства](#основные-свойства-2)
- [Роли](#роли-1)
- [Дата запрета изменения](#дата-запрета-изменения-1)
- [Работа в модели сервиса](#работа-в-модели-сервиса)
- [Работа в распределенной базе (РИБ)](#работа-в-распределенной-базе-риб)
- [Работа в распределенной базе (РИБ)](#работа-в-распределенной-базе-риб-1)
# Константы
@@ -92,12 +95,15 @@
- [Присоединенные файлы](#присоединенные-файлы)
- [Справочники](#справочники)
- [Регистры сведений](#регистры-сведений)
- [Регистры накопления](#регистры-накопления)
- [Основные свойства](#основные-свойства-1)
- [Подразделение организации](#подразделение-организации-1)
- [Командный интерфейс](#командный-интерфейс)
- [Работа в распределенной базе (РИБ)](#работа-в-распределенной-базе-риб)
- [Регистры накопления](#регистры-накопления)
- [Основные свойства](#основные-свойства-2)
- [Роли](#роли-1)
- [Дата запрета изменения](#дата-запрета-изменения-1)
- [Работа в модели сервиса](#работа-в-модели-сервиса)
- [Работа в распределенной базе (РИБ)](#работа-в-распределенной-базе-риб)
- [Работа в распределенной базе (РИБ)](#работа-в-распределенной-базе-риб-1)
## Основные свойства
@@ -754,6 +760,87 @@
# Регистры сведений
## Основные свойства
1. **Имена, синонимы и представления** должны соответствовать стандартам:
- [Имена объектов метаданных в конфигурациях](https://its.1c.ru/db/v8std/content/550/hdoc)
- [Имя, синоним, комментарий](https://its.1c.ru/db/v8std/content/474/hdoc)
2. **Комментарий** - Не заполняется
3. **Представление записи** - В единственном числе
4. **Представление списка** - Во множественном числе. Представление списка не задается, если совпадает с синонимом.
5. **Свойства реквизитов регистра** - Под «реквизитами» в этом пункте понимаются измерения, ресурсы и собственно реквизиты регистра:
- **Значение заполнения** - Может быть задано заведомо известное значение по умолчанию, например: СтавкаНДС = НДС18
- **Заполнять из данных заполнения** - Да, если при создании новой записи независимого регистра сведений из формы списка с установленными отборами требуется заполнить реквизит значением отбора
- **Проверка заполнения** - Выдавать ошибку, если хотя бы в одном сценарии требуется обязательное заполнение реквизита. См. стандарты:
- [Подсказка и проверка заполнения](https://its.1c.ru/db/v8std/content/478/hdoc)
- [обработчике события модуля объекта ОбработкаПроверкиЗаполнения](https://its.1c.ru/db/v8std#content:463:hdoc)
- **Связи параметров выбора** - Заполняется, если значение реквизита зависит от значений других реквизитов |
- **Параметры выбора** - Заполняется, если значение ограничено заранее известными условиями отбора |
## Подразделение организации
Если в регистре есть измерение **ПодразделениеОрганизации**, который используется только в версии КОРП, регистр необходимо включить в подписку **УстановитьПустоеПодразделениеПередЗаписьюНабораЗаписей**
## Командный интерфейс
- В командный интерфейс включаются только независимые регистры сведений
- Регистры, подчиненные регистратору, в интерфейс не выводятся
- Регистр должен быть включен, как минимум, в одну подсистему с флагом «Включать в командный интерфейс».
- Видимость регистра в командном интерфейсе по умолчанию может быть выключена.
## Функциональные опции
Если регистр выводится в командный интерфейс и не принадлежит основной функциональности – необходимо включить его в состав нужных функциональных опций.Кроме того, при необходимости отдельные измерения, ресурсы и реквизиты регистра также могут быть включены в функциональные опции
## Роли
Набор ролей у регистра может отличаться в зависимости от его назначения.
Регистр, просматривать и редактировать который могут все пользователи, должен быть включен в следующие роли:
·       ДобавлениеИзменениеДанныхБухгалтерии
·       ПолныеПрава
·       ЧтениеДанныхБухгалтерии
| ДобавлениеИзменениеДанныхБухгалтерии | Все права, кроме: |
·       Управление итогами|
| ПолныеПрава | Все права |
|---|---|
| ЧтениеДанныхБухгалтерии | Права: Чтение, Просмотр |
·       Регистры, содержащие классификаторы или другие «поставляемые» данные, которые могут обновляться автоматически и в модели сервиса меняются только централизованно, включаются в следующие роли:
·       АдминистраторСистемы
·       ДобавлениеИзменениеДанныхБухгалтерии
·       ПолныеПрава
·       ЧтениеДанныхБухгалтерии
| АдминистраторСистемы | Все права |
|---|---|
| ДобавлениеИзменениеДанныхБухгалтерии | Права: Чтение, Просмотр |
| ПолныеПрава | Права: Чтение, Просмотр |
| ЧтениеДанныхБухгалтерии | Права: Чтение, Просмотр |
·       RLS устанавливается на регистры, у которых есть измерение или реквизит Организация.
·       Для регистров, участвующих в RLS, нужно дополнительно выполнить следующее: - Создать предопределенный элемент в справочнике ИдентификаторыОбъектовМетаданных с именем РегистрСведений%ИмяРегистра%, где %ИмяРегистра% - имя регистра, как оно задано в конфигураторе - Добавить его в переопределяемый модуль УправлениеДоступомПереопределяемый.ПриЗаполненииСписковСОграничениемДоступа - Добавить в модуль менеджера переопределяемый метод ПриЗаполненииОграниченияДоступа, в котором описать правила чтения и изменения для расчетной модели прав. - Добавить в определяемый тип ВладелецЗначенийКлючейДоступаНаборЗаписей РегистрСведенийНаборЗаписей.%ТипОбъекта% - В процедуре ПриЧтенииНаСервере формы элемента (если есть), добавить вставку кода:
·           // СтандартныеПодсистемы.УправлениеДоступом    Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.УправлениеДоступом") Тогда        МодульУправлениеДоступом = ОбщегоНазначения.ОбщийМодуль("УправлениеДоступом");        МодульУправлениеДоступом.ПриЧтенииНаСервере(ЭтотОбъект, ТекущийОбъект);       КонецЕсли;    // Конец СтандартныеПодсистемы.УправлениеДоступом
## Дата запрета изменения
Периодический регистр сведений необходимо включить:
- в подписку **ПроверитьДатуЗапретаИзмененияПередЗаписьюНабораЗаписей**
- в процедуру **ДатыЗапретаИзмененияБП.ЗаполнитьИсточникиДанныхДляПроверкиЗапретаИзменения**
Подробнее в документации БСП: [Даты запрета изменения](https://its.1c.ru/db/bsp301doc#content:785:hdoc)
## Работа в распределенной базе (РИБ)
1. Если изменения записей регистра должны автоматически синхронизироваться между узлами распределенной базы, регистр необходимо включить в состав всех обменов РИБ и в соответствующие подписки на события. При этом свойство Авторегистрация планов обмена необходимо установить в значение Запретить.
2. Регистр следует включить в подписки:
| План обмена | Подписки |
|---|---|
| АвтономнаяРабота | АвтономнаяРаботаРегистрацияНабора |
| Полный | ПолныйРегистрацияНабора |
| ПоОрганизации | ПоОрганизацииРегистрацияНабора |
# Регистры накопления
## Основные свойства
@@ -807,20 +894,13 @@
Подробнее в документации БСП: [Даты запрета изменения](https://its.1c.ru/db/bsp301doc#content:785:hdoc)
## Работа в модели сервиса
При необходимости следует настроить вхождение регистра в состав общих реквизитов. Как правило, менять вхождение «по умолчанию» не требуется.
·       ОбластьДанныхВспомогательныеДанные – Нет, Автоматически.
·       ОбластьДанныхОсновныеДанные – Да, Автоматически.
Новый регистр нужно обязательно включить в план обмена МиграцияПриложений с отключенной авторегистрацией.
## Работа в распределенной базе (РИБ)
Если изменения записей регистра должны автоматически синхронизироваться между узлами распределенной базы, регистр необходимо включить в состав всех обменов РИБ и в соответствующие подписки на события.При этом свойство Авторегистрация планов обмена необходимо установить в значение Запретить.
1. Если изменения записей регистра должны автоматически синхронизироваться между узлами распределенной базы, регистр необходимо включить в состав всех обменов РИБ и в соответствующие подписки на события. При этом свойство Авторегистрация планов обмена необходимо установить в значение Запретить.
2. Регистр накопления следует включить в подписки:
| План обмена | Подписки |
|---|---|
| АвтономнаяРабота | АвтономнаяРаботаРегистрацияНабора |
| Полный | ПолныйРегистрацияНабора |
| ПоОрганизации | ПоОрганизацииРегистрацияНабора |
О включении регистра в планы обмена необходимо сообщить ответственным. Ответственные при необходимости редактируют правила регистрации объектов в обмене. Список ответственных см. в разделе «Новый документ – Работа в распределенной базе (РИБ)».
| ПоОрганизации | ПоОрганизацииРегистрацияНабора |