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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 19.09.2011, 07:22   #1  
KP0H is offline
KP0H
Участник
 
41 / 11 (1) +
Регистрация: 11.08.2011
Адрес: Тюмень
Запрос данных у пользователя
Необходимо при выполнении некоторого действия передать объект от одного пользователя-другому с комментарием (задачей).

Переход от одного пользователя к другому в данный момент реализован через плагин, т.к. пользователь выбирается по опредиленному алгоритму, описать который через БП на мой взгляд невозможно.

После того как владелец объекта сменился ему ставиться задача.

Все это реализовано. Проблема возникает в том что в задаче в описании необходим комментарий от того кто передает эту запись.
Я сделал следующим образом:
1. Запускается диалоговое окно, которое получает всю необходимую информацию
2. Запускает другой БП, в котором запускается плагин.
3. Ожидает выполнения плагина.
4. Возвращается в процесс-диалогового окна и ставит задачу.

Дело в том что БП который запускает плагин не отрабатывает целиком, если его запустили из диалогового окна. Причину у меня на данный момент выявить не получилось.

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

Есть ли другие варианты как можно получить информацию от пользователя в плагин или в БП, так, чтобы сначала отработал плагин?
Старый 19.09.2011, 11:21   #2  
griefon is offline
griefon
Участник
 
131 / 52 (2) ++++
Регистрация: 07.12.2010
Адрес: down under
А что если в исходный объект добавить текстовое поле, куда сохранять комментарии?
Старый 19.09.2011, 11:40   #3  
KP0H is offline
KP0H
Участник
 
41 / 11 (1) +
Регистрация: 11.08.2011
Адрес: Тюмень
Каким образом оно туда будет попадать?
Старый 19.09.2011, 13:34   #4  
griefon is offline
griefon
Участник
 
131 / 52 (2) ++++
Регистрация: 07.12.2010
Адрес: down under
Цитата:
Сообщение от KP0H Посмотреть сообщение
Каким образом оно туда будет попадать?
Из вашей постановки задачи непонятно как запускается процесс передачи объекта и в какой момент пользователь должен вводить свои комментарии.

Если это делается с формы - то можно прямо на форму поле и вытащить.
Старый 20.09.2011, 00:31   #5  
Артем 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
Вы можете добавлять самостоятельно написанные шаги (WorkflowAction) в БП/Диалоги. Сделайте шаг, который возвращает (Output) объект типа Пользователь, по нужному вам алгоритму. После этого, вы сможете использовать результат работы шага внутри БП/Диалога, например, в шаге назначения. Думаю это решает вашу проблему.

p.s. Придется только немного почитать SDK на тему того, как писать кастомные шаги для процесса. Честно говоря, это проще, чем вызывать плагин из БП - вы же это делаете через создание нового объекта? Единственный момент: затея не удастся, если речь идет о CRM Online.
__________________
http://fixrm.wordpress.com, снятие/наведение порчи. Быстро, дорого, гарантия.

MS Certified Dirty Magic Professional
Старый 20.09.2011, 08:23   #6  
a33ik is offline
a33ik
Чайный пьяница
Аватар для a33ik
MCP
MCBMSS
Злыдни
Соотечественники
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,243 / 896 (36) +++++++
Регистрация: 02.07.2008
Адрес: Greenville, SC
Цитата:
Сообщение от Артем Enot Грунин Посмотреть сообщение
Единственный момент: затея не удастся, если речь идет о CRM Online.
Плагинами решается - http://blogs.msdn.com/b/crm/archive/...11-online.aspx
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством.

Подписывайтесь на мой блог, twitter и YouTube канал.
Пользуйтесь моим Ultimate Workflow Toolkit
Старый 20.09.2011, 10:52   #7  
Артем 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
Цитата:
Сообщение от a33ik Посмотреть сообщение
Плагинами решается - http://blogs.msdn.com/b/crm/archive/...11-online.aspx
Я об этом и говорил: создается кастомная сущность - приемник события в Process, на которую вешается плагин. Насколько я понял, у автора поста есть проблема с параллелизмом выполнения операций, хотя проблема не вполне ясна. Человек, который вызывает диалог должен знать о том, кому назначает задачу, или нет?
__________________
http://fixrm.wordpress.com, снятие/наведение порчи. Быстро, дорого, гарантия.

MS Certified Dirty Magic Professional
Старый 20.09.2011, 14:14   #8  
KP0H is offline
KP0H
Участник
 
41 / 11 (1) +
Регистрация: 11.08.2011
Адрес: Тюмень
От человека требуется только выбрать один из двух вариантов: 1. Согласовать; 2. Вернуть.
В случае выбора "Вернуть" необходимо запросить у него комментарий/замечание.

Поле на форме не подходит. Кому передать задачу и т.п. разруливается автоматически.

P.S> Диалог можно вызвать из плагина так же как БП?
Старый 20.09.2011, 16:26   #9  
griefon is offline
griefon
Участник
 
131 / 52 (2) ++++
Регистрация: 07.12.2010
Адрес: down under
Цитата:
Сообщение от KP0H Посмотреть сообщение
От человека требуется только выбрать один из двух вариантов: 1. Согласовать; 2. Вернуть.
В случае выбора "Вернуть" необходимо запросить у него комментарий/замечание.

Поле на форме не подходит. Кому передать задачу и т.п. разруливается автоматически.
Две кнопки на форме, по нажатию "вернуть" выводить простую форму с текстовым полем и кнопкой ОК. Далее записать текст в служебное поле и сохранить форму. На сохранение формы вызвать плагин, который все разруливает. А комментарий берет из этого служебного поля.
Старый 20.09.2011, 19:24   #10  
Артем 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
Старый 21.09.2011, 08:30   #11  
KP0H is offline
KP0H
Участник
 
41 / 11 (1) +
Регистрация: 11.08.2011
Адрес: Тюмень
На кнопку на риббоне можно посадить Js?

вопрос снят...

Последний раз редактировалось KP0H; 21.09.2011 в 08:42.
Теги
dialog, plugin, workflow

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
автоматический импорт данных Briscard Dynamics CRM: Функционал 5 23.11.2011 13:35
Ошибка при создании пользователя CRM Буденый Dynamics CRM: Администрирование 11 14.07.2010 16:30
Как получить ID текущего пользователя в плагине? xmarina Dynamics CRM: Разработка 6 31.03.2010 12:01
Ошибка после изменениями имени пользователя в AD sergeyjb Dynamics CRM: Администрирование 20 29.10.2008 18:27
Почему WhoAmIRequest возвращает пользователя SYSTEM tatra Dynamics CRM: Разработка 5 15.11.2007 16:14

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

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

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