Предыстория
Информационная база начала "пухнуть" от большого количества файлов, и было принято решение перенести файлы в тома. Казалось бы, типичная ситуация, и разработчик (наверняка) предусмотрел вариант решения этой задачи в типовых механизмах БСП. Однако, оказалось немного не так. Перепробовав несколько обработок, имеющихся на ресурсе, было принято решение сделать свой вариант обработки, попутно обойдя некоторые подводные камни.
В чем отличие моей обработки:
- подходит для новичков: никаких настроек
- обработка может выполняться в фоновом режиме - поставил и забыл. Когда вспомнил, выключил
- предусмотрен обход некоторых типовых ошибок: некорректные символы в имени файла, отсутствие даты создания/изменения
- исключение потери данных: удаление образа файла происходит только тогда, когда успешно выполнена выгрузка
Порядок работы:
1. Включить хранение файлов в томах, создать тома. На форме обработки есть ссылка "Настройки", которая открывает типовую форму "Настройки работы с файлами"
2. Подключить поставляемую обработку как дополнительную обработку.
3. Включить запуск команды обработки по расписанию.
Что происходит дальше: выбираются не более 200 присоединенных файлов, хранящиеся в базе (количество получено опытным путем, при необходимости можно его изменить). Для каждого файла производится сохранение на том и удаление файла из базы. Быстродействие зависит от объема файлов. При среднем размере 1МБ одна итерация занимает около 20 секунд.
Наблюдать за ходом процесса можно с помощью формы обработки, для этого ее нужно открыть в режиме 1С Предприятие (Файл-Открыть). Кнопка "Выполнить обработку" предназначена для отладки и выполняет одну итерацию. Кнопка "Автообновление" включает обновление состояния с интервалом 30с.
Протокол записывается в Журнал регистрации и содержит описание ошибки, а также результат выполнения каждого задания (событие: Присоединенные файлы.Замер времени, Комментарий: Перенос присоединенных файлов: 200 за 19,0 с.)
Обновление:
13.02.2018: добавлена версия обработки для БСП 2.4.*. Перед скачиванием убедитесь, что выбрана правильная версия обработки. Узнать используемую версию БСП можно в регистре сведений Версии подсистем.
19.04.2017: добавлена обработка одной редкой ошибки