Работа с отчетами в 1С:Предприятие 8.3 часто сопровождается накоплением устаревших или дублирующихся вариантов, которые загромождают интерфейс и замедляют работу системы. Очистка этих вариантов — рутинная, но необходимая задача, особенно если отчеты формируются регулярно с разными параметрами. В отличие от удаления документов, очистка вариантов отчетов требует аккуратности: неправильные действия могут привести к потере важных настроек или даже сбоям в работе программы.

В этой статье мы разберем все доступные способы очистки — от простых методов для обычных пользователей до продвинутых инструментов для администраторов. Вы узнаете, как удалить ненужные варианты вручную, с помощью обработок, а также как автоматизировать процесс через конфигуратор. Особое внимание уделим типичным ошибкам и способам их избежать, чтобы очистка прошла без последствий для работоспособности базы.

Почему накапливаются варианты отчетов и когда их нужно чистить

Каждый раз, когда пользователь формирует отчет с уникальными параметрами (например, другим периодом, организацией или фильтром), сохраняет эти настройки как новый вариант отчета. Со временем их количество может достичь сотен, что приводит к:

  • 🐢 Замедлению работы — система дольше грузит список вариантов при открытии отчета.
  • 🔍 Путанице среди пользователей — сложно найти актуальный вариант среди десятков устаревших.
  • 💾 Увеличению размера базы — варианты хранятся в метаданных и занимают место.
  • 🔄 Ошибкам при обновлении — некоторые обработки могут конфликтовать с большим количеством сохраненных настроек.

Очищать варианты отчетов рекомендуется в следующих случаях:

  • 📅 Перед обновлением конфигурации (чтобы избежать конфликтов).
  • 🧹 При миграции на новую версию 1С или переносе базы.
  • 🛠️ Если отчеты начали дольше грузиться без видимых причин.
  • 👥 При смене состава пользователей (например, уволился сотрудник, оставив свои варианты).
📊 Как часто вы очищаете варианты отчетов в 1С?
Никогда не очищал
Раз в год
Каждый квартал
Перед обновлением конфигурации
По мере необходимости

Важно понимать, что варианты отчетов хранятся индивидуально для каждого пользователя (если не настроено иное). Это значит, что очистка должна проводиться под учетной записью того пользователя, чьи варианты нужно удалить, либо администратором с соответствующими правами.

Способ 1: Ручная очистка через интерфейс 1С (для пользователей)

Самый простой метод — удаление ненужных вариантов непосредственно в окне отчета. Он подходит для обычных пользователей и не требует прав администратора. Рассмотрим пошаговую инструкцию:

  1. Откройте нужный отчет через меню Отчеты → [Название отчета].

  2. В окне отчета найдите кнопку Варианты (обычно расположена в верхней панели инструментов).

  3. В выпадающем списке выберите пункт Управление вариантами....

  4. Откроется окно со списком всех сохраненных вариантов. Выделите ненужные (можно использовать Ctrl+клик для множественного выбора).

  5. Нажмите кнопку Удалить (значок корзины) и подтвердите действие.

Этот способ удобен для удаления отдельных вариантов, но неэффективен, если их сотни. К тому же, он не позволяет очистить варианты других пользователей.

Закройте все открытые отчеты в 1С

Сделайте резервную копию базы (на случай ошибки)

Уточните у коллег, какие варианты можно удалять

Проверьте права доступа (должна быть галочка "Изменение вариантов отчетов")

-->

⚠️ Внимание: При ручном удалении вариантов отчетов в 1С:ЗУП или 1С:Бухгалтерия будьте осторожны с вариантами, связанными с регламентированной отчетностью (например, 2-НДФЛ или 6-НДФЛ). Их удаление может привести к потере истории отправленных отчетов.

Способ 2: Очистка через обработку "Управление вариантами отчетов"

Для массового удаления вариантов удобнее использовать специализированную обработку, которая поставляется вместе с 1С:Предприятие. Она позволяет:

  • 🔍 Просматривать варианты всех пользователей.
  • 🗑️ Удалять их пакетно (по фильтру).
  • 🔄 Восстанавливать удаленные варианты (если не прошло много времени).

Чтобы открыть обработку:

  1. Перейдите в меню Файл → Открыть....

  2. В каталоге установки 1С (обычно C:\Program Files\1cv8\) найдите файл VariantManager.epf.

  3. Запустите обработку. Если файла нет, его можно скачать с портала ИТС (требуется подписка).

В интерфейсе обработки:

  1. Выберите базу данных и пользователя (если нужно очистить чужие варианты).

  2. Отметьте галочками ненужные варианты или используйте фильтр по дате/названию.

  3. Нажмите Удалить отмеченные.

Обработка VariantManager.epf поддерживает работу с большинством типовых конфигураций (1С:Бухгалтерия, 1С:ЗУП, 1С:УТ), но может не корректно отображать варианты в сильно доработанных решениях.

💡

Перед массовым удалением экспортируйте список вариантов в Excel через кнопку "Выгрузить" в обработке. Это поможет восстановить случайно удаленные настройки.

Способ 3: Очистка через конфигуратор (для администраторов)

Если ручные методы не помогают или нужно очистить варианты для всех пользователей сразу, администратор может воспользоваться конфигуратором. Этот способ требует прав доступа к конфигурированию базы и рекомендуется для опытных пользователей.

Инструкция:

  1. Запустите 1С:Предприятие в режиме Конфигуратор (выберите базу и удерживайте Shift при запуске).

  2. Перейдите в меню Администрирование → Поддержка и обслуживание → Управление вариантами отчетов.

  3. В открывшемся окне выберите:

    • 📋 Тип объекта (например, "Отчет").
    • 📊 Конкретный отчет (или оставьте пустым для всех).
    • 👤 Пользователя (или "Все пользователи").
  • Нажмите Найти, отметьте ненужные варианты и удалите их кнопкой Удалить отмеченные.

  • В конфигураторе также доступна полная очистка всех вариантов для выбранного отчета или пользователя. Для этого:

    1. В том же окне нажмите Действия → Очистить все варианты.

    2. Подтвердите действие (это удалит все сохраненные настройки без возможности восстановления!).

    3. ⚠️ Внимание: Очистка через конфигуратор необратимо удаляет варианты, включая системные (например, стандартные настройки регламентированных отчетов). Перед массовым удалением проверьте, не используются ли эти варианты в регламентных задачах или интеграциях.
      Способ очистки Требуемые права Макс. количество удаляемых вариантов Возможность восстановления Подходит для
      Ручная очистка Пользовательские (право на изменение своих вариантов) Ограничено интерфейсом (до 50-100 за раз) Да (через корзину) Удаление отдельных вариантов
      Обработка VariantManager.epf Администратор или полные права Неограничено Частично (если не прошло много времени) Массовая очистка для нескольких пользователей
      Конфигуратор Права конфигурирования Неограничено Нет Глобальная очистка для всех пользователей
      SQL-запрос Прямой доступ к базе данных Неограничено Нет (без бэкапа) Технические работы (только для опытных)

      Способ 4: Очистка через SQL-запросы (для технических специалистов)

      В редких случаях, когда варианты отчетов "зависнут" в базе и не удаляются стандартными методами, можно прибегнуть к прямой очистке через SQL. Этот способ требует знания структуры базы данных и рекомендуется только для специалистов.

      Варианты отчетов хранятся в таблицах:

      • ConfigSave — основные данные вариантов.
      • ConfigSaveUsers — привязка вариантов к пользователям.

      Пример запроса для удаления всех вариантов отчета ОтчетПоПродажам для пользователя ИвановИИ (для Microsoft SQL Server):

      DELETE FROM ConfigSaveUsers
      

      WHERE UserName = 'ИвановИИ'

      AND ID IN (

      SELECT CS.ID

      FROM ConfigSave CS

      WHERE CS.Name LIKE '%ОтчетПоПродажам%'

      );

      DELETE FROM ConfigSave

      WHERE Name LIKE '%ОтчетПоПродажам%';

      Для PostgreSQL синтаксис аналогичен, но может потребоваться адаптация под конкретную версию СУБД.

      Что будет, если ошибся в SQL-запросе?

      Неправильный SQL-запрос может привести к:

      - Удалению всех вариантов отчетов в базе (если не указать фильтр по имени).

      - Повреждению связей между таблицами ConfigSave и ConfigSaveUsers.

      - Ошибкам при открытии отчетов ("Вариант не найден").


      Всегда делайте бэкап базы перед выполнением SQL-запросов!

      ⚠️ Внимание: Структура таблиц ConfigSave может отличаться в разных версиях 1С:Предприятие (8.2, 8.3) и типах СУБД (MSSQL, PostgreSQL, файловый вариант). Перед выполнением запросов сверьте актуальную схему базы в документации или через IBM Data Studio/pgAdmin.

      Типичные ошибки и как их избежать

      Очистка вариантов отчетов кажется простой процедурой, но на практике пользователи часто сталкиваются с проблемами. Рассмотрим наиболее распространенные ошибки и способы их предотвращения:

      • 🚫 Удаление системных вариантов — некоторые отчеты (например, Баланс или Оборотно-сальдовая ведомость) имеют предопределенные варианты, которые используются в регламентных задачах. Их удаление может нарушить работу фоновых процессов.

        Решение: Перед удалением проверьте, не помечен ли вариант как "Системный" или "По умолчанию".

      • 🔒 Нехватка прав — пользователь пытается удалить варианты другого сотрудника без соответствующих полномочий.

        Решение: Запросите права у администратора или выполните очистку через конфигуратор.

      • 🗑️ Неполное удаление — после очистки варианты продолжают отображаться (обычно из-за кэша).

        Решение: Перезапустите 1С или очистите кэш через Файл → Открыть → [Выбрать базу] → Кнопка "Очистить кэш".

      • 🔄 Потеря актуальных настроек — случайное удаление используемых вариантов.

        Решение: Перед массовой очисткой экспортируйте варианты в файл (через обработку VariantManager.epf).

      Еще одна частая проблема — ошибка "Вариант отчета не найден" после очистки. Она возникает, если:

      • Вариант был удален, но на него ссылается регламентное задание.
      • Пользователь пытается открыть вариант, который принадлежит другому пользователю.
      • Произошел сбой при удалении, и запись осталась в таблице ConfigSaveUsers, но отсутствует в ConfigSave.

    Для восстановления работоспособности:

    1. Проверьте регламентные задания в Администрирование → Регламентные задания.

    2. Если ошибка возникает у конкретного пользователя, попробуйте сбросить его настройки через конфигуратор (Администрирование → Пользователи → Сбросить настройки).

    3. В крайнем случае восстановите базу из бэкапа.

    Автоматизация очистки: как избежать накопления вариантов

    Чтобы не очищать варианты отчетов вручную, можно настроить автоматическую очистку или ограничить их создание. Рассмотрим несколько подходов:

    • 📅 Регулярная очистка по расписанию — с помощью регламентного задания:

      Создайте обработку, которая будет удалять варианты старше определенного срока (например, 6 месяцев), и запускайте ее ежемесячно.

    • 🔧 Ограничение прав на сохранение вариантов — в настройках ролей (Администрирование → Роли) можно убрать галочку Сохранение вариантов отчетов для определенных групп пользователей.
    • 🤖 Использование внешних обработок — например, "Универсальный менеджер вариантов" с портала ИТС, который позволяет настроить правила автоматической очистки.
    • 📂 Архивация старых вариантов — вместо удаления можно переносить редко используемые варианты в отдельный каталог (если это поддерживает конфигурация).

    Пример кода для регламентного задания (удаляет варианты старше 180 дней):

    Процедура ОчиститьСтарыеВариантыОтчетов() Экспорт
    
    

    Запрос = Новый Запрос;

    Запрос.Текст =

    "ВЫБРАТЬ

    | УправлениеВариантамиОтчетов.ВариантыОтчетов КАК Варианты

    |ИЗ

    | Каталог.УправлениеВариантамиОтчетов КАК УправлениеВариантамиОтчетов

    |ГДЕ

    | УправлениеВариантамиОтчетов.ДатаСохранения < &ДатаГраница";

    Запрос.УстановитьПараметр("ДатаГраница", ТекущаяДата() - 180);

    Результат = Запрос.Выполнить();

    Выборка = Результат.Выбрать();

    Пока Выборка.Следующий() Цикл

    Попытка

    УправлениеВариантамиОтчетов.УдалитьВариант(Выборка.Варианты);

    Исключение

    ЗаписатьЖурналРегистрации(НСтр("ru = 'Ошибка при удалении варианта: '") + ОписаниеОшибки(), УровеньЖурналаРегистрации.Ошибка);

    КонецПопытки;

    КонецЦикла;

    КонецПроцедуры

    Этот код нужно разместить в модуле регламентного задания и настроить его периодический запуск (например, раз в месяц).

    💡

    Автоматическая очистка снижает риск потери важных вариантов, так как удаляются только устаревшие данные по заданным критериям (дате, пользователю, типу отчета).

    FAQ: Частые вопросы по очистке вариантов отчетов в 1С

    Можно ли восстановить удаленный вариант отчета?

    Да, но только если:

    • Удаление было выполнено через интерфейс 1С (вариант попадает в "корзину" и хранится там несколько дней).
    • Использовалась обработка VariantManager.epf с опцией архивации перед удалением.
    • Есть резервная копия базы, сделанная до очистки.

    Если вариант был удален через конфигуратор или SQL-запрос без бэкапа, восстановление невозможно.

    Почему после очистки варианты снова появляются?

    Это происходит из-за:

    • Кэширования — перезапустите 1С или очистите кэш (Файл → Открыть → [База] → Очистить кэш).
    • Регламентных заданий — некоторые отчеты автоматически восстанавливают свои варианты при следующем запуске.
    • Общих настроек — если вариант помечен как "Общий", он может подгружаться из шаблонов.
    Как очистить варианты для всех пользователей сразу?

    Есть два способа:

    1. Через конфигуратор:
      • Откройте Администрирование → Поддержка и обслуживание → Управление вариантами отчетов.
      • В поле "Пользователь" выберите "Все пользователи".
      • Отметьте ненужные варианты и удалите их.
  • Через SQL-запрос (только для опытных):
    DELETE FROM ConfigSave WHERE Name LIKE '%ИмяОтчета%';
    Внимание! Это удалит варианты всех пользователей без возможности восстановления.
  • Можно ли отключить сохранение вариантов отчетов совсем?

    Да, это можно сделать:

    • Глобально — в конфигураторе отредактируйте роль пользователя, сняв галочку Сохранение вариантов отчетов.
    • Для конкретного отчета — в его модуле добавьте код, который будет блокировать сохранение:
      Процедура ПередЗаписью(Отказ)
      

      Если ЭтотОбъект.ЭтоГрупповоеИзменение() Тогда

      Сообщить("Сохранение вариантов отключено!");

      Отказ = Истина;

      КонецЕсли;

      КонецПроцедуры

    Учтите, что это может усложнить работу пользователей, которые привыкли сохранять свои настройки.

    Как очистить варианты в облачной версии 1С (1C:Fresh)?

    В 1С:Fresh доступ к конфигуратору и SQL ограничен, поэтому:

    1. Используйте ручную очистку через интерфейс (как описано в Способе 1).
    2. Обратитесь в техническую поддержку 1С с запросом на очистку (указывайте ID базы и список отчетов).
    3. Для массовой очистки можно написать обработку на встроенном языке и запустить ее в пользовательском режиме.

    Автоматическая очистка через регламентные задания в 1С:Fresh работает так же, как и в локальной версии.