Библиотека стандартных подсистем. Библиотека стандартных подсистем Проверка легальности получения обновлений

Поскольку конфигурация БСП рассчитана на разработчиков, то документации будет минимум, я лишь опишу последовательность шагов, необходимых для получения результата. Если же будут вопросы, то закрытых модулей нет, можете смотреть и анализировать. По мере свободного времени постараюсь отвечать в комментариях. Как вариант, можно посмотреть документацию в , там подсистема хранения описана подробнее.

Для внедрения расширения следует выполнить следующие шаги:

  1. Загрузить расширение в конфигурацию.
  1. Для регистра сведения "ВнФ_ВнешниеХранилищаФайлов" проверить тип измерения Файл, тип должен совпадать с аналогичным измерением регистра сведений "ДвоичныеДанныеФайлов". Если какого-то типа не хватает - добавьте.

  1. Обновите конфигурацию, зайдите в "Администрирование" в "Настройку работы с файлами". Настройка хранения файлов в томах претерпела изменение - если файлы хранятся в базе 1С, то можно перейти по ссылке "Внешние хранилища файлов".

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


На форме миграции в списке отображен регистр сведений "Двоичные данные файлов", в котором в типовой БСП хранятся данные файлов. После переноса в списке появится ИД файла во внешней СУБД и ссылка на внешнее хранилище, где хранится файл.

Библиотека стандартных подсистем (БСП) — набор подсистем для конфигураций на платформе 1С:Предприятие, реализующие базовую функциональность и отдельные функциональные блоки. Попробуем подробнее разобраться что же это такое.

Для чего создавалась БСП

Первая версия БСП выпущена фирмой 1С в далеком 2010 году для платформы 1С:Предприятие 8.2. 1С предлагает использовать данную библиотеку (или отдельные ее подсистемы) в качестве основы для создания собственных прикладных решений. Также все типовые продукты, выпускаемые самой фирмой 1С, базируются на БСП.

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

Для программистов, разрабатывающих прикладные решения «с нуля», БСП позволила экономить кучу времени, т.к. отпала необходимость самостоятельной разработки базовых функциональных блоков, входящих в БСП. За программиста разработку и тестирование выполнила фирма 1С. От программиста теперь требуется только разобраться с уже разработанным функционалом и научиться внедрять БСП.

Как распространяется БСП

БСП представляет собой конфигурацию для платформы 1С:Предприятие. Причем конфигурация не является самостоятельным прикладным решением, это всего лишь инструментарий для разработчика. Всю конфигурацию или часть подсистем можно использовать при разработке прикладных решений.

В состав поставки БСП входит демо-база с примером внедрения. Данная демо-база доступна для ознакомления на сайте 1С. Как можно получить к ней доступ можно почитать в статье .

БСП не продается. Дистрибутив БСП можно бесплатно получить при наличии подписки на информационно-технологическое сопровождение(ИТС). Для использования прикладного решения, разработанного на базе БСП, подписка на ИТС не требуется. Также бесплатно БСП могут получить партнеры фирмы 1С.

Официальная документация по БСП находится по адресу https://its.1c.ru/db/bspdoc и доступна при наличии подписки на ИТС.

Состав БСП

БСП состоит из множества подсистем, которые делятся на:

  • самостоятельные . Для внедрения достаточно перенести все объекты в целевую конфигурацию и вывести объекты в интерфейс. Примеры подобных подсистем: «Анализ журнала регистрации», «Валюты», «Завершение работы пользователей».
  • интегрируемые . Предназначены для тесной интеграции с другими объектами конфигурации. Для внедрения подобных подсистем необходимо выполнить дополнительные настройки. Примеры подобных подсистем: «Версионирование объектов», «Заполнение объектов», «Запрет редактирования реквизитов объектов».

На текущий момент (июль 2017 года) доступна БСП версии 2.4.2, которая поддерживает следующий функционал:

Средства администрирования и обслуживания Анализ журнала регистрации
Дополнительные отчеты и обработки
Настройки программы
Обновление конфигурации
Оценка производительности
Поиск и удаление дублей
Профили безопасности
Регламентные задания
Резервное копирование ИБ
Удаление помеченных объектов
Управление итогами и агрегатами
Администрирование пользователей и прав доступа Завершение работы пользователей
Пользователи
Управление доступом
Интеграция с другими программами и системами Внешние компоненты
Загрузка данных из файла
Интеграция с «1С-Бухфон» («1С-Коннект»)
Обмен данными
Отправка SMS
Получение файлов из Интернета
Работа с почтовыми сообщениями
Рассылка отчетов
Технологические механизмы и программные интерфейсы Базовая функциональность
Заполнение объектов
Запрет редактирования реквизитов объектов
Обновление версии ИБ
Подключаемые команды
Префиксация объектов
Работа в модели сервиса
Центр мониторинга
Прикладные подсистемы и рабочие места пользователей Анкетирование
Бизнес-процессы и задачи
Варианты отчетов
Взаимодействия
Работа с файлами
Текущие дела
Шаблоны сообщений
Нормативно-справочная информация и классификаторы
Банки
Валюты
Графики работы
Календарные графики
Сервисные подсистемы Версионирование объектов
Групповое изменение объектов
Даты запрета изменения
Заметки пользователя
Защита персональных данных
Информация при запуске
Контактная информация
Напоминания пользователя
Настройка порядка элементов
Печать
Полнотекстовый поиск
Проверка легальности получения обновлений
Свойства
Склонение представлений объектов
Структура подчиненности
Электронная подпись

Подробнее конкретные подсистемы будут описываться в отдельных статьях.

Внедрение БСП

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

  • Базовая функциональность;
  • Обновление версии ИБ;
  • Пользователи.

Общая схема внедрения состоит из следующих этапов:

  1. Перенос необходимых объектов метаданных в целевую конфигурацию;
  2. Настройка перенесенных объектов;
  3. Использование объектов БСП при разработке нового функционала.

Для помощи во внедрении БСП в состав библиотеки входит обработка ПервоеВнедрениеБСП.epf . Она располагается в каталоге шаблона конфигурации. В обработке есть краткое описание всех подсистем и определены взаимозависимости подсистем друг от друга.

Для проверки корректности внедрения БСП в каталоге шаблона конфигурации располагается отчет ПроверкаВнедренияБСП.erf .

Как узнать версию БСП прикладного решения

Есть несколько способов узнать какая версия БСП используется в конкретном прикладном решении:

  • Программно : вызвать функцию СтандартныеПодсистемыСервер . ВерсияБиблиотеки () ;
  • Интерактивно : в регистре сведений «Версии подсистем» посмотреть значение версии для подсистемы «СтандартныеПодсистемы».

Ниже мы продолжим разбирать подсистемы в конфигурации БСП.

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

22. Контактная информация

Подсистема для хранения и отображения на формах справочников контактной информации. Как правило, используется в справочниках: контрагенты, физические лица, организации и т.п. Подсистема связана с подсистемой «Адресный классификатор».

23. Контроль динамического обновления конфигурации

Предназначена для оповещения пользователей об изменениях в конфигурации. Если конфигурация изменена, с некоторой периодичностью предлагает перезапустить сессию.

24. Напоминания пользователя

Подсистема предназначена для установки персональных напоминаний по поводу какого-либо объекта системы и оповещения пользователя в назначенное время.

25. Настройка порядка элементов

Предназначена для настройки порядка элементов справочника или кнопками Вверх и Вниз в . Если объект подчиненный, то нумерация элементов выполняется в пределах владельца. Если справочник иерархический, то нумерация элементов выполняется в пределах родителя.

26. Настройки программы

Подсистема «Настройки программы» предоставляет панели настроек для всех подсистем библиотеки, размещаемых в разделе командного интерфейса «Настройка и Администрирование».

27. Обмен данными

Подсистема «Обмен данными» предназначена для выполнения обмена данными между различающимися конфигурациями с использованием правил обмена и без использования правил обмена, а также для организации обмена данными в распределенной информационной базе. Обмен мало чем напоминает предыдущую версию БСП. Поддерживается обмен данными между конфигурациями, работающими в модели сервиса, а также между конфигурациями, работающими в модели сервиса и в локальном режиме. Правила, как обычно, должны быть сформированы в конфигурации «Конвертация данных».

Азы настройки обмена данными в 1С с помощью конфигурации «1С Конвертации данных» на примере смотрите в видео:

28. Обмен сообщениями

Подсистема «Обмен сообщениями» предназначена для интеграции разнородных информационных систем на платформе 1С:Предприятие посредством обмена сообщениями. Подсистему следует использовать, когда канал передачи данных ненадежный. Подсистема не является заменой технологии обмена данными, технологии веб-сервисов и внешнего соединения. Новый функционал в БСП.

Получите 267 видеоуроков по 1С бесплатно:

29. Обновление версии ИБ

Используется во всех типовых решениях. Мало чем отличается от прошлой версии библиотеки стандартных подсистем. «Обновление версии ИБ» предоставляет программный интерфейс для выполнения процедур-обработчиков по первоначальному заполнению и обновлению данных информационной базы (ИБ) при изменении версии конфигурации, а также позволяет выводить отчет об изменениях в новой версии конфигурации.

30. Обновление конфигурации

Подсистема предназначена для автоматического конфигурации информационной базы в режиме 1С:Предприятия «по требованию» или в указанное время в будущем. Речь идёт о конфигурациях. Можно настроить автоматическое обновление конфигурации с Вашего сервера.

31. Организации

Этот справочник используется практически во всех конфигурациях. Очень важно, чтобы он был унифицирован.

32. Отправка SMS

Подсистема представляет готовый функционал для рассылки SMS-сообщений по средствам 1С. По умолчанию подсистема поддерживает работу с операторами МТС и Билайн.

33.Оценка производительности

Предназначена для объективной оценки интегральной производительности системы по методике APDEX. С помощью неё, например, можно узнать, сколько занимает времени проведение определенного документа, и в дальнейшем получить статистику за время.

34. Печать

Подсистема предназначена для печати макетов табличных документов и макетов офисных документов (MS Word, OpenOffice).

35. Полнотекстовый поиск

Предназначена для активации в системе полнотекстовый поиск. Содержит в себе интерфейс поиска и некоторые регламентные операции для индексирования текстовых данных.

36. Получение файлов из Интернет

Подсистема «Получение файлов из Интернет» добавляет в конфигурацию программный интерфейс для получения файлов из сети Интернет по протоколам HTTP, HTTPS и FTP и сохранения полученных файлов на клиенте, сервере или во временном хранилище.

37. Пользователи

Подсистема предназначена для просмотра и редактирования списка пользователей и внешних пользователей системы (элементы справочников Пользователи и Внешние пользователи), которые синхронизируется со списком пользователей информационной базы.

38. Префиксация объектов

Предназначена для префиксирования объектов базы данных. Префиксация объектов ведется в разрезах информационных баз и элементов справочника Организации.

39. Присоединенные файлы

Подсистема «Присоединенные файлы» предоставляет средства работы с файлами-вложениями, присоединенными к произвольным объектам информационной базы ссылочного типа. Хранение файлов может быть организовано как в информационной базе, так и внешним образом – в томах (сетевых ресурсах).

40. Проверка легальности получения обновлений

Подсистема «Проверка легальности получения обновлений» позволяет запросить у пользователя подтверждение, что файлы обновления были получены легальным способом. Может использоваться как перед обновлением информационной базы (после того как обновление уже было применено к базе, но до первого запуска), так и непосредственно перед обновлением конфигурации средствами подсистемы «Обновление конфигурации».

41. Работа с почтовыми сообщениями

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

42. Работа с файлами

Подсистема «Работа с файлами» предназначена для коллективного редактирования файлов произвольного формата в иерархической структуре папок. Хранение файлов может быть организовано как непосредственно в информационной базе, так и внешним образом – в томах (сетевых ресурсах). Вместе с файлом может быть сохранена и история его изменений (версии файла).

43. Рассылка отчетов

Подсистема «Рассылка отчетов» позволяет настраивать рассылки вариантов отчетов и отчетов подсистемы «Дополнительные отчеты и обработки». Рассылки могут выполняться как по расписанию (если программа работает в клиент-серверном режиме), так и по требованию.

44. Регламентные задания

Подсистема «Регламентные задания» позволяет редактировать состав и расписание регламентных заданий, просматривать историю выполнения регламентных и фоновых заданий, а также анализировать ошибки при их выполнении. Если система развернута в клиент-файловом режиме, администратор имеет возможность настроить выполнение регламентных заданий с помощью команды Настройка обработки регламентных заданий обработки Консоль регламентных заданий.

45. Резервное копирование ИБ

Подсистема «Резервное копирование ИБ» позволяет проводить резервное копирование информационной базы из режима 1С Предприятие «по требованию» либо в соответствии с настроенным расписанием. Также с помощью данной подсистемы можно проводить восстановление информационной базы из резервной копии.

46. Свойства

Подсистема «Свойства» позволяет создавать и редактировать в режиме 1С:Предприятие дополнительные свойства произвольных объектов конфигурации. Объектами со свойствами могут быть любые объекты ссылочного типа. Подсистема позволяет реализовать как один набор дополнительных свойств для всех экземпляров объектов одного типа, так и несколько наборов свойств для объектов одного типа.

Дополнительные свойства объектов делятся на две категории:

● дополнительные реквизиты;

● дополнительные сведения.

47. Структура подчиненности

Подсистема «Структура подчиненности» предоставляет возможность вывода из формы документа отчета о родительских и дочерних документах текущего документа, а также об их взаимосвязях.

48. Управление доступом

Подсистема «Управление доступом» позволяет настраивать права пользователей для произвольных элементов данных информационной базы (элементов справочников, документов, записей регистров, бизнес-процессов, задач и т. д.). Возможно ограничение прав как для отдельных типов объектов метаданных, так и на уровне записей одного типа объекта. Кроме того, для отдельных объектов информационной базы возможна индивидуальная настройка прав доступа подобно папкам файлов операционной системы.

49. Управление итогами

Подсистема «Управление итогами и агрегатами» предоставляет средства для администрирования итогов и агрегатов регистров информационной базы. Подсистема позволяет выполнять как типовые административные операции, так и дает доступ ко всем возможностям:

● включение / отключение использования итогов и агрегатов;

● разделение итогов;

● установка периода и пересчет итогов;

● перестроение и обновление агрегатов;

● расчет оптимальных агрегатов.

50. Файловые функции

Подсистема «Файловые функции» не имеет самостоятельной прикладной ценности. Она включает в себя общую файловую функциональность (функции, общие формы и др.), используемую зависимыми от нее подсистемами (такими, как «Работа с файлами», «Присоединенные файлы», «Поставляемые данные»).

51. Физические лица

Подсистема «Физические лица» предназначена для унификации имен объектов метаданных, общих для типовых конфигураций. Содержит только определения объектов метаданных и их базовую реализацию.

52. Электронная цифровая подпись

Печать (Ctrl+P)

Инструкция по внедрению библиотеки стандартных подсистем

Библиотека включает в себя набор универсальных функциональных подсистем,
предназначенных для использования в прикладных решениях на платформе “1С: Предприятие 8.3”

Файлы поставки содержит

1. 1Cv8.cf – файл поставки библиотеки. Не предназначен для создания
информационных баз по шаблону.
2. 1Cv8_demo.dt – демонстрационная база.
3. 1Cv8_demo.cf – файл поставки демонстрационной базы.

Первое внедрение подсистем библиотеки в конфигурацию и обновление версии уже внедренной библиотеки заметно отличаются. После загрузки файла 1Cv8.cf в пустую конфигурацию, нужно выполнить настройку объектов библиотеки как описано в разделе 2.2, иначе при запуске в режиме предприятия будет выдано сообщение

Когда я впервые внедрял БСП, я использовал файл 1Cv8_demo.cf, где уже все настроено и загрузил его в пустую конфигурацию, а затем включил возможность изменения конфигурации и методично удалял не нужные мне добавленные объекты в файле конфигурации 1Cv8_demo.cf и подготовил себе другой файл cf, который можно загружать в пустую конфигурацию без настройки перенесенных объектов библиотеки.

В целом процесс внедрения состоит из следующих этапов:
Этап 1 . Перенос объектов метаданных из файла поставки библиотеки в конфигурацию.
Этап 2 . Настройка перенесенных объектов библиотеки.
Этап 3 . Использование объектов библиотеки при разработке конфигурации.

Все функциональные подсистемы, входящие состав библиотеки, относятся к родительской подсистеме «Стандартные подсистемы» в дереве объектов метаданных конфигуратора. Подсистемы, предназначенные для конфигураций, рассчитанных на работу в модели сервиса, подчинены подсистеме «Работа в модели сервиса».
Для задачи первоначального внедрения и последующих обновлений версий библиотеки в прикладных решениях в дистрибутив входит специальный инструмент – помощник внедрения (внешняя обработка ПервоеВнедрениеБСП.epf).

В его функции входит поддержка принятия решений по внедрению библиотеки в конфигурацию, а также автоматический контроль фактического результата внедрения. Поскольку принятие решений по внедрению и контроль их выполнения не требуют погружения в технические детали реализации, то проектирование, реализация и контроль могут выполняться разными специалистами и в разные моменты времени

Этап 1 Перенос объектов метаданных из файла
поставки библиотеки в конфигурацию.

Первое внедрение

Шаг 1. Для выполнения переноса объектов библиотеки в свою конфигурацию при первом внедрении нужно выбрать в режиме Конфигуратор команду меню Конфигурация – Сравнить, объединить с конфигурацией из файла. В диалоговом окне указать файл поставки библиотеки и подтвердить запрос о постановке к ней на поддержку.


Шаг 2 . В открывшемся окне сравнения и объединения конфигураций снять все флажки, ставить галку “включать область подчиненных подсистем” и отметить переносимые объекты с помощью команды Действия – Отметить по подсистемам конфигурации поставщика.


Из группы подсистем Стандартные подсистемы выбрать:

  • обязательные подсистемы : Базовая функциональность, Обновление версии ИБ, Пользователи, Контактная информация. Отметим, что при внедрении подсистемы «Пользователи» для использования в модели сервиса
    подсистема «Контактная информация»
  • подсистемы, которые требуется внедрить в вашу конфигурацию, например, сервисные подсистемы, нормативно-справочная информация и
    классификаторы
  • если предполагается работа конфигурации в модели сервиса, то нужно включить дополнительные подсистемы, обязательные к переносу в конфигурацию для работы в модели сервиса

Шаг 3. Дополнительно нужно установить или снять флажки для отдельных объектов библиотеки и их свойств и выбрать режим объединения Взять из файла (Действия – Установить режим для всех…) и нажать кнопку Выполнить. В окне со списком зависимых объектов нажать кнопку Продолжить.
Шаг 4 . После завершения сравнения и объединения перейти ко второму этапу – настройка объектов библиотеки. В зависимости от числа внедряемых подсистем этот шаг может занять от одного до нескольких часов.

Обновление версии библиотеки

В этом разделе описана общая схема обновления на новую версию библиотеки. Отдельные особенности обновления каждой конкретной версии библиотеки приведены в сопроводительном документе updateSSL.htm , входящем в поставку библиотеки. Как правило, при переходе между редакциями, подредакциями и релизами библиотеки (первая,
вторая и третья цифры в номере версии) требуется выполнить дополнительные действия по обновлению, а при переходе между исправительными релизами библиотеки (четвертая цифра
в номере версии), как правило, никаких дополнительных действий не требуется. В редких случаях, когда дополнительные действия все же необходимы при обновлении на исправительный релиз библиотеки, соответствующие инструкции содержатся не только в updateSSL.htm, но и в файле readme.txt в разделе Важно. Для обновления версии библиотеки нужно выбрать команду меню Конфигурация – Поддержка – Обновить конфигурацию. В диалоговом окне указать вариант Выбор файла обновления, задать путь к файлу поставки библиотеки и подтвердить запрос об
обновлении версии конфигурации поставщика.
Шаг 1. Предварительно необходимо подготовить к удалению из конфигурации устаревшие объекты метаданных библиотеки. Для этого в открывшемся окне сравнения и объединения конфигураций снять все флажки напротив объектов метаданных, затем установить фильтр сравнения и объединения в значение Показывать присутствующие только в старой конфигурации поставщика в группе Новая конфигурация поставщика <- Старая конфигурация поставщика, как указано на рисунке.

Далее отметить все объекты метаданных флажками, выбрать режим объединения Взять из новой конфигурации поставщика (Действия – Установить режим для всех…) и нажать кнопку Выполнить.
При наличии ссылок на устаревшие объекты библиотеки из других объектов конфигурации или из других объектов самой библиотеки кнопка Продолжить недоступна. Следует вручную очистить все ссылки из других объектов конфигурации и перейти к шагу 2 (при этом ссылки из библиотечных объектов будут удалены автоматически на шаге 3).
Если же ссылок на устаревшие объекты библиотеки не было обнаружено и по кнопке Продолжить удалось поставить конфигурацию на поддержку, то следует отменить постановку на поддержку, вернувшись к исходной конфигурации БД (меню Конфигурация –Конфигурация базы данных – Вернуться к конфигурации БД).
Шаг 2. Повторно выполнить команду Конфигурация – Поддержка – Обновить конфигурацию, указав в варианте Выбор файла обновления путь к файлу поставки библиотеки. В открывшемся окне сравнения и объединения конфигураций снять все флажки и отметить переносимые объекты с помощью команды Действия – Отметить по подсистемам новой конфигурации поставщика. Из группы подсистем «Стандартные подсистемы» выбрать:
● обязательные подсистемы;
● дополнительные подсистемы, обязательные к переносу в конфигурацию для работы в модели сервиса;
● все ранее внедренные подсистемы, а также подсистемы, которые дополнительно требуется внедрить в вашу конфигурацию;
● подсистемы, от которых зависят отмеченные выше подсистемы,

Затем отметить флажками для переноса этот же набор подсистем (объект метаданных «подсистема»), а так же подсистему Администрирование (если она была внедрена ранее или планируется внедрение) в окне сравнения и объединения конфигураций.
Выбрать режим объединения Взять из новой конфигурации поставщика (Действия –Установить режим для всех…).

Затем необходимо отметить к удалению из конфигурации все устаревшие объекты метаданных библиотеки. Для этого установить фильтр сравнения и объединения в значение Показывать присутствующие только в старой конфигурации поставщика в группе Новая конфигурация поставщика <- Старая конфигурация поставщика, как указано на рисунке.

Далее отметить все объекты метаданных флажками и нажать кнопку Выполнить. В окне со списком зависимых объектов нажать кнопку родолжить.
Шаг 3 . После завершения сравнения и объединения перейти ко второму этапу – настройка объектов библиотеки.

В подсистеме "Управление доступом ", входящую в состав БСП, настройка доступа к данным на уровне записей таблиц базы данных (RLS) осуществляется с использованием двух справочников - "Профили групп доступа " и "Группы доступа ". Настройка ролей пользователей производится через первый справочник, в то время как настройка RLS может осуществляться через оба упомянутых выше справочника - на выбор администратора БД.

Хочется отметить то, что в подсистеме имеется возможность разграничения доступа к данным как по элементно, так и по совокупности элементов, объединенных вместе по какому-либо признаку. В качестве примера возьмем справочник "Физические лица ", возможность настройки RLS к которому имеется практически во всех типовых конфигурациях, и производится с использованием специального справочника "". Для каждого элемента справочника "Физические лица " имеется возможность указать в его реквизите "Группа доступа " соответствующий ему элемент из справочника "Группы доступа физических лиц ", после чего для каждого пользователя (или группы пользователей) указывается соответствующая ему (им) доступная для работы группа доступа физ. лиц. Т.о. справочник "Физические лица " выступает в качестве предмета ограничения доступа (в качестве такового может выступать практически любой объект системы), а справочник "Группы доступа физических лиц " в качестве средства (инструмента) разграничения доступа к предмету.

Теперь перейдем к тому, что допустим, нам потребовалось организовать разграничение доступа к какому-либо объекту конфигурации по определенному критерию, но возможность настройки такого разграничения в программе отсутствует. В качестве примера для рассмотрения возьмем типовую конфигурацию "Бухгалтерия предприятия 3.0 " (БП), включающую в себя подсистему "Управление доступом ", и в которой отсутствует возможность настройки RLS по справочнику "Контрагенты ". Перед внесением изменений в конфигурацию хотелось бы также сделать оговорку - вносимые изменения зависят от версии БСП, используемой в конфигурации, но принцип остается тем же самым. В рассматриваемой статье используется версия БСП 2.2.2.44.

И так, последовательность наших действий в конфигураторе, целью которых является реализация возможности настройки в конфигурации RLS по справочнику "Контрагенты " (в нашем случае является предметом ограничения доступа), будет следующей:
1. Отфильтровать дерево метаданных конфигурации по подсистеме "Стандартные подсистемы " - "Управление доступом ".
2. Через настройку поддержки конфигурации (в случае использования механизма поддержки) включить возможность изменения следующих объектов конфигурации:
а. Корень конфигурации.
б. Справочник "Контрагенты ".
в. Определяемый тип "ЗначениеДоступа ".
г. Подписка на событие "".
д . Общий модуль "".
3. Добавить в конфигурацию новый справочник "Группы доступа контрагентов ".
4. Добавить в справочник "Конрагенты " новый реквизит "ГруппаДоступа " ссылочного типа на наш новый справочник.
5. Для определяемого типа "ЗначениеДоступа " в составной тип включить ссылки на справочники "Контрагенты " и "Группы доступа контрагентов ".
6. Для подписки на событие " ОбновитьГруппыЗначенийДоступа " в качестве источника также указать справочник "Контрагенты ".
7. Открыть общий модуль " УправлениеДоступомПереопределяемый " и вставить в три его процедуры фрагменты кода, приведенные ниже.
8. Из роли "ИзменениеУчастниковГруппДоступа " скопировать в необходимую вам роль (или роли, определяющие доступ к справочнику) шаблоны RLS с именами "ПоЗначениям " и "ПоЗначениямРасширенный ". Установить в своих ролях использование одного из шаблонов по требуемому праву (например, "Чтение "), как показано на скрине ниже.
9. Запустить конфигурацию в режиме "Предприятия " с параметром запуска "ЗапуститьОбновлениеИнформационнойБазы " (или же вызвать экспортную процедуру "ОбновитьПараметрыОграниченияДоступа " общего модуля подсистемы "УправлениеДоступомСлужебный ").

Обратим внимание на довольно важный момент: в последнюю процедуру возможно потребуется добавить большее количество строк кода, если вы планируете ограничение доступа не только к справочнику " Контрагенты ", но также и к каким-либо другим объектам конфигурации, связанных с этим справочником, например, разграничить доступ к документам " Реализация товаров и услуг " по реквизиту " Контрагент " - в этом случае предметов ограничения доступа выступает документ, а справочник " Контрагенты " является критерием ограничения доступа к предмету при помощи инструмента-разграничителя справочника " Группы доступа контрагентов ".

Процедура ПриЗаполненииВидовДоступа(ВидыДоступа) Экспорт ЗарплатаКадры.УправлениеДоступомЗаполнитьСвойстваВидаДоступа(ВидыДоступа); // +Наша вставка ВидДоступа = ВидыДоступа.Добавить(); ВидДоступа.Имя = "ГруппыКонтрагентов"; // имя вида доступа (используется в ролях для RLS) ВидДоступа.Представление = НСтр("ru = "Группы контрагентов""); ВидДоступа.ТипЗначений = Тип("СправочникСсылка.Контрагенты"); // критерий ограничения доступа ВидДоступа.ТипГруппЗначений = Тип("СправочникСсылка.ГруппыДоступаКонтрагентов"); // средство ограничения доступа // -Наша вставка КонецПроцедуры Процедура ПриЗаполненииИспользованияВидаДоступа(ИмяВидаДоступа, Использование) Экспорт ЗарплатаКадры.УправлениеДоступомЗаполнитьИспользованиеВидаДоступа(ИмяВидаДоступа, Использование); // +Наша вставка Если ИмяВидаДоступа = "ГруппыКонтрагентов" Тогда Использование = Истина; КонецЕсли; // -Наша вставка КонецПроцедуры Процедура ПриЗаполненииВидовОграниченийПравОбъектовМетаданных(Описание) Экспорт // +Наша вставка // указание прав объектов метаданных, на которые распространяется RLS Описание = Описание + " |Справочник.Контрагенты.Чтение.ГруппыКонтрагентов |Справочник.Контрагенты.Изменение.ГруппыКонтрагентов |"; // -Наша вставка КонецПроцедуры

После завершения обновления ИБ в программе необходимо проделать следующие действия:
1. Заполнить только что добавленный в систему справочник "Группы доступа контрагентов ".
2. У элементов справочника "Контрагенты " заполнить необходимым образом реквизит "Группа доступа ".
3. В справочнике "Профили групп доступа " (или же в справочнике "Группы доступа ") на закладке "Ограничения доступа " соответствующим образом настроить RLS по группам доступа контрагентов (ниже на скрине - пользователи, которым назначен профиль "Наш новый профиль доступа ", будут работать в справочнике только с контрагентами, входящими в группы доступа "Оптовые " и "Общие ").
4. Возможно потребуется предусмотреть в конфигурации механизм автоматического заполнения реквизита "Группа доступа " для новых элементов справочника "Контрагенты " (в целях облегчения его администрирования).

Резюме: Использование подсистемы "Управление доступом " из состава БСП дает возможность управлять RLS по любым объектам конфигурации, оперируя при этом минимум двумя стандартными справочниками "Профили групп доступа " и "Группы доступа ". Расширение возможностей настройки RLS дается с минимальным внесением изменений в подсистему. В случае, если критерий (или предмет) ограничения прав доступа имеет большой объем и постоянно расширяется (например, справочник "Контрагенты "), то имеется возможность через свой дополнительный справочник (средство разграничения) разделить критерий (или предмет) доступа на определенные области (в нашем случае через " Группы доступа контрагентов ") , в противном случае в качестве разграничителя доступа можно использовать (и имеет смысл) сами элементы справочника (например, в справочнике "Организации "). Неоспоримым плюсом использования подсистемы также является унификация администрирования прав доступа в информационной базе.

Читайте также: