17 июля 2025
1C-RarusTechDay 2025
8-я открытая техническая конференция для специалистов 1С
Зарегистрироваться
1C-RarusTechDay 2025 — 8‑я открытая техническая конференция для специалистов 1С

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

Декоративное изображение

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

Пользователь ПП
RSS
Здравствуйте,

Издавна возникала проблема создания напоминания, которое проявляло бы себя при создании нового заказ-наряда при обращении на сервис определенного клиента. Например, при прошлом обращении у клиента образовался долг (кроме денежного - оригиналы каких-нибудь документов и др.), и сервису необходимо проконтролировать его погашение при следующем обращении клиента. Можно ли осуществить это штатными средствами или здесь не обойтись без услуг программиста?
Альфа-Авто: Автосервис+Автозапчасти. Редакция 4.1 (4.1.01.26)
Спасибо.

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

Сотрудник 1С-Рарус
Добрый день, Владимир.
Частично данный механизм можно реализовать с помощью значимых событий (Справочники-Значимые события):  в качестве источника  выбрать "Заказ-наряд", в действиях выбрать "Создание напоминания". Также необходимо будет прописать условие, при котором данное событие должно появляться, но  в основных реквизитах, которые можно добавлять в условия, нет связанных с долгами клиента.  Возможно, Вам поможет написание произвольного условия.
Ответить

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

Пользователь ПП
Спасибо за наводку, потенциально полезная вещь эти "Значимые события"!
Мда, тут нужны мозги программиста...
А нельзя в "Значимых событиях" в "Условиях" в поле "Тип сравнения" сделать поиск вхождения строки?? Или только "равно", "не равно", "больше", "меньше" и т. д.?? Я бы просто забивал в комментарий карточки Заказчика слово ДОЛГ и таким образом вышел бы из положения...
Ответить

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

Сотрудник 1С-Рарус
На данный момент подобные изменения в функционале значимых событий не планируются.
Ответить

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

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

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

Пользователь ПП
Создал значимое событие с источником "Документ "Заказ-наряд"", событием "ПриЗаписи",  условие "Наименование (Заказчик)" "равно" "Строка", действие "Создать напоминание", поля "Дата начала", "Тема", "Содержание", "Получатели" - заполнены.
Что происходит: при записи любого заказ-наряда, даже при неудовлетворенном условии (Заказчик другой) программа все равно создает напоминание, которое почему-то оповещает через какое-то время (несколько минут). Если нетрудно, подскажите, что может вызвать такое неадекватное действие?
Ответить

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

Сотрудник 1С-Рарус
Уточните, пожалуйста,  при каких условиях должны создаваться напоминания при записи заказ-наряда и приложите скриншоты Ваших настроек.
Ответить

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

Интересующийся
Может попробовать изменить условие:
"Заказчик.Комментарий"
Тип сравнения "<>"
И значение сравнения не заполнять. т.е. если комментарий у заказчика не пустой тогда создать напоменание.
Ответить

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

Интересующийся
Запустил АА 4.1 проверил, мой предыдущий вариант не работает. предлагаю такой:
1. Удалить все условия, добавить "Произвольное условие".
Вариант 1, Будут создаваться напоминания для всех контрагентов у которых заполнен комментарий.
В редакторе условия вставить текст:

Если ЗначениеЗаполнено(Объект.Заказчик.Комментарий) Тогда
Результат = Истина;
Иначе
Результат = Ложь;
КонецЕсли;

Вариант 2, Будут создаваться напоминания для контрагентов у которых комментарий Начинается словом ДОЛГ.
В редакторе условия вставить текст:

Если Найти(Объект.Заказчик.Комментарий, "ДОЛГ")=1 Тогда
Результат = Истина;
Иначе
Результат = Ложь;
КонецЕсли;

2. Что бы в напоминании отображалось содержимое поля заказчика комментрарий, в содержании напоминания можно выбрать "Произвольный код на языке 1с" и вставить:

Содержание =  "у заказчика заполнен комментарий: " + ОбъектИсточник.Заказчик.Комментарий;

3. Время через которое напоминание отображается пользователю зависит от интервала проверки напоминаний:
Владка "Сервис" - "Настройка Параметров" - "Прочие" - "интервал проверки напоминаний (в минутах)"
Ответить

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

Пользователь ПП
С наименованием должно нормально отрабатывать. Может еще какие условия добавлены?
Ответить

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

Пользователь ПП
Здравствуйте, даже не ожидал, что отзовется столько желающих помочь). Сначала пытался сделать напоминание при сохранении заказ-наряда с забитым в него Заказчиком и договором взаиморасчетов, в котором в поле Комментарий забивал бы слово ДОЛГ, и таким образом разоблачал бы должников. Не получилось: программа не реагировала на условие. Потом возникла мысль привязаться к положительному размеру долга по взаиморасчетам (в заказ-наряде это значение автоматически указывается, хотя опять же почему-то некорректно: много раз размер не совпадал с отчетом взаиморасчетов, притом что постоянно используется один договор взаиморасчетов, вот ещё на это хотелось бы заострить внимание - почему так происходит), но в списке представлений условия такого параметра не нашел.
Теперь дошел до того, что просто хочу создать значимые события для некоторых наших злостных должников, действуя через Наименование Заказчика. Видимо в значении результата условия программа видит пустую строку, поэтому реагирует на любого Заказчика, может быть надо указывать значение в кавычках??
Скрины прилагаю.
К комментарию карточки Заказчика привязываться не хочу поскольку это поле используется в том числе и для других целей другими сотрудниками. Вот если бы в произвольном условии создать проверку вхождения строки в комментарий в карточке Заказчика, тогда можно было бы указывать там помимо всего прочего, например, слово "долг" и таким образом вылавливать "помеченных" клиентов. Может быть, подскажите синтаксис такого произвольного условия?

Прикрепленные файлы

Ответить

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

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

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

Пользователь ПП
Ну, если речь идет о чекбоксе со всплывающей подсказкой "Список условий" и с названием "Колонка9" в диалоговом окне "Вывести список", то, очевидно, что да, потому после его включения вроде перестало реагировать на любого Заказчика. Благодарю, хоть от этой напасти избавился и то отрада)
С несоответствием долга Заказчика в заказ-наряде и остатков взаиморасчетов (по отчету взаиморасчетов) - разобрался: бухгалтер разносит банковские поступления не на те договора...
Ответить

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

Пользователь ПП
Цитата
Владимир Смирнов пишет:
Может быть, подскажите синтаксис такого произвольного условия?
Произвольное условие пишется на языке 1с. Там можно даже собственными запросами вычислять долг заказчика.
Ответить

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

Интересующийся
Цитата
Вот если бы в произвольном условии создать проверку вхождения строки в комментарий в карточке Заказчика, тогда можно было бы указывать там помимо всего прочего, например, слово "долг" и таким образом вылавливать "помеченных" клиентов. Может быть, подскажите синтаксис такого произвольного условия?
Владимир, в Посте №9 Выриант-2 и есть произвольное условие которое будет искать слово ДОЛГ в комментарии карточки заказчика.
Ответить

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

Пользователь ПП
Точно-точно) Спасибо!
Только вместо комментария Заказчика, как бы перейти к комментарию договора взаиморасчетов??
Понимаете, непрограммисту, не знающему структуру объектов конфигурации, трудно зацепиться за нужный объект, поле и т.д. В этом, по крайней мере, для меня сложность понимания 1С, было бы все как раньше завязано на структурном программировании, теперь же эти объекты..
Ответить

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

Интересующийся
Цитата

Только вместо комментария Заказчика, как бы перейти к комментарию договора взаиморасчетов??
Владимир, попробуйте такое условие. Комментарий должен начинаться словом ДОЛГ(то что стоит в кавычках условия):
Код
Если Найти(Объект.ДоговорВзаиморасчетов.Комментарий, "ДОЛГ")=1 Тогда
Результат = Истина;
Иначе
Результат = Ложь;
КонецЕсли;


Но нужно учитывать что договоров у заказчика может быть множество, поэтому можно просматривать все договора заказчика. Я бы предложил Вариант-2:
Код
Запрос = Новый Запрос;
Запрос.текст =
"ВЫБРАТЬ
|   ДоговорыВзаиморасчетов.Комментарий
|ИЗ
|   Справочник.ДоговорыВзаиморасчетов КАК ДоговорыВзаиморасчетов
|ГДЕ
|   ДоговорыВзаиморасчетов.Владелец = &Владелец
|   И ДоговорыВзаиморасчетов.Комментарий ПОДОБНО &Комментарий";

Запрос.УстановитьПараметр("Владелец", Объект.заказчик);
Запрос.УстановитьПараметр("Комментарий", "ДОЛГ%");
Выгрузка = Запрос.Выполнить().Выгрузить();

Если Выгрузка.Количество() > 0 Тогда
Результат = Истина;
Иначе
Результат = Ложь;
КонецЕсли;


Что бы в напоминании отображалось содержимое Вашего комментрария в договоре, в содержании напоминания можно выбрать "Произвольный код на языке 1с" и вставить:
Код
Запрос = Новый Запрос;
Запрос.текст =
"ВЫБРАТЬ
|   ДоговорыВзаиморасчетов.Комментарий
|ИЗ
|   Справочник.ДоговорыВзаиморасчетов КАК ДоговорыВзаиморасчетов
|ГДЕ
|   ДоговорыВзаиморасчетов.Владелец = &Владелец
|   И ДоговорыВзаиморасчетов.Комментарий ПОДОБНО &Комментарий";

Запрос.УстановитьПараметр("Владелец", ОбъектИсточник.заказчик);
Запрос.УстановитьПараметр("Комментарий", "ДОЛГ%");
Выборка = Запрос.Выполнить().Выбрать();

Содержание = "";
Пока Выборка.Следующий() Цикл
   Содержание =  Содержание + Выборка.Комментарий + Символы.ПС;
КонецЦикла;

Прикрепленные файлы

Ответить

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

Пользователь ПП
Ок, попробую и отпишусь.
Ответить

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

Пользователь ПП
Дмитрий, сделал всё, как написано, но, во-первых: задержка в появлении напоминания  - ок. 2-3 мин. Во-вторых, при установке флажка "Обрабатывать событие только для новых объектов" (это я так понимаю, различает запись нового или уже ранее записанного документа) программа создает напоминание независимо от наличия комментария ДОЛГ в текущем установленном договоре. Если я правильно понял значение флажка, то он нужен, потому как правильный договор может быть установлен уже после первой записи заказ-наряда, иначе можно пропустить нужное условие. Если флажок убрать, то реакция на нужный договор (с нужным комментарием) правильная.
Позже скину видео этого процесса.
Ответить

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

Пользователь ПП
Видео: https://yadi.sk/i/YcUqhUfFcAzmK
При просмотре качество плохое, нужно скачать..

Больше никаких идей? А так хорошо начиналось.. :) Ну, спасибо и на том! Спасибо всем, кто помогал.
Ответить

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

Читают тему
Поддержка отраслевых решений «1С-Рарус»
Услуги 1С