kb-erp/src/content/docs/bsp/ЗащитаПерсональныхДанныхПереопределяемый.md
wakadakawaka 0caaa910d1 first
2025-04-25 21:40:35 +05:00

358 lines
26 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: bsp/защита-персональных-данных-переопределяемый
---
## ЗаполнитьСведенияОПерсональныхДанных
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">
<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>
```bsl
// Позволяет задать настройки для регистрации событий доступа к персональным данным.
//
// При расширении состава субъектов персональных данных следует иметь в виду, что регистрация событий для них
// не начнется автоматически (это отдельно настраивает администратор программы). Однако если необходимо управлять этим
// при переходе на новую версию программы, то следует реализовать обработчик обновления, вызывающий
// процедуру ЗащитаПерсональныхДанных.УстановитьИспользованиеСобытияДоступ.
//
// Параметры:
// ТаблицаСведений - ТаблицаЗначений:
// * Объект - Строка - полное имя объекта метаданных с персональными данными;
// * ПоляРегистрации - Строка - имена полей, значения которых выводятся в журнал событий доступа к персональным
// данным для идентификации субъекта персональных данных. Для ссылочных типов,
// как правило, это поле "Ссылка". Отдельные поля регистрации отделяются запятой,
// альтернативные - символом "|";
// * ПоляДоступа - Строка - имена полей доступа через запятую. Обращение (попытка доступа) к этим полям
// приводит к записи журнала;
// * ОбластьДанных - Строка - идентификатор категории данных.
//
// Пример:
// Сведения = ТаблицаСведений.Добавить();
// Сведения.Объект = "Справочник.ФизическиеЛица";
// Сведения.ПоляРегистрации = "Ссылка";
// Сведения.ПоляДоступа = "Наименование";
// Сведения.ОбластьДанных = "ФИО";
//
// Сведения = ТаблицаСведений.Добавить();
// Сведения.Объект = "Справочник.ФизическиеЛица";
// Сведения.ПоляРегистрации = "Ссылка";
// Сведения.ПоляДоступа = "СерияДокумента,НомерДокумента,КемВыданДокумент,ДатаВыдачиДокумента";
// Сведения.ОбластьДанных = "ПаспортныеДанные";
//
Процедура ЗаполнитьСведенияОПерсональныхДанных(ТаблицаСведений) Экспорт
```
Пример вызова
```bsl
ЗащитаПерсональныхДанныхПереопределяемый.ЗаполнитьСведенияОПерсональныхДанных(ТаблицаСведений)
```
</details>
## ЗаполнитьОбластиПерсональныхДанных
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">
<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>
```bsl
// Обеспечивает составление коллекции областей персональных данных.
//
// Параметры:
// КатегорииПерсональныхДанных - ТаблицаЗначений:
// * Имя - Строка - идентификатор категории данных.
// * Представление - Строка - пользовательское представление категории данных.
// * Родитель - Строка - идентификатор родительской категории данных.
//
Процедура ЗаполнитьОбластиПерсональныхДанных(КатегорииПерсональныхДанных) Экспорт
```
Пример вызова
```bsl
ЗащитаПерсональныхДанныхПереопределяемый.ЗаполнитьОбластиПерсональныхДанных(КатегорииПерсональныхДанных)
```
</details>
## ДополнитьДанныеСубъектовПерсональныхДанных
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">
<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>
```bsl
// Вызывается при заполнении формы "Согласие на обработку персональных данных" данными,
// переданных в качестве параметров, субъектов.
//
// Параметры:
// СубъектыПерсональныхДанных - Массив из Структура - содержит сведения о субъектах:
// * Субъект - ОпределяемыйТип.СубъектПерсональныхДанных
// * ФИО - Строка
// * Адрес - Строка
// * ПаспортныеДанные - Строка
// ДатаАктуальности - Дата - дата, на которую нужно заполнить сведения.
//
Процедура ДополнитьДанныеСубъектовПерсональныхДанных(СубъектыПерсональныхДанных, ДатаАктуальности) Экспорт
```
Пример вызова
```bsl
ЗащитаПерсональныхДанныхПереопределяемый.ДополнитьДанныеСубъектовПерсональныхДанных(СубъектыПерсональныхДанных, ДатаАктуальности)
```
</details>
## ДополнитьДанныеОрганизацииОператораПерсональныхДанных
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">
<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>
```bsl
// Вызывается при заполнении формы "Согласие на обработку персональных данных" данными организации.
//
// Параметры:
// Организация - ОпределяемыйТип.Организация - оператор персональных данных.
// ДанныеОрганизации - Структура - данные об организации (адрес, ФИО ответственного и т.д.).
// ДатаАктуальности - Дата - дата, на которую нужно заполнить сведения.
//
Процедура ДополнитьДанныеОрганизацииОператораПерсональныхДанных(Организация, ДанныеОрганизации, ДатаАктуальности) Экспорт
```
Пример вызова
```bsl
ЗащитаПерсональныхДанныхПереопределяемый.ДополнитьДанныеОрганизацииОператораПерсональныхДанных(Организация, ДанныеОрганизации, ДатаАктуальности)
```
</details>
## ЗаполнитьФИОФизическогоЛица
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">
<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>
```bsl
// Вызывается при заполнении формы "Согласие на обработку персональных данных".
// Предназначена для заполнения поля ФИО ответственного за обработку ПДн.
//
// Параметры:
// ФизическоеЛицо - ОпределяемыйТип.ФизическоеЛицо - ответственный за обработку персональных данных.
// ФИО - Строка - ФИО ответственного, которые нужно заполнить.
//
Процедура ЗаполнитьФИОФизическогоЛица(ФизическоеЛицо, ФИО) Экспорт
```
Пример вызова
```bsl
ЗащитаПерсональныхДанныхПереопределяемый.ЗаполнитьФИОФизическогоЛица(ФизическоеЛицо, ФИО)
```
</details>
## ПриЗаполненииСведенийОбУничтожаемыхПерсональныхДанных
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">
<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>
```bsl
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Уничтожение персональных данных (ПДн) выполняется при проведении документа "Акт об уничтожении персональных данных".
// При этом выполняется поиск объектов информационной базы, в которых содержатся ПДн субъектов.
// Состав таких объектов и их полей описывается в методе ПриЗаполненииСведенийОбУничтожаемыхПерсональныхДанных.
// В найденных объектах значения реквизитов, содержащих ПДн, очищаются или заменяются случайными значениями.
// Запись объекта с уничтоженными ПДн выполняется в режиме загрузки. В случае необходимости выполнения дополнительных
// действий, при уничтожении ПДн перед записью и после записи объекта можно использовать обработчики
// ПередУничтожениемПерсональныхДанных и ПослеУничтоженияПерсональныхДанных соответственно.
// Заполняет таблицу значений с описанием объектов метаданных и их полей, в которых содержатся персональные данные
// субъектов, подлежащие уничтожению.
//
// Например, персональные данные физического лицо могут храниться в самом справочнике ФизическиеЛица,
// в регистре сведений ФИОФизическихЛиц, в документе ВедомостьНаВыплатуЗарплатыВБанк и т.д.
//
// Параметры:
// ТаблицаСведений - ТаблицаЗначений:
// * Объект - Строка - полное имя объекта метаданных, в котором содержатся персональные данные субъекта.
// Например, "Справочник.ФизическиеЛица".
// * ПолеСубъект - Строка - имя поля объекта, в котором содержится ссылка на субъекта.
// Для стандартных реквизитов используется имя реквизита, например "Ссылка".
// Для остальных полей используется полное имя объекта метаданных реквизита, например
// "Документ.ВедомостьНаВыплатуЗарплатыВБанк.ТабличнаяЧасть.Состав.Реквизит.ФизическоеЛицо"
// * Поля - Массив из Строка, Строка - имена полей объекта, в которых содержатся персональные данные субъекта
// Для стандартных реквизитов используется имя реквизита, например "Наименование".
// Для остальных полей используется полное имя объекта метаданных реквизита, например
// "Справочник.ФизическиеЛица.Реквизит.ФИО"
// * КатегорияДанных - Строка - категория, к которой относятся персональные данные.
//
// Пример:
//
// НовыеСведения = ТаблицаСведений.Добавить();
// НовыеСведения.Объект = "Справочник.ФизическиеЛица";
// НовыеСведения.ПолеСубъект = "Ссылка";
// НовыеСведения.Поля = ОбщегоНазначенияКлиентСервер.ЗначениеВМассиве("Наименование");
// НовыеСведения.КатегорияДанных = "ФИО";
//
// НовыеСведения = ТаблицаСведений.Добавить();
// НовыеСведения.Объект = "Документ.ВедомостьНаВыплатуЗарплатыВБанк";
// НовыеСведения.ПолеСубъект = "Документ.ВедомостьНаВыплатуЗарплатыВБанк.ТабличнаяЧасть.Состав.Реквизит.ФизическоеЛицо";
// НовыеСведения.Поля = ОбщегоНазначенияКлиентСервер.ЗначениеВМассиве(
// "Документ.ВедомостьНаВыплатуЗарплатыВБанк.ТабличнаяЧасть.Состав.Реквизит.СНИЛС");
// НовыеСведения.КатегорияДанных = "СНИЛС";
//
Процедура ПриЗаполненииСведенийОбУничтожаемыхПерсональныхДанных(ТаблицаСведений) Экспорт
```
Пример вызова
```bsl
ЗащитаПерсональныхДанныхПереопределяемый.ПриЗаполненииСведенийОбУничтожаемыхПерсональныхДанных(ТаблицаСведений)
```
</details>
## ПередСкрытиемПерсональныхДанныхСубъектов
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">
<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>
```bsl
// Позволяет выполнить дополнительные действия перед уничтожением персональных данных субъектов. В том числе, отказаться
// от уничтожения персональных данных, добавив субъекта в таблицу исключений с указанием причины отказа от уничтожения.
// Или же добавить в массив субъектов других субъектов, данные которых тоже должны быть уничтожены. Например, если при
// уничтожении данных физического лица должны быть уничтожены данные связанных с ним кандидатов.
//
// Параметры:
// Субъекты - Массив из ОпределяемыйТип.СубъектПерсональныхДанных - ссылки на объекты данных, чьи персональные данные
// будут уничтожены.
// ТаблицаИсключений - ТаблицаЗначений:
// * Субъект - ОпределяемыйТип.СубъектПерсональныхДанных
// * ПричинаОтменыУничтожения - Строка
// - ТаблицаЗначений - в которую добавляются субъекты и причины отказа уничтожения их данных
// ОтказОтСкрытия - Булево - (по умолчанию Истина) признак отказа от скрытия. Если определены причины отказа
// от скрытия, то параметру необходимо установить значение Ложь.
//
Процедура ПередСкрытиемПерсональныхДанныхСубъектов(Субъекты, ТаблицаИсключений, ОтказОтСкрытия) Экспорт
```
Пример вызова
```bsl
ЗащитаПерсональныхДанныхПереопределяемый.ПередСкрытиемПерсональныхДанныхСубъектов(Субъекты, ТаблицаИсключений, ОтказОтСкрытия)
```
</details>
## ПередУничтожениемПерсональныхДанных
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">
<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>
```bsl
// Позволяет выполнить дополнительные действия при уничтожении персональных данных перед записью объекта,
// а также отказаться от записи объекта.
//
// Параметры:
// Объект - СправочникОбъект,ДокументОбъект
// Субъекты - Массив из ОпределяемыйТип.СубъектПерсональныхДанных
// ВыполнитьЗаписьОбъекта - Булево - если Ложь, то запись объекта не выполняется.
//
Процедура ПередУничтожениемПерсональныхДанных(Объект, Субъекты, ВыполнитьЗаписьОбъекта) Экспорт
```
Пример вызова
```bsl
ЗащитаПерсональныхДанныхПереопределяемый.ПередУничтожениемПерсональныхДанных(Объект, Субъекты, ВыполнитьЗаписьОбъекта)
```
</details>
## ПослеУничтоженияПерсональныхДанных
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">
<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>
```bsl
// Позволяет выполнить дополнительные действия при уничтожении персональных данных после записи объекта.
//
// Параметры:
// Объект - СправочникОбъект,ДокументОбъект
// Субъекты - Массив из ОпределяемыйТип.СубъектПерсональныхДанных
//
Процедура ПослеУничтоженияПерсональныхДанных(Объект, Субъекты) Экспорт
```
Пример вызова
```bsl
ЗащитаПерсональныхДанныхПереопределяемый.ПослеУничтоженияПерсональныхДанных(Объект, Субъекты)
```
</details>
## ПриРасчетеСроковХраненияПерсональныхДанных
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">
<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>
```bsl
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Срок хранения ПДн - это дата после которой необходимо уничтожить ПДн субъекта. Ранее этой даты уничтожить ПДн нельзя.
// Сроки хранения ПДн рассчитываются автоматически регламентным заданием РасчетСроковХраненияПерсональныхДанных.
// При наступлении события, которое влияет на срок хранения ПДн, необходимо с помощью метода
// ЗащитаПерсональныхДанных.ДобавитьСубъектыДляРасчетаСроковХранения зарегистрировать субъекта для расчета срока хранения.
// Такими событиями могут быть, например, создание нового физического лица, ввод согласия на обработку ПДн или
// прием сотрудника на работу.
// При расчете сроков хранения ПДн, в процедуре ПриРасчетеСроковХраненияПерсональныхДанных заполняется таблица значений,
// в которую различные подсистемы добавляют рассчитанные сроки хранения. Датой, при наступлении которой данные подлежат
// уничтожению, будет определена самая поздняя из всех заполненных для этого субъекта.
// Позволяет добавить в таблицу значений информацию о сроках хранения персональных данных.
//
// Параметры:
// ДанныеСубъектов - ТаблицаЗначений:
// * Субъект - ОпределяемыйТип.СубъектПерсональныхДанных - ссылка на субъекта.
// * ДатаСобытия - Дата - дата события, которое потребовало обновления срока хранения персональных данных.
// СрокиХранения - ТаблицаЗначений:
// * Субъект - ОпределяемыйТип.СубъектПерсональныхДанных - ссылка на субъекта
// * СрокХранения - Дата - дата, до которой должны храниться персональные данные субъекта и при наступлении которой,
// они должны быть уничтожены.
// * Организация - ОпределяемыйТип.Организация - ссылка на организацию субъекта (если организацию определить
// невозможно, не заполняется)
// * Комментарий - Строка - произвольная строка с пояснением к рассчитанному сроку хранения.
//
Процедура ПриРасчетеСроковХраненияПерсональныхДанных(ДанныеСубъектов, СрокиХранения) Экспорт
```
Пример вызова
```bsl
ЗащитаПерсональныхДанныхПереопределяемый.ПриРасчетеСроковХраненияПерсональныхДанных(ДанныеСубъектов, СрокиХранения)
```
</details>
## ОрганизацияПоУмолчанию
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">
<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>
```bsl
// Устарела. Следует разместить функцию ОрганизацияПоУмолчанию в модуле менеджера справочника,
// указанного в определяемом типе Организация.
//
// Возвращаемое значение:
// ОпределяемыйТип.Организация
//
Функция ОрганизацияПоУмолчанию() Экспорт
```
Пример вызова
```bsl
Результат = ЗащитаПерсональныхДанныхПереопределяемый.ОрганизацияПоУмолчанию()
```
</details>
---
© 2024, **ООО 1С-Софт**
Все права защищены. Эта программа и сопроводительные материалы предоставляются
в соответствии с условиями лицензии [Attribution 4.0 International (CC BY 4.0)](https://creativecommons.org/licenses/by/4.0/legalcode).
---