Регистр накопления. Подписка на событие

1. wrooom 214 17.07.24 18:21 Сейчас в теме
Есть регистр накопления в рознице "БонусныеБаллы". Событие ПриЗаписи случается почему-то два раза. Нужно оповещать покупателя о балансе. Но оповещение происходит два раза. Как отследить одно лишнее?
По теме из базы знаний
Вознаграждение за ответ
Показать полностью
Найденные решения
7. Akuji 22 17.07.24 19:35 Сейчас в теме +5 $m
(6) Сделать проверку если уже отправлялось то не отправлять больше
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. wrooom 214 17.07.24 18:23 Сейчас в теме
(1) И ПередЗаписью тоже два раза.
12. user1880116 17.07.24 20:06 Сейчас в теме
(1)
почему-то
Потому что логически это два разных события. Отслеживай их отдельно: первое как отмену бонуса у покупателя, второе - как начислении нового бонуса поверх отмененного.
20. user-z99999 70 18.07.24 09:26 Сейчас в теме
(1) У вас в коде идет запись в регистр два раза, поэтому и события два раза вызываются.

1) Пишите в свой регистр, и из него отправляйте клиенту уведомление по расписанию.
2) или найдите в программе почему два раза записывается, и уберите один из вызовов записи.
Прикрепленные файлы:
3. Akuji 22 17.07.24 19:09 Сейчас в теме
Так нужно к документам подписки делать которые двигаю этот регистр
4. wrooom 214 17.07.24 19:11 Сейчас в теме
5. Akuji 22 17.07.24 19:15 Сейчас в теме
(4) Бонусы начисляются к примеру Чеком. Тогда при проведении его отправлять уведомление...

Хотя документ еще 5 раз могут перепроводить... лучше наверное регламентным заданием 1 раз с утречка... если баланс изменился по сравнению со вчера то отправить уведомление.
6. wrooom 214 17.07.24 19:33 Сейчас в теме
(5) Да и пусть перепроводят. как бы оставить подписку на регистр? а не менять подписку на документ чек.
7. Akuji 22 17.07.24 19:35 Сейчас в теме +5 $m
(6) Сделать проверку если уже отправлялось то не отправлять больше
8. wrooom 214 17.07.24 19:40 Сейчас в теме
(7) А проверку на событие записи в регистр нельзя сделать?
9. spacecraft 17.07.24 19:50 Сейчас в теме
(8) вариантов, почему 2 записи много.
Примеры:
1. Запись пустого набора, что бы исключить данные по регистратору, для получения остатков. Проверка и запись уже движения.
2. Принудительная запись для отслеживания данных и последующая запись по завершения обработчика проведения, если выставлен флаг Записывать.

Присовокупить к этому еще и возможную отмену транзакции.
10. wrooom 214 17.07.24 19:54 Сейчас в теме
(9) а можно ли как-то проверку сделать в случае (1) и в случае (2) ?
11. Sashares 35 17.07.24 20:02 Сейчас в теме
(10) Количество записей в наборе смотрите. Если 0, значит это удаление прошлых, если больше 0, значит это запись новых.
13. wrooom 214 17.07.24 20:16 Сейчас в теме
(11) НаборЗаписей.Отбор.Регистратор.Значение.ПолучитьОбъект().Движения.БонусныеБаллы - там всегда пусто
14. user2033930 17.07.24 20:29 Сейчас в теме
(13) Как это развидеть???
orakool; user1880116; +2 1 Ответить
15. user1880116 17.07.24 20:43 Сейчас в теме
(13)
НаборЗаписей.Отбор.Регистратор.Значение.ПолучитьОбъект().Движения.БонусныеБаллы
Халя! Няси карточку, у нас тута ыщо адин хений 1С!
18. Sashares 35 18.07.24 06:20 Сейчас в теме
(13) НаборЗаписей.Количество()
16. Akuji 22 17.07.24 20:46 Сейчас в теме
(8) если предположить что документ вдруг будет десяток раз перепроводится... и таких документов будет штук 10 за сутки...
то кто то потратится на сотню смс
и клиент может не понять...

лучше все же регламентное раз в сутки
17. wrooom 214 17.07.24 20:50 Сейчас в теме
(16) Спасибо большое за совет. Я с советом согласен. Но пока Изменения нужно сделать в момент накопления.
19. KOTzilla 22 18.07.24 06:29 Сейчас в теме
Сталкивался с похожим поведением при работе с веб сервисами (кажется JIRA) и моя проблема заключалась в вебхуке. Происходил перехват события создания задачи на стороне JIRA и генерировалось событие для отправки в 1С, там было не только создание задачи, но и какие-то дополнительные дженерики. Долго не понимал что за хрень, пока не настроил Postman и не увидел, что событий по факту несколько, а не одно. После отсечения этих дженериков на стороне 1С, все пошло как по маслу.
21. usershmuser 18.07.24 10:07 Сейчас в теме
1 - Перенести событие оповещения в события проведения, а не записи.
2 - Для решения проблемы с большим количеством смс при каждом чихе - перенести данную функцию на форму (документы создаются же интерактивно? и кнопочка проведения интерактивно?), таким образом при групповом проведении смс не будут лететь. Тут можно еще галочку прикрутить и логику написать, что бы при наличии (или отсутствии) галочки не отправлять смс, если очень захочется перепровести интерактивно (тут очень большое поле для творчества).

Два раза записывает - тут только гадать какой функционал прикручен, проведение должно быть 1 раз как и запись в регистр, проверяется очень легко консолью запроса.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот