Перейти к содержанию

Файлы — Администрирование

Обзор

Документ покрывает операционные настройки файлового домена, которые требуются администратору для эксплуатации:

  • Файловое хранилище категории — квоты, разделы Диска, привязка папок к задачам
  • Видеоконвертация — операционные параметры потоков, TSQL- и Lua-паттерны, Bearer-токен
  • Утилита TaskScanner — источник дистрибутива и параметры exe.config
  • Журнал действий — cross-link на домен disk (владелец раздела)

Файловое хранилище категории

Файлы, с которыми ведётся работа в системе, хранятся либо на Диске, либо в таблицах БД.

Разделы Диска

Раздел Назначение Доступ
Мои файлы Личные файлы пользователя Только пользователь и прямые руководители. Скрывается, если общая настройка Квота личной папки пользователя в файловом хранилище = 0 или не задана
Общие файлы Совместное использование Всем сотрудникам компании (признак регулируется в настройках профиля). Права на подпапки наследуются по умолчанию
Обмен файлами Обмен между сотрудниками и внешними пользователями Доступен с версии 2.263. По умолчанию только владелец и администраторы; остальным — по явному назначению
Файлы автоматизации Папки, привязанные к задачам через смарт-автоматизацию Только сотрудники с правами администратора. Системная подпапка Export configurations — выгрузка конфигурации площадки
Файлы замещаемых Содержимое «Моих файлов» замещаемых сотрудников Отображается при настроенном замещении
Файлы подчиненных Содержимое «Моих файлов» подчинённых Отображается для руководителей

Особенности системных папок и маршрутов Диска

  • Системные корни Диска (служебные разделы) используются платформой как специальные корневые узлы и не должны изменяться напрямую на уровне данных.
  • ⚠️ Не создавайте папки, имя которых в корне раздела состоит только из цифр — это может привести к конфликту со служебной маршрутизацией и некорректному открытию папки по ссылке. Для таких случаев переименуйте папку в текстовое имя или используйте имя, содержащее не только цифры.
  • Адрес в браузере формируется из названий папок, а не из внутренних идентификаторов. Если папка переименована, старая текстовая ссылка может перестать работать.

Квота личной папки

Параметр Значение по умолчанию Где хранится
Квота личной папки пользователя 5 Гб (5368709120 байт) Settings.FileStorageUserPartitionQuota

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

Привязка папки Диска к задаче

Для создания единого места хранения всех файлов задачи (вложения задачи + ДП) используется смарт-действие Связать файловую папку с задачей.

  • Путь к папке задаётся фиксированным значением или смарт-выражением.
  • ⚠️ «Привязанные» папки всегда создаются в разделе Файлы автоматизации. Не используйте для этого раздел Общие файлы.
  • После привязки все файлы, вложенные в задачу или в ДП, попадают в связанную папку.

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

Если связь настроена, в ДП «Файл» появляется пункт Вставить из диска — он открывает связанную с задачей папку.

Права пользователей в связанных папках Диска

При создании связи задачи с папкой Диска пользователям предоставляются права, эквивалентные правам в задаче. Права формируются на основе:

  1. Прав доступа для групп на категорию:
  2. «Исполнять» + пользователь является исполнителем текущей задачи
  3. «Создавать задачи» + пользователь является заказчиком текущей задачи
  4. «Просмотр всех задач"
  5. Прав согласно тегам или смарт-доступу
  6. Прав согласно роли в задаче: подписчик, заказчик, исполнитель или активный заместитель

Подписчик получает права при добавлении и теряет при удалении из подписчиков.

Пользователь получает право на просмотр и редактирование папки, если хотя бы по одному из прав видит связанную задачу. Если все связанные задачи завершены — редактирование папки запрещено.

Доступ к функциональным возможностям Диска

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

  • пункт «Диск» в меню сервисов в панели навигации
  • пункт «Диск» в меню «Файлы» карточки задачи
  • возможность совершать действия с Диском для ДП «Файлы"

Проверка производительности хранилища

Для бенчмарка используется хранимая процедура DiskSpeedBenchmark:

  1. Создаёт временную таблицу Test_PreUploadedOnPostTaskFiles (если не существует).
  2. Готовит тестовый блок данных объёмом 200 МБ.
  3. Измеряет время записи блока в таблицу (результат в миллисекундах выводится в сообщениях SQL Server).
  4. Измеряет время чтения только что записанных данных.
  5. По завершении теста временная таблица удаляется.

Видеоконвертация — операционные параметры

Архитектура решения, 5 шагов настройки потоков/очередей/сервиса и ограничения на ДП — см. business.md § Конвертация и сжатие. Здесь — только операционные параметры и точные TSQL/Lua-паттерны для администратора.

Поддерживаемые форматы входящих файлов: MP4, WMV, MOV, AVI. На выходе — единый MP4 для веб-плеера.

Параметры потоков

Параметр Значение
Неудачных попыток до прекращения обработки события 1
Поведение в случае ошибки Пропустить

TSQL-паттерн для извлечения fileId из очереди

В смарт-действии Вызов внешнего сервиса (привязка к очереди отправки) параметр fileId рассчитывается из контекста очереди:

SELECT JSON_VALUE(data, '$.fileId')
FROM MessageQueue WITH (NOLOCK)
WHERE id = @contextid

В параметре Список файлов формат: ключ file → значение fileId (рассчитанное TSQL-запросом выше).

Lua-скрипт для скачивания сконвертированного файла

В привязке к очереди ответа (video-convertation-callback-action) используется смарт-действие Выполнить смарт-скрипт с действием DownloadFile.

Контекстные параметры:

Параметр Значение
@contextid nil
@contextType 'task'
FileName 'Converted file.mp4' (расширение .mp4 обязательно)
HttpHeaders { 'Authorization' = 'Bearer {APIKey из сервиса UniversalApi}' }
HttpMethod 'Post'

Пример скрипта:

local paramTable = SQL:query_one([[
    select JSON_VALUE(data, '$.CallBackUrl') callbackurl
    from MessageQueueLog with(nolock)
    where id = @contextid
]], {contextid = CONTEXT.Id})

SMART:execute_action('DownloadFile', nil, 'task', {
    Task = 12345,
    UploadingUserName = 3,
    FileLink = paramTable.callbackurl,
    FileName = 'Converted file.mp4',
    HttpMethod = 'Post',
    HttpHeaders = { 'Authorization' = 'Bearer {APIKey}' }
}, false)

APIKey берётся из настроек сервиса UniversalApi, созданного на шаге 3 архитектурной настройки.

Настройка автоматизации в категории

В категории создаётся автоматизация со смарт-действием Добавить новое событие в очередь:

Параметр Значение
Тип события Custom
Поток video-convertation (созданный на шаге 1)
Кастомное действие ID очереди video-convertation-action (созданной на шаге 2)
Событие триггера После смены ДП
Параметр fileId Рассчитывается TSQL из ДП «Файл"

⚠️ Ограничения для ДП «Файл», используемого в сжатии: - Опция Мультифайл должна быть отключена - Файловый провайдер не должен быть выбран


Утилита TaskScanner

Утилита сканирования TaskScanner позволяет сканировать документы и загружать электронные образы непосредственно в задачу (в ДП «Файл»).

Где скачать

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

Требование к ДП «Файл"

Чтобы отсканированный файл можно было вложить в ДП «Файл», в настройках ДП должен быть включён параметр Разрешить сканирование (AllowScanning). Подробнее см. ../ext-params/file/settings-reference.md.

Параметры TaskScanner.exe.config

Ключ Формат / Значения Описание
PageSize A3, A4, A5 или Ширина×Высота в мм (например, 10x297) Размер страницы
Dpi Целое число, например 300 Разрешение сканирования
BitDepth Color, Grayscale, BlackAndWhite Цветовой режим
PageAlign Right, Center, Left Выравнивание страницы

Журнал действий с файлами

Журнал «Диск» — см. ../disk/admin.md.

Активируется опцией Логировать действия с файлами в настройках ДП «Файл» / «Таблица» (см. также ../ext-params/file/settings-reference.md).

Фиксируемые действия: загрузка файла, удаление файла, создание папки, удаление папки, изменение прав доступа, изменение названия папки и т.д.


Office Web Apps / Office Online — настройки сервера

Cross-link. Архитектура и CustomSettings ключи редакторов (OfficeOnlineEditor, r7/onlyOffice) — в ../integrations/admin.md (разделы «MS Office Online (webApps)» и «OnlyOffice CE»). Здесь — параметры серверной настройки Office Web Apps в общих настройках приложения.

Где настраивается: Общие настройки приложения, блок Web Apps.

Параметр Назначение
Использовать Office Web Apps для просмотра документов в браузере Включает онлайн-просмотр документов через Web Apps
Использовать Office Web Apps для редактирования документов в браузере Включает онлайн-редактирование
Сервер для получения файлов из Office Web Apps URL вида http://web_apps — адрес WAC-сервера, через который Web Apps запрашивает контент у 1Формы
Тип зоны Внешняя / внутренняя. Соответствует зонам в Discovery.xml. Внешняя — для публикаций через Интернет, внутренняя — для локальной сети
Путь к Discovery.xml Путь к файлу настроек Web Apps относительно каталога приложения, должен начинаться с корня или wwwroot
Время жизни токена (сек.) Таймаут на запрос файла со стороны Web Apps по сгенерированному при открытии токену безопасности
~~Использовать WebDAV~~ Устаревшее, WebDAV больше не используется
Действие с файлами MS Office при клике Скачать / Открыть для просмотра в веб-интерфейсе / ~~Открыть для редактирования в десктопном приложении (WebDAV)~~

⚠️ Для запуска редактора Office Online (OfficeOnlineEditor.editor=webApps) дополнительно требуется WOPI-discovery в корне веб-сервера: C:\inetpub\wwwroot\{App}\wopi. Без этого файла редактор не откроется.


appsettings.json — конвертер документов

Ключ Тип Назначение
UseDevexpressDocToPdfConverter bool Использовать DevExpress для конвертации DOC→PDF. Проверяется, если не задан CustomSetting DefaultConverterPdf. Если ни ключ, ни кастомная настройка не заданы — по умолчанию используется SautinSoft

appsettings.json — секция Tus (резумируемая загрузка)

Ключ Тип / Default Назначение
Tus.PreuploadEnabled bool Включает механизм предварительной загрузки. При true сервер ждёт preupload-запросы перед основной передачей файла
Tus.PreuploadEnpoint string (URI) Конечная точка preupload-запросов. Пример: /files/tus/preupload
Tus.FileExpirationInHours int / null TTL загруженного файла в часах. По истечении — удаляется джобом CleanExpiredFilesFromPreuploadedTusStoreJob. null — не удалять
Tus.StoreType Local / S3 Тип хранилища временных файлов
Tus.Local.Path path Путь хранения для StoreType=Local. Пример: D:/tus/
Tus.S3.BucketName string Имя бакета S3
Tus.S3.Region string Регион (us-east-1 для совместимости с MinIO)
Tus.S3.Endpoint URL Endpoint S3 / MinIO
Tus.S3.ForcePathStyle bool true — path-style URL (<endpoint>/<bucket>/<key>)
Tus.S3.AccessKey / SecretKey string Ключи доступа
Tus.S3.PreferredPartSizeInBytes int Рекомендуемый размер части. Пример: 5242880 (5 МБ)

⚠️ Для перехода между Local и S3 нужен restart приложения.

CustomSettings — глобальные ключи файлов

Ключ Тип Назначение
FileIdToStartOcr int Минимальный ID файла (FileStorageFiles.Id), с которого начинают обработку джобы OcrJob (распознавание текста в img/jpg/png) и TikaJob (извлечение текста из документов). Запуск каждые 15 минут. Использовать для постепенной активации OCR на больших инсталляциях
SautinSoftLicenseKey string Лицензионный ключ библиотеки SautinSoft.PdfMetamorphosis (используется при DefaultConverterPdf=SautinSoft). Без ключа конвертер работает в пробном (ограниченном) режиме
DefaultConverterPdf string Конвертер документов в PDF (SautinSoft / другие). См. business.md § «Конвертация»

Связанные

  • files/business.md — бизнес-логика (видеоконвертация архитектурно, ограничения)
  • files/backend.md — бэкенд
  • disk/admin.md — журнал действий
  • ext-params/file/settings-reference.md — настройки ДП «Файл» (AllowScanning, IsLogFileReadsAction и др.)
  • categories/admin.md — настройки категории (автоматизации, права)
  • system/admin.md — общие настройки приложения (квота личной папки)