AXForum  
Вернуться   AXForum > Microsoft Dynamics CRM > Dynamics CRM: Разработка
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 07.10.2008, 08:49   #1  
sergeyjb is offline
sergeyjb
Участник
Аватар для sergeyjb
 
68 / 12 (1) ++
Регистрация: 01.10.2008
Механизм отслеживания событий в Work Flow
Как Work Flow узнает о наступлении событий с объектом? На каком уровне он это событие перехватывает?
Я считал что триггер на вьюшке или таблице в SQL Server оповещает, но по реакции Work Flow видимо где то на уровне самой СRM?

Ситуация следующая:
есть Work Flow, в нем на одном из этапов создается задача, далее ждется ее переход в состоянии Завершена или Отменена и после этого продолжается дальше.
Так вот, если задачу закрыть через стандартный механизм из окна задачи с любым статусом (Завершено/Отменено) то Work Flow начинает отрабатывать дальше как и положено, отловив событие.
А если как у нас - по пользовательской кнопке на форме с задачей (добавлена через ISV) и отрабатыванием sql команды (update task set statecode=...,statuscode=...,actualend=... where activityid=...) на asp странице веб узла IIS (обращение напрямую к вьюшке объекта, правда нефильтрованной, на sql server), то Work Flow так и остается в ожидании завершения задачи, хотя та уже давно стала "Завершена".

Может кто знает подробнее механизм срабатывания Work Flow и как его в моей ситуации заставить увидеть событие наступившее в базе?
__________________
Сергей Осипов, MCTS:SQL Server 2005, ООО "Программные технологии", Самара
Старый 07.10.2008, 09:05   #2  
sergeyjb is offline
sergeyjb
Участник
Аватар для sergeyjb
 
68 / 12 (1) ++
Регистрация: 01.10.2008
Точно, на уровне SQL Server никаких триггеров нет для отслеживания изменений в объекте. Ни на таблицах ни на вьюшках.
__________________
Сергей Осипов, MCTS:SQL Server 2005, ООО "Программные технологии", Самара
Старый 07.10.2008, 09:46   #3  
Сабитов Андрей is offline
Сабитов Андрей
MCTS
Аватар для Сабитов Андрей
MCBMSS
Лучший по профессии 2009
 
851 / 122 (6) +++++
Регистрация: 07.09.2006
Адрес: СПб
Я так думаю что проблемма заключается в том, что при завершении задачи через интерфейс системы ее присваивается один statecode, а при завершении задачи Вашим способом другой. Создайте однаковые задачи например звонок и завершите их двумя способами и сравните statuscode ы SQL базе, должно помочь.
__________________
Старый 07.10.2008, 10:35   #4  
Артем Enot Грунин is offline
Артем Enot Грунин
Moderator
Аватар для Артем Enot Грунин
MCBMSS
Злыдни
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,912 / 623 (28) +++++++
Регистрация: 16.08.2007
Адрес: Пермь!
Записей в блоге: 151
О чем вы говорите!!! Сколько раз повторять - НЕЛЬЗЯ писать прямые апдейты в базу! Используйте веб-сервисы! Вот от них Workflow и узнает что произошло событие смены состояния!!!
__________________
http://fixrm.wordpress.com, снятие/наведение порчи. Быстро, дорого, гарантия.

MS Certified Dirty Magic Professional
За это сообщение автора поблагодарили: sergeyjb (1).
Старый 07.10.2008, 10:45   #5  
sergeyjb is offline
sergeyjb
Участник
Аватар для sergeyjb
 
68 / 12 (1) ++
Регистрация: 01.10.2008
Вон значит в чем дело...
Так как статусы апдейтит одинаково...
Писал не я, у меня просят чтоб заработало и по кнопкам тоже
Я думал что апдейт через фильтрованную вьюшку это не криминал...

Значит буду разбираться в веб-сервисах, пока только в теории знаю что это такое...
__________________
Сергей Осипов, MCTS:SQL Server 2005, ООО "Программные технологии", Самара
Старый 07.10.2008, 11:47   #6  
Артем Enot Грунин is offline
Артем Enot Грунин
Moderator
Аватар для Артем Enot Грунин
MCBMSS
Злыдни
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,912 / 623 (28) +++++++
Регистрация: 16.08.2007
Адрес: Пермь!
Записей в блоге: 151
Прошу прощения за срыв эмоций. Читать из них можно, но лучше только в отчетах. Все прочие запросы к базе надо делать через веб-сервисы. Это рекомендуемое требование, так как майкрософт оставляет за собой право менять структуру базы по собственному усмотрению и не будет нести ответственность за те беды, коорые это нанесет работоспособности вашей системы.
__________________
http://fixrm.wordpress.com, снятие/наведение порчи. Быстро, дорого, гарантия.

MS Certified Dirty Magic Professional
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Work Flow Сабитов Андрей Dynamics CRM: Функционал 14 26.05.2009 13:25
Просмотр событий tatra Dynamics CRM: Разработка 1 15.10.2007 22:44
Свои обработчики событий egoist Dynamics CRM: Разработка 3 30.09.2005 11:44

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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 05:33.