При работе с базами данных «1С:Предприятие» со временем неизбежно возникает проблема увеличения их объема. База начинает «тормозить», операции резервного копирования и обновления занимают слишком много времени, а отчеты формируются медленнее. В таких случаях администраторы и программисты прибегают к процедуре свертки (или «обрезки») информационной базы. Давайте подробно разберем, как обстоит ситуация со сверткой старой, но все еще популярной конфигурации «1С:Бухгалтерия предприятия» редакции 2.0 (БП 2.0), есть ли для этого стандартные инструменты на диске ИТС и какие альтернативные варианты решения существуют.
На официальных дисках и портале ИТС (Информационно-Технологическое Сопровождение) действительно присутствует универсальная обработка для свертки баз данных, которая называется СверткаИнформационнойБазы.epf (или пакет BaseTrimming). Однако этот инструмент разрабатывался достаточно давно — еще во времена платформы «1С:Предприятие 8.1» и старых конфигураций, таких как «Бухгалтерия предприятия» редакции 1.6, «Управление торговлей» редакции 10.3 или «Управление производственным предприятием» редакции 1.2.
Давайте проанализируем, почему стандартная версия этой обработки с ИТС выдает ошибку при попытке запустить ее в БП 2.0. При запуске вы, скорее всего, увидите следующее критическое уведомление:
«В конфигурации отсутствует документ "КорректировкаЗаписейРегистров". Использование обработки невозможно»
Выясним причину этой ошибки. Дело в том, что в архитектуре «1С:Бухгалтерии 2.0» разработчики полностью изменили структуру метаданных. Документ КорректировкаЗаписейРегистров, на который жестко завязан алгоритм стандартной обработки ИТС, был исключен из конфигурации. Вместо него для ручных корректировок и ручного ввода движений по регистрам используется специализированный документ ОперацияБух (в интерфейсе он называется «Операция (бухгалтерский и налоговый учет)»). Поскольку обработка ИТС не находит ожидаемый объект метаданных, ее выполнение аварийно завершается.
Ниже мы подробно рассмотрим три основных и наиболее эффективных варианта решения этой проблемы, которые применяются на практике.
Поскольку фирма «1С» не выпускала отдельную специализированную обработку свертки именно под БП 2.0 в качестве внешнего файла, программисты сообщества адаптировали стандартный инструмент самостоятельно. Как раз такой адаптированной версией и поделились технические специалисты в обсуждении на форуме.
Суть доработки оригинальной обработки ИТС заключается в следующем:
Документы.КорректировкаЗаписейРегистров.Документы.ОперацияБух.Если мы заглянем внутрь кода такой обработки, то увидим, что генерация корректирующих документов адаптирована под механизмы БП 2.0. Давайте посмотрим на концептуальный пример кода, который заменяет создание стандартного документа корректировки на ручную операцию:
// Пример модификации кода для работы в Бухгалтерии 2.0
НовыйДокумент = Документы.ОперацияБух.СоздатьДокумент();
НовыйДокумент.Дата = ДатаСвертки;
НовыйДокумент.Организация = ВыбраннаяОрганизация;
НовыйДокумент.Содержание = "Свертка информационной базы на " + Формат(ДатаСвертки, "ДЛФ=D");
НовыйДокумент.Записать(РежимЗаписиДокумента.Запись);
// Далее следует заполнение движений по регистрам бухгалтерии и накопления
Использование готовой адаптированной обработки — это самый простой путь, позволяющий свернуть базу в полуавтоматическом режиме прямо через меню «Файл — Открыть».
Многие опытные администраторы баз данных 1С предпочитают не «резать» живую рабочую базу обработками, а использовать метод переноса остатков. Давайте разберем по шагам этот элегантный и надежный способ:
УниверсальныйОбменДаннымиXML. Для выгрузки остатков применяются правила конвертации данных (например, адаптированные правила ACC20_20.xml).Этот подход имеет колоссальное преимущество перед обычной сверткой: новая база получается абсолютно чистой, в ней отсутствуют скрытые «битые» ссылки, временные таблицы и фрагментация индексов. Размер базы уменьшается максимально возможным образом, и она сразу готова к быстрой работе без дополнительного обслуживания.
Если ваше предприятие планирует или уже готово к переходу на современную редакцию 3.0 (работающую на управляемых формах), то оптимальным решением будет сначала обновить конфигурацию до БП 3.0, а затем выполнить свертку встроенными средствами.
Давайте проанализируем, почему этот вариант наиболее безопасен и прост:
Независимо от того, какой способ свертки для своей «1С:Бухгалтерии 2.0» вы выберете, обязательно соблюдайте жесткие правила безопасности технического обслуживания баз данных. Давайте составим чек-лист обязательных действий:
Администрирование -> Выгрузить информационную базу...). Ни в коем случае не пренебрегайте этим шагом!Тестирование и исправление информационной базы с включенными опциями Реиндексация таблиц и Сжатие таблиц, чтобы уменьшить реальный физический размер файла базы данных (1Cv8.1CD) на диске.Таким образом, хотя штатный инструмент с ИТС напрямую не подходит для редакции 2.0 из-за отсутствия нужного документа в метаданных, проблема легко решается использованием адаптированных версий обработки, переносом данных через XML или обновлением до актуальной версии БП 3.0, где данный функционал работает стабильно и безотказно.