Мне поручено вести код настройки, разработанный консультантами.Этот код включает в себя пользовательский плагин для расчета цены, основанный на примере Microsoft .В соответствии с документацией плагин был зарегистрирован для запуска сообщения CalculatePrice
.
Во время отладки кода я заметил, что простая загрузка или обновление цитаты вызовет CalculatePrice
сообщение будет уволено.Дальнейшие исследования подтверждают, что при выдаче сообщения Retrieve
запускается сообщение CalculatePrice
(что подтверждается на GitHub ).
![Quick-Watch of Context Variable](https://i.stack.imgur.com/X5Tny.png)
Такое поведение не имеет смысла для меня.Это приводит к снижению производительности и излишне большим журналам транзакций.Логично, что CalculatePrice
должен срабатывать только при Create
или Update
сообщениях соответствующих записей / полей (что-то вроде операций рабочего процесса).
Таким образом, вот несколько вопросов:
- Кто-нибудь знает хорошую документацию по теме?
- Это стандартное поведение или результат неправильной конфигурации?
- Если это нестандартное поведение, в чем причина / обоснование этого?
- Есть ли вред в изменении кода, возвращаемого, если сообщение родительского контекста равно
Retrieve
? - Кто-нибудь еще сталкивался с этим?Если да, то как вы решили это?
Любой ответ (ы) будет принят с благодарностью.