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

Важно понимать, что механизм хранения истории отличается в зависимости от версии платформы (8.2 vs 8.3), режима работы (файловый/клиент-серверный) и конфигурации (УТ 11, БП 3.0, ЗУП 3.1 и др.). Мы рассмотрим универсальные решения, а также нюансы для популярных редакций. Если вы работаете в облачной версии 1С:Fresh, часть методов будет недоступна — об этом предупредим отдельно.

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

Система автоматически сохраняет последние 20–100 отборов (в зависимости от настроек) для каждого пользователя. Это ускоряет работу, но приводит к следующим проблемам:

  • 📈 Замедление интерфейса: при открытии формы отчёта или справочника система подгружает все сохранённые отборы, что увеличивает время ожидания.
  • 🔍 Утечка конфиденциальных данных: если в отборе указаны конкретные суммы, контрагенты или периоды, другой пользователь с доступом к этому рабочему месту может их увидеть.
  • 🗑️ Нагромождение устаревших записей: отборы за прошлые годы или по удалённым элементам справочников остаются в истории, мешая поиску актуальных.
  • 🛠️ Ошибки при обновлении: в редких случаях повреждённые записи истории могут вызывать сбои при открытии форм.

Рекомендуемая частота очистки:

  • 🏢 Для бухгалтеров и финансовых служб: ежемесячно (особенно перед закрытием периода).
  • 📦 Для складских работников: раз в квартал или при смене номенклатурной группы.
  • 👨‍💼 Для кадровых специалистов: перед уходом сотрудника или при работе с персональными данными.
📊 Как часто вы чистите историю отборов в 1С?
Никогда не чистил
Раз в год
Раз в квартал
Каждый месяц
По мере накопления

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

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

Инструкция:

  1. Откройте любой отчёт, обработку или справочник, где есть история отборов (например, Отчёты → Оборотно-сальдовая ведомость).
  2. Нажмите на поле отбора (обычно рядом с кнопкой Ещё → История отборов или значком 🔍).
  3. В выпадающем списке наведите курсор на ненужную запись и нажмите Delete или выберите Удалить в контекстном меню (правая кнопка мыши).
  4. Для полной очистки повторите действие для всех записей.

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

Закройте все открытые отчёты и обработки|

Сделайте резервную копию базы (для клиент-серверного варианта)|

Проверьте права доступа (нужны права на изменение пользовательских настроек)|

Убедитесь, что никто другой не работает с этими формами-->

Способ 2: Очистка через «Пользовательские настройки»

Если стандартное удаление не сработало или история отборов хранится в пользовательском профиле, используйте этот метод. Он подходит для 1С:Предприятие 8.3 и требует прав администратора или доступа к Администрированию.

Пошаговая инструкция:

  1. Перейдите в Администрирование → Пользователи и права → Пользовательские настройки (путь может отличаться в зависимости от конфигурации).
  2. В списке найдите текущего пользователя и откройте его настройки.
  3. Перейдите на вкладку Отчёты и обработки или История отборов (название зависит от версии).
  4. Выделите все записи (сочетание клавиш Ctrl+A) и нажмите Удалить.
  5. Сохраните изменения и перезапустите .
Конфигурация Путь к пользовательским настройкам Примечание
1С:Бухгалтерия 3.0 Администрирование → Настройки пользователей Требуются права «Администратор»
1С:Управление торговлей 11 Сервис → Пользовательские настройки Можно очистить только свои настройки
1С:Зарплата и Управление Персоналом 3.1 Настройки → Пользовательские данные История отборов хранится в разделе «Отчёты»
1С:ERP 2.5 Администрирование → Персональные настройки Очистка доступна только администратору

💡 Полезный совет: Если в вашей конфигурации нет явного пункта «Пользовательские настройки», попробуйте найти его через поиск по меню (Ctrl+Shift+F в 8.3). Введите запрос «настройки пользователя» или «история».

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

Для массового удаления истории отборов всех пользователей или если предыдущие методы не сработали, используйте Конфигуратор. Этот способ требует прав Администратор и подходит для 1С:Предприятие 8.3 (в 8.2 путь может отличаться).

Инструкция:

  1. Закройте все сеансы (через Администрирование → Активные пользователи).
  2. Запустите Конфигуратор от имени администратора.
  3. Перейдите в Администрирование → Поддержка и обслуживание → История отборов.
  4. В открывшемся окне выберите базу данных и нажмите Очистить историю.
  5. Подтвердите действие и дождитесь завершения операции.

Для клиент-серверного варианта (например, 1С:SQL или PostgreSQL) путь будет другим:

Администрирование → Сервис → История отборов → Очистить для всех пользователей

⚠️ Внимание: В некоторых конфигурациях (например, 1С:Комплексная автоматизация 2.4) история отборов хранится в таблице _UserSettingsStorage базы данных. Очистка через конфигуратор в этом случае может не сработать — потребуется прямой SQL-запрос (см. следующий раздел).

Что делать, если конфигуратор не видит пункт"История отборов"?

В старых версиях платформы (8.2 и ранние 8.3) этот пункт может отсутствовать. Альтернатива:

1. Используйте обработку «Управление историей отборов» (есть в стандартных поставках некоторых конфигураций).

2. Обратитесь к партнёру 1С за специализированной обработкой.

3. Очистите историю вручную через SQL (описано ниже).

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

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

Для 1С на MS SQL Server:

DELETE FROM [dbo].[_UserSettingsStorage]

WHERE [Key] LIKE'%Отборы%' OR [Key] LIKE'%HistoryFilter%'

Для 1С на PostgreSQL:

DELETE FROM"_user_settings_storage"

WHERE"key" ~*'Отборы|HistoryFilter';

🔹 Ключевые моменты:

  • 🔧 Перед выполнением запроса обязательно сделайте бэкап базы.
  • 📌 Точное название таблицы и поля Key может отличаться (например, в 1С:УТ 10.3 используется UserParams).
  • 🔒 После очистки перезапустите сервер 1С:Предприятие.

В некоторых конфигурациях (например, 1С:ERP) история отборов хранится в таблице ConfigSave, а не в UserSettingsStorage. Перед выполнением запроса уточните структуру базы через SQL Management Studio или pgAdmin.

Способ 5: Автоматическая очистка через регламентные задания

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

Алгоритм настройки:

  1. В Конфигураторе перейдите в Общие → Регламентные задания.
  2. Создайте новое задание с типом Очистка истории отборов (или добавьте обработку, если такого типа нет).
  3. Установите расписание (рекомендуется: Последний день месяца в 23:00).
  4. В параметрах задания укажите:
    Пользователи = Все
    

    Период хранения = 30 дней (или другой срок)

    Удалять без подтверждения = Да

  5. Сохраните и активируйте задание.

⚠️ Внимание: В 1С:Бухгалтерия 3.0 и УТ 11 стандартного регламентного задания для очистки истории нет. В этом случае потребуется:

  • 🛠️ Создать внешнюю обработку (можно скачать с Инфостарта или 1С-Сообщества).
  • 📤 Загрузить её в конфигурацию через Файл → Открыть.
  • 🔄 Привязать к регламентному заданию вручную.

Особенности очистки в облачной версии 1С:Fresh

В 1С:Fresh возможности администратора ограничены, поэтому:

  • Доступно: Удаление истории отборов через интерфейс пользователя (см. Способ 1).
  • Недоступно: Очистка через конфигуратор, SQL-запросы или регламентные задания.
  • 🔄 Обходной путь: Обратиться в поддержку 1С:Fresh с запросом на очистку (указывайте ID базы и список пользователей).

💡 Полезный совет: В 1С:Fresh история отборов автоматически очищается через 90 дней (по умолчанию). Чтобы ускорить процесс, можно вручную удалять ненужные записи раз в 1–2 недели.

💡

В облачной версии 1С:Fresh нет доступа к конфигуратору и SQL, поэтому единственный надёжный способ очистки — ручное удаление через интерфейс или запрос в поддержку.

Частые ошибки и как их избежать

При очистке истории отборов пользователи сталкиваются с типичными проблемами:

Ошибка Причина Решение
История возвращается после перезапуска Настройки не сохранены или кэшированы Очистите кэш 1С (%APPDATA%\1C\1Cv8) или перезагрузите ПК
Нет прав на удаление Ограничения роли пользователя Обратитесь к администратору за правами «Изменение пользовательских настроек»
Зависание при очистке через SQL Блокировки таблиц другими сеансами Закройте все сеансы 1С перед выполнением запроса
Не видно пункт «История отборов» в конфигураторе Устаревшая версия платформы Обновите 1С до 8.3.20+ или используйте SQL-метод

⚠️ Внимание: Если после очистки история отборов стала пустой, но через день снова появились старые записи, проверьте:

  • 🔄 Синхронизацию с другими базами (в распределённых информационных системах).
  • 📥 Импорт настроек из резервных копий или шаблонов.
  • 🤖 Автоматические обновления (некоторые конфигурации восстанавливают историю после обновления).

FAQ: Ответы на частые вопросы

Можно ли восстановить случайно удалённую историю отборов?

Да, если:

  • 💾 У вас есть резервная копия базы (восстановите её через конфигуратор).
  • 🔙 История хранится в UserSettingsStorage — можно откатить транзакцию в SQL (требуются навыки администрирования).

Если копии нет, восстановление невозможно — история отборов неная и не архивируется автоматически.

Почему в 1С:Бухгалтерия 2.0 нет пункта «Очистить историю»?

В старых версиях (до 8.3.6) история отборов хранилась в файле 1Cv8.1CD и очищалась только:

  • 🧹 При сжатии базы (Администрирование → Тестирование и исправление).
  • 🗑️ При ручном удалении через Пользовательские настройки (путь может отличаться).

Для полной очистки рекомендуется обновить платформу до актуальной версии.

Как запретить сохранение истории отборов вообще?

Это можно сделать:

  1. Через Конфигуратор: отключите параметр Сохранять историю отборов в настройках формы отчёта (требуется доступ к конфигурации).
  2. Через групповую политику (для клиент-серверного варианта): добавьте параметр DisableHistoryFilters=1 в файл 1cv8.ini.

⚠️ После этого история перестанет сохраняться для всех пользователей.

Очистка истории влияет на производительность?

Да, но эффект зависит от размера базы:

  • 📉 В небольших базах (до 1 ГБ) прирост скорости минимален.
  • 🚀 В крупных базах (10+ ГБ) с тысячами записей история отборов может замедлять открытие форм на 10–30%.

Рекомендуется очищать историю вместе с реиндексацией таблиц и тестированием базы для максимального эффекта.

Можно ли очистить историю отборов только для одного отчёта?

Да, двумя способами:

  1. Через интерфейс отчёта: откройте нужный отчёт → Ещё → История отборов → удалите ненужные записи.
  2. Через Конфигуратор: найдите форму отчёта в дереве метаданных, откройте её свойства и вручную очистите коллекцию HistoryFilters.

💡 Совет: В 1С:УТ 11 и ERP 2.5 можно использовать обработку «Управление историей отборов» для выборочной очистки.