Как убрать вложения из документов и справочников 1С и вернуть место в базе
Содержание
Чтобы в 1С удалить прикреплённый файл, откройте документ или элемент справочника, нажмите на скрепку (команда «Присоединённые файлы»), выделите файл и нажмите «Удалить». Это только пометка: окончательно файл исчезнет после Администрирование → Удаление помеченных объектов. А место на диске освободится ещё позже, и не всегда само.
Типичная ситуация: база разрослась до 40 ГБ, бэкап идёт два часа, а виноваты сканы договоров и счетов, которые годами цепляли к каждому документу. Ниже — как убрать один файл, как почистить сразу сотни и почему размер базы после этого может не измениться.
Где 1С хранит присоединённые файлы
Скрепка в документе — это не ссылка на файл на вашем компьютере. Программа кладёт копию внутрь самой системы. Для каждого вида объектов есть свой служебный справочник вида «<Имя объекта> Присоединённые файлы»: у документов поступления свой, у контрагентов свой, у договоров свой.
Физически файл может лежать в двух местах:
- 🗄 В информационной базе. Двоичные данные хранятся прямо в файле
1Cv8.1CDили в таблицах SQL. Так по умолчанию в небольших базах. - 📁 В томах на диске. В базе остаётся только запись о файле, а сам файл лежит в сетевой папке на сервере. Такой вариант включают на больших базах, чтобы не раздувать данные.
От этого зависит всё остальное: где искать «хвосты», как чистить и что освободит место.
Узнать режим можно в разделе настроек администрирования: если там есть «Тома хранения файлов» и в них записи, значит, файлы вынесены на диск.
Как удалить прикреплённый файл из документа
Самый частый сценарий — убрать неверный скан у одного документа.
- Откройте документ (или карточку контрагента, договора, номенклатуры).
- Нажмите значок скрепки или команду «Присоединённые файлы». В некоторых формах она спрятана в меню «Ещё» или в панели навигации слева.
- В списке файлов выделите нужную строку.
- Нажмите «Удалить» (или клавишу
Del). Файл получит пометку удаления и пропадёт из обычного списка. - Закройте окно. Если документ был проведён, перепроводить его не нужно: файл на проводки не влияет.
Пометка на удаление — это ещё не удаление. Пока вы не запустили обработку удаления помеченных, файл физически лежит в базе и занимает место.
Как убрать пометку и вернуть файл
Передумали? В списке файлов включите отображение удалённых (кнопка «Показывать удалённые» или флажок в меню «Ещё») и снимите пометку: правая кнопка → «Снять пометку удаления». Пока объект не удалён окончательно, он восстанавливается без потерь.
Заменить, а не удалять
Если нужно просто подставить правильный скан, не удаляйте старый: откройте файл → «Обновить из файла на диске». История версий при этом сохранится, если включено версионирование файлов.
Окончательное удаление: помеченные файлы и ссылки
Окончательно файл убирает штатная обработка.
- Откройте
Администрирование→Обслуживание→Удаление помеченных объектов. В некоторых конфигурациях раздел называетсяОперации→Удаление помеченных объектов. Если не нашли — введите название в строку поиска по меню. - Выберите режим «Автоматическое удаление» и нажмите «Удалить».
- Дождитесь окончания. Программа сама проверит ссылки и покажет, что не удалилось.
Чаще всего «не удалилось» означает, что на объект кто-то ссылается. Для присоединённых файлов это бывает редко: ссылка на файл обычно только одна, из владельца. Но если владелец сам остался в базе помеченным (например, документ, к которому файл прикреплён), удалять нужно в правильном порядке: сначала владельцы, потом файлы. Автоматический режим делает это сам.
Удаление помеченных объектов нужно запускать в монопольном режиме или когда в базе почти никто не работает. Если сеанс открыт у 15 человек, процесс замедляется и часть объектов пропускается.
Файлы в томах хранения: что остаётся на диске
Если включено хранение в томах, после удаления помеченных объектов запись из базы исчезает, а сам файл на диске иногда остаётся — как «сирота». Для этого в БСП есть штатная очистка ненужных файлов, она же регламентное задание.
Где искать:
- в разделе настроек администрирования найдите «Очистка ненужных файлов» или «Регламентные и фоновые задания», название задания содержит слова «очистка» и «файлы»;
- у задания можно настроить, как часто оно запускается, и ограничить срок хранения удалённых версий;
- если в томе включено ограничение по размеру, программа сама переведёт новые файлы в соседний том.
Что делать с «сиротами» вручную:
- Откройте том хранения и запомните путь к его папке на сервере.
- Запустите штатную проверку целостности файлов (в разделе «Тома хранения файлов» есть команды проверки и сверки).
- Файлы, на которые нет записей в базе, программа предложит удалить или найти.
Руками чистить папки на диске не стоит. Один неверный клик, и у документов останутся записи без файлов, а пользователи получат ошибку «Файл не найден» при открытии.
Массовое удаление: как убрать сотни вложений за раз
Удалять руками по одному — не вариант, когда нужно очистить прошлые годы. Есть три способа, от безопасного к радикальному.
| Способ | Когда подходит | Риск |
|---|---|---|
| Фильтр в списке присоединённых файлов и групповое выделение | Нужно убрать файлы одного типа или периода | Низкий |
| Штатная очистка ненужных файлов | Нужно регулярно подчищать удалённые версии и «сирот» | Низкий |
| Внешняя обработка или запрос в консоли | Нужна выборка по размеру, расширению, дате | Средний: можно удалить лишнее |
Через список присоединённых файлов
В большинстве конфигураций справочник присоединённых файлов можно открыть отдельным списком: введите «присоединённые файлы» в строку поиска по меню и откройте нужный справочник (для документов он часто называется по имени вида документа).
Дальше:
- Включите отбор по дате изменения, расширению или владельцу.
- Выделите строки (
Ctrl+Aвыделяет всё в видимом списке). - Нажмите «Пометить на удаление».
- Запустите «Удаление помеченных объектов».
Если нужны самые тяжёлые файлы
Чтобы найти, что занимает место, отсортируйте список по колонке «Размер», если она включена в настройке формы (Ещё → Изменить форму). Типичные пожиратели места:
- 🖼 сканы в формате
BMPилиTIFFвместоPDFиJPG; - 🎞 видеоролики, которые кто-то прикрепил к задаче;
- 📦 архивы выгрузок, забытые в карточках договоров;
- 📄 десятки версий одного и того же файла.
Файл на 25 МБ в 200 документах — это 5 ГБ. Одно такое решение «положить скан в 600 dpi» объясняет раздутую базу лучше любых догадок.
Запросом в консоли
Запрос работает аккуратно, только если вы его понимаете. Типовой вариант для выборки крупных файлов по одному справочнику:
ВЫБРАТЬ ПЕРВЫЕ 100
Файлы.Ссылка,
Файлы.Наименование,
Файлы.Размер
ИЗ
Справочник.<ИмяСправочникаПрисоединенныхФайлов> КАК Файлы
ГДЕ
Файлы.Размер > 10485760
УПОРЯДОЧИТЬ ПО
Файлы.Размер УБЫВ
Подставьте имя вашего справочника вместо <ИмяСправочникаПрисоединенныхФайлов>: его видно в конфигураторе или в консоли запросов при выборе таблиц. Число 10485760 — это 10 МБ в байтах. Запрос только читает, ничего не меняет, так что его безопасно запускать на рабочей базе.
Не удаляйте записи справочника программно, пока не сделали копию. Прямое удаление в обход пометки не очищает связанные данные и не проверяет ссылки.
Веб-клиент и тонкий клиент: что меняется
Порядок действий одинаков, отличается только поведение интерфейса.
- 🌐 Веб-клиент. Команда «Присоединённые файлы» и кнопка «Удалить» те же. Добавление и открытие файлов работает через расширение браузера, а удаление — нет: оно идёт на сервере. Если кнопки нет, проверьте права, а не расширение.
- 🖥 Тонкий клиент. Все диалоги открываются как обычные окна. При удалении сотен файлов интерфейс может подвиснуть: не закрывайте окно, процесс идёт на сервере.
- 📱 Мобильное приложение. Файлы удаляются из карточки объекта, но массовой очистки там нет.
Если кнопки «Удалить» не видно
Три причины, от частой к редкой:
- У роли нет права на удаление присоединённых файлов, оно настраивается отдельно от права на сам документ. Решает администратор в профиле группы доступа.
- Документ в закрытом периоде или файл захвачен на редактирование другим пользователем (на файле стоит значок замка). Освободите его через «Закончить редактирование».
- Включено ограничение на удаление чужих файлов: удалять может только тот, кто добавил.
Администрирование → Удаление помеченных объектов и дождитесь завершения.База не уменьшилась: сжатие после очистки
Самая частая жалоба после удаления: «удалили 6 ГБ вложений, а 1Cv8.1CD как был 38 ГБ, так и остался». Это не ошибка, файл базы сам не сжимается. Освобождённые страницы остаются внутри файла и переиспользуются новыми данными.
Как вернуть место зависит от типа базы.
| Тип базы | Что сделать |
|---|---|
| Файловая | Выгрузить информационную базу в .dt и загрузить в чистую базу, либо выполнить в конфигураторе тестирование и исправление со сжатием таблиц |
| Клиент-серверная, MS SQL | Сжать файлы данных средствами SQL Server, после проверки, что есть свободное место под операцию |
| Клиент-серверная, PostgreSQL | Выполнить VACUUM FULL для самых раздутых таблиц в окне обслуживания |
| Файлы в томах | Размер базы не изменится, место освобождается на диске тома после очистки |
Рабочий порядок действий для файловой базы:
- Сделайте копию каталога базы, пока никто не работает.
- В конфигураторе:
Администрирование→Выгрузить информационную базу. - Создайте новую пустую базу и загрузите туда
.dt:Администрирование→Загрузить информационную базу. - Сравните размер каталога: если вложений было много, выигрыш в десятки процентов — обычное дело.
Для клиент-серверных баз сжатие делает администратор СУБД. Не запускайте его в рабочее время: VACUUM FULL блокирует таблицу на всё время работы.
Как не допустить новой свалки файлов
Лучше настроить правила один раз, чем раз в год чистить базу.
- 🔒 Ограничьте максимальный размер файла в настройках работы с файлами (разумный предел для сканов — 10–20 МБ).
- 🚫 Запретите ненужные расширения: видео и архивы в учётной базе не нужны.
- 📁 Вынесите хранение в тома, если база больше 10–15 ГБ.
- 🧹 Включите регламентную очистку и проверьте, что она реально отрабатывает.
- 📝 Договоритесь, в каком формате прикреплять сканы:
PDF, 200 dpi, чёрно-белый.
.dt для файловой базы, обслуживание СУБД для серверной.