Как реализовать справочник для хранения файлов в 1С с использованием БСП?

Программист 1С v8.3 (Управляемые формы) IT и автоматизация бизнеса
← На главную

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

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

Разница между подсистемами «Присоединенные файлы» и «Работа с файлами»

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

  1. Подсистема «Присоединенные файлы» — спроектирована строго для присоединения вложений к конкретным объектам-владельцам (например, к документам ЗаказПокупателя, справочникам Контрагенты или Номенклатура). В этой схеме для каждого типа владельца создается отдельный справочник вида [ИмяОбъекта]ПрисоединенныеФайлы. Права доступа (RLS) к файлам здесь полностью наследуются от самого объекта-владельца. Использовать этот механизм автономно, без наличия объекта-владельца, технически некорректно.
  2. Подсистема «Работа с файлами» — предназначена для самостоятельного хранения, структурирования и коллективного редактирования файлов в иерархической структуре папок. Данная подсистема опирается на справочники ПапкиФайлов и Файлы, а также на справочник ВерсииФайлов. Права доступа настраиваются непосредственно на уровни каталогов (ПапкиФайлов).

Решение: правильный выбор подсистемы БСП

Выясним, как поступить, если требуется справочник «Документы», выполняющий роль полноценного файлового хранилища.

Использовать подсистему «Присоединенные файлы» в данном случае не нужно, так как она требует наличия стороннего объекта-владельца. Вместо этого задействуем подсистему «Работа с файлами». Разберем по шагам порядок действий:

  1. Внедряем в конфигурацию подсистему «Работа с файлами» из БСП.
  2. Основным рабочим объектом для пользователей становится типовой справочник Файлы.
  3. Для того чтобы интерфейс соответствовал требованиям заказчика, меняем синоним справочника Файлы на «Документы» (или любое другое нужное наименование).
  4. Корректируем синонимы команд подсистемы и форм, чтобы пользователям было комфортно работать в привычном терминологическом поле.

При таком подходе пользователи получают полный спектр возможностей работы с файлами сразу при открытии справочника:

- Просмотр и редактирование файлов с механизмом блокировки («Занять» / «Освободить»);

- Сохранение и просмотр истории изменений через ВерсииФайлов;

- Загрузка документов с диска, создание по шаблонам или получение со сканера;

- Электронная подпись и шифрование данных.

Архитектурные особенности и настройка хранения

Рассмотрим дополнительные технические нюансы, которые следует учитывать при автономной работе с файлами в 1С:

Хранение на диске (в томах): Чтобы база данных не разрасталась до критических размеров из-за хранения двоичных данных, в БСП предусмотрена возможность размещения файлов в томах на сервере. При использовании подсистемы «Работа с файлами» перенос хранилища во внешние тома выполняется с помощью штатных настроек подсистемы.

Полнотекстовый поиск: Подсистема позволяет извлекать текст из загруженных документов (PDF, DOCX, XLSX и др.) с помощью регламентных заданий, благодаря чему пользователи могут искать нужные документы не только по наименованию, но и по внутреннему содержимому.

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

← На главную