|
![]() |
#1 |
Участник
|
Цитата:
Сообщение от Артем Enot Грунин
![]() Увы, я не смог проследить вашу мысль. Вся воронка обработки, действительно, выполняется в транзакции. Увы, не могу с уверенностью утверждать, создаются ли дочерние транзакции под каждый плагин, или дочернее событие, но с уверенностью могу сказать, что каждый последующий плагин видит изменения, которые были внесены предыдущими. И это, имхо, правильно. Если вам нужно видеть исходные, не измененные данные, вы можете использовать механизм Image
Но в это же самое время другая система делает кол через XRM API, и говорит: - А дай-ка мне последние созданные заказы. И мне неясно почему этот заказ стал видим если в последнем плагине произошел эксепшен и он откатился? У нас же read commited, почему присутствует грязное чтение? Мы можем его стабильно воспроизвести. Написали две тулы: первая - пишет данные в СРМ с прекондишеном, что в плагине будет эксепшен; вторая - как консолька мониторит новосозданные рекорды и забирает их к себе в систему. От и весь сценарий, в систему попадают ИД заказов которых нет. В той системе формируеться урл на рекорд из СРМ. Узер открывает запись, а ее в системе нет. Последний раз редактировалось Ion; 14.04.2017 в 10:24. |
|
![]() |
#2 |
Moderator
|
Ни разу не встречал подобное. Технически, грязное чтение можно разрешить, но по дефолту оно выключено: https://community.dynamics.com/crm/b...nd-dirty-reads
__________________
http://fixrm.wordpress.com, снятие/наведение порчи. Быстро, дорого, гарантия. ![]() ![]() |
|
![]() |
#3 |
Участник
|
Цитата:
Сообщение от Артем Enot Грунин
![]() Ни разу не встречал подобное. Технически, грязное чтение можно разрешить, но по дефолту оно выключено: https://community.dynamics.com/crm/b...nd-dirty-reads
Приходиться только развести руками, потому что идей как это решить нет. |
|
![]() |
#4 |
Чайный пьяница
|
Проблема решается примитивно просто (как по мне). Делаете дополнительную таблицу, в поспроцессинге пишете туда идентификатор новой записи. В своём сервисе перед тем, как спрошать эндпоинт - получаете идентификатор из таблицы. Никаких проблем вроде.
Понимаю, что доп прослойка, но зато вы получаете только актуальные данные. Я так в своё время писал интеграцию с 1С.
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством. Подписывайтесь на мой блог, twitter и YouTube канал. Пользуйтесь моим Ultimate Workflow Toolkit |
|
![]() |
#5 |
Участник
|
Цитата:
Сообщение от a33ik
![]() Проблема решается примитивно просто (как по мне). Делаете дополнительную таблицу, в поспроцессинге пишете туда идентификатор новой записи. В своём сервисе перед тем, как спрошать эндпоинт - получаете идентификатор из таблицы. Никаких проблем вроде.
Понимаю, что доп прослойка, но зато вы получаете только актуальные данные. Я так в своё время писал интеграцию с 1С. |
|
![]() |
#6 |
Чайный пьяница
|
Открытие сапорт тикетов в МС в особенности если у вас онпрем - сейчас гиблое дело. Я уже сталкивался. Даже премиум сапорт зачастую не решает тикеты.
Так что, боюсь, придётся вам решать проблему через доппрослойки...
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством. Подписывайтесь на мой блог, twitter и YouTube канал. Пользуйтесь моим Ultimate Workflow Toolkit |
|
![]() |
#7 |
Участник
|
Цитата:
![]() |
|
|
Опции темы | Поиск в этой теме |
Опции просмотра | |
|