Администрирование · 12 мин
Как навести порядок в базе 1С
Практическое руководство по наведению порядка в базе 1С: чистка справочников, удаление дублей, помеченных объектов, тестирование и исправление, регламент обслуживания.
База 1С, в которой годами вели учёт несколько сотрудников, неизбежно обрастает проблемами: дубли контрагентов и номенклатуры, тысячи помеченных на удаление документов, «битые» ссылки, необменённые остатки и заметно замедлившаяся работа. Навести порядок — значит не просто «почистить», а выполнить последовательность действий: диагностику, резервное копирование, удаление мусора, исправление ошибок ссылочной целостности и настройку регламентного обслуживания, чтобы хаос не вернулся.
Главная ошибка при наведении порядка — начинать с удаления данных без копии и без понимания, что именно считается мусором. Помеченный объект может участвовать в оборотах прошлых периодов, дубль контрагента — иметь свои договоры и документы, а «старая» номенклатура — фигурировать в отчётности. Поэтому работа строится по принципу: сначала анализ и копия, затем чистка, затем проверка результата.
Ниже — прикладной порядок действий, который подходит для типовых конфигураций (Бухгалтерия, Управление торговлей, ERP, ЗУП) как в файловом, так и в клиент-серверном варианте. Конкретные названия разделов могут немного отличаться между версиями, но логика и типовые инструменты совпадают.
Шаг 1. Оцените состояние базы и зафиксируйте проблемы
Прежде чем что-то удалять, составьте список конкретных проблем. Типовые признаки захламлённости: медленное проведение документов и формирование отчётов, длинные списки при выборе контрагентов и номенклатуры, ошибки вида «объект не найден» в отчётах, невозможность свернуть базу или выполнить обмен из-за объёма данных.
Для оценки используйте встроенные средства. В разделе «Администрирование» большинства типовых конфигураций есть пункты «Обслуживание», «Удаление помеченных объектов», «Поиск и удаление дублей». Откройте их и посмотрите масштаб: сколько объектов помечено на удаление, сколько дублей находит обработка в справочниках «Контрагенты», «Номенклатура», «Физические лица».
Отдельно проверьте журналы ошибок и технологический журнал (в клиент-серверном варианте): повторяющиеся ошибки блокировок, тайм-ауты и обрывы транзакций указывают не только на мусор, но и на проблемы инфраструктуры, которые чисткой не решаются.
Откройте «Удаление помеченных объектов» и посмотрите количество
Запустите тестирование и исправление в режиме проверки ссылочной целостности
Используйте обработку «Поиск и удаление дублей»
Сравните размер базы и проверьте диски/СУБД
Шаг 2. Сделайте резервную копию и проверьте, что она восстанавливается
Это обязательный шаг перед любыми массовыми изменениями. Для файловой базы достаточно выгрузки через «Конфигуратор → Администрирование → Выгрузить информационную базу» в файл .dt или копирования файла 1Cv8.1CD при остановленной работе пользователей. Для клиент-серверной базы делайте выгрузку .dt и/или полный бэкап средствами СУБД (MS SQL, PostgreSQL).
Копия, которую не проверяли, — это не копия. Хотя бы один раз восстановите выгрузку в тестовую базу и убедитесь, что она открывается, проводится документ и строится ключевой отчёт. Все дальнейшие эксперименты с чисткой безопаснее сначала отработать именно на этой тестовой копии, а не на рабочей базе.
Шаг 3. Удалите помеченные объекты и технический мусор
Начинайте чистку с самого безопасного — удаления объектов, помеченных на удаление. В типовых конфигурациях: «Администрирование → Обслуживание → Удаление помеченных объектов». Выбирайте режим «Выборочное удаление», чтобы видеть, что именно удаляется, и реагировать на объекты, которые удалить нельзя из-за ссылок на них.
Если объект не удаляется, система показывает список мест использования. Здесь два варианта: либо объект действительно нужен (тогда снимите пометку удаления), либо нужно сначала удалить или перепровести ссылающиеся документы. Не стремитесь «вычистить всё до нуля» за один проход — часть объектов законно останется из-за ссылок в закрытых периодах.
Дополнительно очистите технические данные: историю версий объектов (если включено версионирование), устаревшие сообщения обменов, результаты фоновых заданий, регистры сведений с протоколами обменов. В типовых конфигурациях для этого есть регламентные задания и обработки в разделе «Администрирование → Обслуживание».
- 1Сделайте резервную копию и убедитесь, что она восстанавливается
- 2Откройте «Администрирование → Обслуживание → Удаление помеченных объектов»
- 3Выберите выборочный режим и просмотрите состав удаляемых данных
- 4Запустите удаление и разберите объекты, которые не удалились из-за ссылок
- 5Повторите проход после обработки ссылающихся документов
Шаг 4. Уберите дубли в справочниках
Дубли контрагентов и номенклатуры — главный источник «грязи» в отчётах: один поставщик заведён пять раз, один товар — тремя разными наименованиями. Для типовых конфигураций используйте обработку «Поиск и удаление дублей» (обычно в разделе «Администрирование → Обслуживание → Корректировка данных»).
Обработка ищет совпадения по заданным правилам: по ИНН и КПП для контрагентов, по наименованию и артикулу для номенклатуры. Для каждой группы дублей назначается «оригинал», а все ссылки (документы, договоры, остатки) переносятся на него, после чего дубли помечаются на удаление. Проверяйте группы вручную хотя бы выборочно: автоматика может ошибочно объединить разных контрагентов с похожими названиями.
После объединения дублей повторно запустите удаление помеченных объектов — освободятся карточки, которые раньше нельзя было удалить. Для предотвращения новых дублей настройте контроль уникальности: например, проверку ИНН при создании контрагента, и закрепите в регламенте правило «перед созданием нового элемента — поиск по базе».
Шаг 5. Выполните тестирование и исправление
После массовых удалений запустите штатную процедуру «Конфигуратор → Администрирование → Тестирование и исправление». Она проверяет ссылочную целостность (в том числе наличие «битых» ссылок на удалённые объекты), логическую целостность данных и состояние индексов. Выполняйте её в монопольном режиме — пользователи не должны работать в базе.
Порядок режимов имеет значение: сначала «Проверка ссылочной целостности», затем «Проверка логической целостности данных», затем «Реиндексация таблиц». Для файловой базы также доступно сжатие таблиц. Начинайте с режима «Только тестирование», оцените список ошибок, и только потом запускайте исправление — с пониманием, что система будет делать с найденными проблемами (например, очищать битые ссылки).
Для клиент-серверных баз часть задач эффективнее выполнять средствами СУБД: перестроение индексов, обновление статистики, контроль размера журнала транзакций. Это зона ответственности администратора СУБД — при отсутствии компетенций лучше привлечь специалиста, чем экспериментировать на рабочей базе.
Шаг 6. Разберитесь с объёмом данных и старыми периодами
Если база работает много лет, значительную часть объёма составляют документы и движения давно закрытых периодов. Удалять их вручную нельзя — это нарушит отчётность и последовательности. Правильный инструмент — свёртка базы: штатная обработка (например, «Свёртка информационной базы» в типовых конфигурациях) формирует документы ввода остатков на дату свёртки и помечает старые документы на удаление.
Свёртка — сложная операция с серьёзными ограничениями: она требует закрытых и выверенных периодов, корректных остатков и обязательной проверки результата на копии. После свёртки история детальных документов теряется, поэтому старую базу сохраняют в архиве как «базу-справочник» для доступа к первичке при проверках.
Если свёртка пока не нужна, ограничьтесь регулярной чисткой помеченных объектов, версий и протоколов обменов — часто именно они дают основной прирост объёма в активно работающих базах.
Как выбрать подходящее действие
Шаг 7. Настройте регламент, чтобы порядок сохранялся
Разовая чистка решает проблему на несколько месяцев. Чтобы база не засорялась снова, включите и настройте регламентные задания: автоматическое удаление помеченных объектов, очистку устаревших версий объектов, протоколов обменов и результатов фоновых заданий. В типовых конфигурациях они настраиваются в «Администрирование → Обслуживание → Регламентные операции».
Закрепите организационные правила: единый порядок заведения контрагентов (с обязательной проверкой по ИНН), запрет на создание номенклатуры без поиска аналога, ответственных за ведение ключевых справочников. Технические средства без дисциплины пользователей дают лишь временный эффект.
Раз в квартал проводите контрольную проверку: количество помеченных объектов, наличие дублей, размер базы, отсутствие ошибок при тестировании ссылочной целостности. Это занимает немного времени и позволяет вовремя заметить отклонения.
Как проверить результат чистки
Остались единичные объекты со ссылками в закрытых периодах
Тысячи объектов, список не уменьшается после повторных проходов
Обработка поиска дублей ничего не находит
Новые дубли появляются сразу после чистки
Тестирование не выявляет битых ссылок
Ошибки «объект не найден» в отчётах и журнале
Отчёты и проведение заметно ускорились
Скорость не изменилась — ищите причину в инфраструктуре
Частые вопросы
Можно ли удалять документы прошлых лет вручную?
Нет. Ручное удаление документов закрытых периодов нарушает последовательность проведения, итоги и отчётность, а первичные документы организация обязана хранить. Для сокращения объёма старых данных используйте штатную свёртку базы, которая корректно формирует остатки на дату свёртки.
Что делать, если объект не удаляется из-за ссылок на него?
Откройте список мест использования, который показывает обработка удаления. Либо удалите/перепроведите ссылающиеся документы, либо замените в них ссылки (например, при объединении дублей обработка делает это автоматически), либо снимите пометку удаления, если объект на самом деле нужен.
Опасно ли запускать «Тестирование и исправление»?
Сама проверка безопасна, но режим с исправлением изменяет данные: например, очищает битые ссылки. Поэтому его запускают только в монопольном режиме, на нерабочее время и при наличии проверенной резервной копии. Сначала выполните тестирование без исправления и оцените перечень ошибок.
Как часто нужно чистить базу?
При настроенных регламентных заданиях (автоудаление помеченных объектов, очистка версий и протоколов) ручная чистка требуется редко. Достаточно ежеквартального контроля: дубли, объём помеченных объектов, ссылочная целостность, размер базы.
База медленно работает — поможет ли чистка?
Только если причина в объёме данных: миллионы записей в регистрах, огромные таблицы версий и протоколов. Если объём умеренный, а скорость низкая, причина обычно в инфраструктуре — диски, СУБД, сеть, нехватка ресурсов сервера. В этом случае чистка данных эффекта не даст.
Нужно ли чистить базу перед обновлением конфигурации?
Желательно: меньший объём данных ускоряет обновление и снижает риск ошибок. Минимум перед обновлением — удалить помеченные объекты, выполнить тестирование ссылочной целостности и сделать резервную копию.
Что важно запомнить
Порядок наводится последовательно: копия → диагностика → удаление помеченных объектов → дубли → тестирование и исправление → регламентное обслуживание. Никаких массовых операций без проверенной резервной копии, а устойчивый результат даёт не разовая чистка, а регламентные задания и дисциплина пользователей.