К статье
Практический материал

Автоматизация · 11 мин

Как в 1С сделать оповещение: все рабочие способы

Разбираем, как настроить оповещения в 1С: напоминания пользователей, обсуждения, регламентные задания и программные уведомления. Пошаговые инструкции и разбор ошибок.

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

Выбор способа зависит от трёх факторов: есть ли доступ к конфигуратору, кто должен получать сообщения (конкретный пользователь или система), и насколько критична доставка. Для простых напоминаний о датах достаточно типовых средств без единой строки кода. Для уведомлений о событиях в базе — новых документах, изменениях статусов — потребуется либо настройка бизнес-процессов, либо доработка через расширение конфигурации.

Ниже разобраны все основные способы: от встроенных напоминаний до программных оповещений на встроенном языке. Для каждого указаны условия применения, пошаговая настройка и типичные ошибки, из-за которых оповещения «молчат».

Способы оповещений в 1С: что выбрать под задачу

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

Сравнение вариантов

Напоминания пользователя

Подходят для личных напоминаний о датах и документах. Не требуют кода, но не реагируют на события в базе автоматически.

ПоказатьОповещениеПользователя()

Программные всплывающие сообщения внутри сеанса. Требуют доработки кода, работают только у пользователей, находящихся в базе.

Регламентные задания + почта

Для автоматических уведомлений о событиях по расписанию. Требуют настройки учётной записи почты и прав администратора.

Система взаимодействия (обсуждения)

Для оперативных сообщений между пользователями. Требует регистрации в сервисе взаимодействий и не подходит для внешних получателей.

Если нужно уведомлять людей вне 1С — руководителя, который не заходит в базу, или клиента — единственный надёжный встроенный канал это электронная почта через объект ИнтернетПочта. Отправка в Telegram или SMS делается только через HTTP-запросы к внешним API, что уже полноценная доработка.

Напоминания без программирования

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

Чтобы создать напоминание, откройте нужный документ, в командной панели найдите кнопку «Ещё» и выберите «Напомнить» (в некоторых конфигурациях — «Создать напоминание»). Укажите текст, дату и время срабатывания. Напоминание можно привязать не к конкретному времени, а к событию: например, «за 3 дня до срока оплаты». В момент срабатывания в нижней части окна 1С появится всплывающее сообщение.

Создание напоминания к документу
  1. 1
    Откройте документ или элемент справочника, к которому нужно напоминание.
  2. 2
    Нажмите «Ещё» → «Напомнить» (или аналогичную команду в вашей конфигурации).
  3. 3
    Введите текст напоминания и задайте время срабатывания или интервал до события.
  4. 4
    Сохраните и проверьте: в разделе «Напоминания» (обычно в «Настройках» или на начальной странице) появилась новая запись.

Если команда «Напомнить» отсутствует, проверьте, включена ли подсистема: в разделе «Администрирование» найдите настройку «Напоминания» или «Заметки и напоминания» и установите флаг использования. В некоторых конфигурациях эта функциональность по умолчанию отключена.

Программное оповещение через ПоказатьОповещениеПользователя

Когда оповещение должно появляться автоматически при определённых условиях — например, при записи документа с превышением лимита — используется метод глобального контекста ПоказатьОповещениеПользователя(). Он выводит всплывающее окно в правом нижнем углу клиентского приложения с заголовком, пояснением и возможностью открыть связанный объект по клику.

1C (BSL)
&НаКлиенте
Процедура ПроверитьЛимит(СуммаДокумента)
	Если СуммаДокумента > 100000 Тогда
		ПоказатьОповещениеПользователя(
			"Превышен лимит",
			,
			"Сумма документа превышает 100 000. Требуется согласование.",
			БиблиотекаКартинок.Информация,
			СтатусОповещенияПользователя.Важное);
	КонецЕсли;
КонецПроцедуры

Важное ограничение: метод работает только на клиенте и только у пользователя, в чьём сеансе выполняется код. Если документ записывает менеджер, оповещение увидит менеджер, а не руководитель. Чтобы уведомить другого пользователя, нужен обмен данными между сеансами — через систему взаимодействия, фоновое задание с записью в регистр очереди уведомлений или отправку письма.

Для оповещений, которые должны срабатывать периодически внутри сеанса (например, проверка новых задач каждые 5 минут), используется Оповестить() в связке с обработчиком ожидания ПодключитьОбработчикОжидания(). Обработчик ожидания вызывает клиентскую процедуру с заданным интервалом, а она проверяет условия и показывает оповещение.

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

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

Сначала настройте почтовую учётную запись: «Администрирование» → «Органайзер» → «Настройки электронной почты» (название раздела зависит от конфигурации). Укажите SMTP-сервер, порт, логин и пароль. Для корпоративной почты параметры берутся у вашего почтового провайдера; для публичных сервисов часто требуется отдельный «пароль приложения» вместо основного.

Затем в конфигураторе создаётся регламентное задание (ветка «Общие» → «Регламентные задания»), в свойствах указывается метод — экспортная процедура общего модуля — и расписание. В файловой базе регламентные задания выполняются только пока запущен сеанс с включённым выполнением фоновых задач; в клиент-серверном варианте их выполняет сервер 1С независимо от пользователей.

Оповещения через систему взаимодействия (обсуждения)

Если в конфигурации включены «Обсуждения» (Администрирование → Обсуждения), пользователи могут обмениваться сообщениями внутри 1С с мгновенными уведомлениями — аналог корпоративного чата. Сообщения можно привязывать к объектам базы: обсуждение прямо в карточке заказа или счёта.

Для работы механизма базу нужно зарегистрировать в сервисе взаимодействий — облачном сервисе фирмы «1С» или собственном сервере взаимодействий. Без регистрации кнопки обсуждений будут неактивны. Учтите, что уведомления обсуждений приходят только внутрь 1С и в мобильный клиент — внешним получателям они недоступны.

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

Типичные ошибки и проверка результата

Чаще всего оповещения «не работают» по одной из четырёх причин: подсистема напоминаний отключена в настройках, регламентное задание заблокировано или не имеет расписания, почтовая учётная запись не проходит аутентификацию, либо код оповещения размещён на сервере, где клиентские методы недоступны. Метод ПоказатьОповещениеПользователя, вызванный в серверной процедуре, просто не выполнится — это директива &НаКлиенте только.

Контрольные точки

Как проверить результат

Напоминание создано
Норма

Запись видна в списке напоминаний, указано корректное время срабатывания

Тревожный признак

Напоминание сохранилось без даты или не отображается в списке

Регламентное задание выполняется
Норма

В журнале регистрации есть записи о запуске без ошибок

Тревожный признак

Задание в статусе «Заблокировано» или в журнале ошибки выполнения метода

Почта отправляется
Норма

Тестовое письмо пришло на указанный адрес

Тревожный признак

Ошибка аутентификации SMTP или письмо попадает в спам

Оповещение показывается
Норма

Всплывающее окно появляется в сеансе пользователя

Тревожный признак

Код выполняется без ошибок, но окна нет — метод вызван на сервере

Типичные ошибки
01
Вызов ПоказатьОповещениеПользователя в серверном коде — метод доступен только на клиенте, проверяйте директивы компиляции.
02
Отправка писем в цикле без паузы и ограничений — почтовый сервис блокирует учётную запись за спам-подобную активность.
03
Расписание регламентного задания «каждую минуту» при тяжёлом запросе — растёт нагрузка на сервер и блокировки в базе.
04
Хранение пароля почты открытым текстом в коде — используйте типовые настройки учётных записей, а не константы с паролем.

Для диагностики регламентных заданий откройте журнал регистрации (Администрирование → Обслуживание → Журнал регистрации) и отфильтруйте по имени задания. Ошибки отправки почты обычно содержат текст ответа SMTP-сервера — по нему видно, проблема в пароле, порте или требовании шифрования.

FAQ

Можно ли сделать оповещение в 1С без доступа к конфигуратору?

Да. Типовые напоминания, настройка учётной записи почты и включение обсуждений выполняются в режиме «Предприятие» пользователем с правами администратора. Без конфигуратора нельзя только создать новое регламентное задание или добавить программные оповещения — для этого нужна доработка через расширение конфигурации.

Как отправить оповещение другому пользователю, а не себе?

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

Почему регламентное задание не выполняется в файловой базе?

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

Как сделать напоминание за несколько дней до срока оплаты счёта?

Откройте счёт, выберите «Ещё» → «Напомнить» и в настройках времени укажите вариант привязки к сроку оплаты с интервалом, например «за 3 дня». Если типовая привязка недоступна, создайте напоминание с конкретной датой, вычислив её вручную от срока оплаты.

Можно ли отправлять оповещения из 1С в Telegram или WhatsApp?

Встроенного механизма нет, но это реализуется через HTTP-запросы к API мессенджера: для Telegram — через Bot API методом sendMessage, для WhatsApp — через сторонние шлюзы. Потребуется доработка конфигурации и токен бота. Учитывайте, что передача данных учёта во внешние сервисы должна согласовываться с политикой безопасности организации.

Оповещение появляется слишком часто и мешает работе. Как ограничить?

Для обработчиков ожидания увеличьте интервал опроса и добавьте проверку «уже показывали»: например, запись признака в хранилище настроек или сравнение с датой последнего оповещения. Для почтовых рассылок сводите события в одно сводное письмо вместо отдельного письма на каждый документ.

Итог

Что важно запомнить

Для личных напоминаний достаточно типовой команды «Напомнить» без кода. Автоматические уведомления о событиях делаются через регламентные задания с отправкой почты, а всплывающие сообщения внутри сеанса — методом ПоказатьОповещениеПользователя, который работает только на клиенте. Любую рассылку сначала отлаживайте на копии базы с тестовыми адресами.