kb-personal/src/content/docs/knowledge-base/Общие/(БСП) Подключение к подсистемам/Подключение к подсистеме Дата запрета изменений.md
wakadakawaka ec919108a4 rebase
2025-08-19 21:01:32 +05:00

58 lines
4.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
title: Подключение к подсистеме Дата запрета изменений
slug: общие-бсп-подключение-к-подсистемам/подключение-к-подсистеме-дата-запрета-изменений
---
# Общие модули
В процедуре `ЗаполнитьИсточникиДанныхДляПроверкиЗапретаИзменения` общего модуля `ДатыЗапретаИзмененияПереопределяемый` дополнить:
```bsl
// Позволяет задать таблицы и поля объектов для проверки запрета изменения данных.
// Для добавления нового источника в ИсточникиДанных см. ДатыЗапретаИзменения.ДобавитьСтроку.
//
// Вызывается из процедуры ИзменениеЗапрещено общего модуля ДатыЗапретаИзменения,
// используемой в подписке на событие ПередЗаписью объекта для проверки наличия
// запретов и отказа от изменений запрещенного объекта.
//
// Параметры:
// ИсточникиДанных - ТаблицаЗначений:
// * Таблица - Строка - полное имя объекта метаданных,
// например Метаданные.Документы.ПриходнаяНакладная.ПолноеИмя().
// * ПолеДаты - Строка - имя реквизита объекта или табличной части,
// например: "Дата", "Товары.ДатаОтгрузки".
// * Раздел - Строка - имя раздела дат запрета, указанного в
// процедуре ПриЗаполненииРазделовДатЗапретаИзменения (см. выше).
// * ПолеОбъекта - Строка - имя реквизита объекта или реквизита табличной части,
// например: "Организация", "Товары.Склад".
//
Процедура ЗаполнитьИсточникиДанныхДляПроверкиЗапретаИзменения(ИсточникиДанных)
ДатыЗапретаИзменения.ДобавитьСтроку(ИсточникиДанных,
Метаданные.Документы.<МойДокумент>.ПолноеИмя(),
"Дата");
КонецПроцедуры
```
# Настройка формы
В обработчике `ПриЧтенииНаСервере`
```bsl
&НаСервере
Процедура ПриЧтенииНаСервере(ТекущийОбъект)
//СтандартныеПодсистемы.ДатыЗапретаИзменения
ДатыЗапретаИзменения.ОбъектПриЧтенииНаСервере(ЭтотОбъект, ТекущийОбъект);
//Конец СтандартныеПодсистемы.ДатыЗапретаИзменения
КонецПроцедуры
```
## Запрет создания и удаления объектов в закрытом периоде
### Добавление
дополняем подписки на события
`ПроверитьДатуЗапретаИзмененияПередЗаписьюДокумента` //Для документов
`ПроверитьДатуЗапретаИзмененияПередЗаписьюНабораЗаписей` //Для регистров
- `ИСТОЧНИК` — новые объекты, которые нужно проверять
- `Событие` — ПередЗаписью
- `Обработчик` — Процедура общего модуля `ДатыЗапретаИзменения.ПроверитьДатуЗапретаИзмененияПередЗаписьюДокумента` для документов или `ДатыЗапретаИзменения.ПроверитьДатуЗапретаИзмененияПередЗаписьюНабораЗаписей` для регистров
### Удаление
дополняем подписки на события
`ПроверитьДатуЗапретаИзмененияПередУдалением`
- `ИСТОЧНИК` — новые объекты, которые нужно проверять
- `Событие` — ПередУдалением
- `Обработчик` — Процедура общего модуля `ДатыЗапретаИзменения.ПроверитьДатуЗапретаИзмененияПередУдалением`