При работе с современными конфигурациями на базе 1С:Предприятие 8.3 многие пользователи сталкиваются с навязчивым поведением системы: при каждом запуске (или через раз) на экране возникает информационное окно с новостями, рекламой или уведомлениями. Часто это происходит после обновления платформы (например, переход на 8.3.17 и выше) или конфигурации. Даже если снять флаг «Показывать при начале работы», окно может вернуться в следующем сеансе. Разберем детально, почему это происходит и как окончательно решить проблему.
Прежде всего, нам необходимо понять, что данное окно — это не ошибка платформы в чистом виде, а работа подсистемы «Информационный центр» или «Новости», входящей в состав Библиотеки стандартных подсистем (БСП). Проанализируем основные факторы, которые заставляют окно появляться снова и снова:
РегистрСведений.НастройкиПользователей или специализированные регистры новостей. Если у пользователя недостаточно прав на запись в эти объекты или база работает в режиме «только чтение» (например, при некорректном завершении сеанса PostgreSQL), настройка не сохранится.Рассмотрим самый простой путь, который помогает в большинстве случаев, если у пользователя есть административные права. Нам нужно деактивировать механизм получения новостей на уровне всей программы.
Перейдем в раздел Администрирование — Интернет-поддержка и сервисы. Найдем блок Новости. Здесь необходимо выполнить следующие действия:
Если интерфейсные настройки не помогают, проанализируем работу фоновых процессов. Окно обновляется за счет регламентных заданий, которые скачивают контент с серверов 1С. Выясним, какие задания за это отвечают.
Нам потребуется консоль регламентных заданий. Найдите и отключите следующие объекты:
Обновление новостейПолучение новостейПрограммно это можно сделать с помощью небольшого фрагмента кода, если вы имеете доступ к консоли разработчика или создаете внешнюю обработку:
ЗаданияНовостей = РегламентныеЗадания.ПолучитьРегламентныеЗадания();
Для Каждого Задание Из ЗаданияНовостей Цикл
Если СтрНайти(Задание.Метаданные.Имя, "Новости") > 0 Тогда
Задание.Использование = Ложь;
Задание.Записать();
Сообщить("Задание " + Задание.Метаданные.Имя + " успешно отключено.");
КонецЕсли;
КонецЦикла;
Часто проблема кроется в «битых» настройках конкретного пользователя, которые хранятся внутри базы данных. Обычная очистка папок AppData здесь не поможет. Разберем, как сбросить настройки формы ИнформационнаяПанель.
Зайдем в раздел Администрирование — Настройки пользователей и прав — Персональные настройки пользователей — Настройки пользователей. Выберем нужного сотрудника и перейдем во вкладку «Внешний вид». Найдем строку, связанную с «Информационной панелью» или «Текущими делами», и удалим её.
Также можно выполнить полную очистку через код для конкретного пользователя:
ИмяПользователя = "ИвановИИ"; // Укажите логин
ХранилищеОбщихНастроек.Удалить("Общее/ИнформационнаяПанель", , ИмяПользователя);
ХранилищеОбщихНастроек.Удалить("Общее/ТекущиеДела", , ИмяПользователя);
Проанализируем состояние регистров, где хранится информация о прочитанных новостях. В некоторых конфигурациях это РегистрСведений.НастройкиНовостей или РегистрСведений.СостоянияНовостей. Если в этих регистрах скопилось огромное количество записей, система может начать сбоить при попытке записать новый статус.
Попробуем очистить данные регистры для проблемного пользователя. Это заставит систему инициализировать настройки заново. Обратите внимание, что при использовании СУБД PostgreSQL иногда полезно выполнить операцию VACUUM FULL для всей базы, чтобы обновить индексы и устранить задержки при записи в подобные «технические» регистры.
Подводя итог, можно сказать, что циклическое появление окна — это результат конфликта между механизмом автоматического обновления контента БСП и кэшированием настроек в платформе. Если вы используете версию 8.3.17, рекомендуем:
Запись на системные регистры настроек.hosts доступ к доменам *.1c.ru, откуда подгружается реклама.Используя комплексный подход (отключение заданий + очистка настроек формы), вы сможете избавить пользователей от лишних раздражающих факторов при начале рабочего дня.