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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 29.07.2009, 17:00   #1  
Dark_Angel is offline
Dark_Angel
Участник
 
30 / 10 (1) +
Регистрация: 14.04.2009
Статус экземпляров сущностей
Задача следующая: Необходимо при изменении статуса действия (встречи) на значение "закрыто" выполнить некоторые проверки... , в зависимости от проверки необходимо отменить изменение статуса...

Как в плагине получить статус экземпляра сущности?
Старый 29.07.2009, 17:05   #2  
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
Цитата:
Сообщение от Dark_Angel Посмотреть сообщение
Задача следующая: Необходимо при изменении статуса действия (встречи) на значение "закрыто" выполнить некоторые проверки... , в зависимости от проверки необходимо отменить изменение статуса...

Как в плагине получить статус экземпляра сущности?
Для этого необходимо написать плагин, который будет обрабатывать сообщение SetState и SetDynamicState. Тот статус на который будет изменен текущий статус записи приходит в контексте плагина.
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством.

Подписывайтесь на мой блог, twitter и YouTube канал.
Пользуйтесь моим Ultimate Workflow Toolkit
Старый 29.07.2009, 17:24   #3  
Dark_Angel is offline
Dark_Angel
Участник
 
30 / 10 (1) +
Регистрация: 14.04.2009
Это ясно... как получить статус из контекста... хотелось бы пример кода...
Старый 29.07.2009, 17:44   #4  
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
Цитата:
Сообщение от Dark_Angel Посмотреть сообщение
Это ясно... как получить статус из контекста... хотелось бы пример кода...
Итак.

State из контекста можно получить при помощи такого кода - context.InputParameters["state"] - string

Status - context.InputParameters["status"] - int
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством.

Подписывайтесь на мой блог, twitter и YouTube канал.
Пользуйтесь моим Ultimate Workflow Toolkit
Старый 29.07.2009, 18:20   #5  
Dark_Angel is offline
Dark_Angel
Участник
 
30 / 10 (1) +
Регистрация: 14.04.2009
Пишу в плагине
int status = (int)context.InputParameters["status"];
throw new InvalidPluginExecutionException(status.ToString());

При выполнении возникает ошибка The given key was not present in the dictionary.
Старый 29.07.2009, 18:22   #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
Цитата:
Сообщение от Dark_Angel Посмотреть сообщение
Пишу в плагине
int status = (int)context.InputParameters["status"];
throw new InvalidPluginExecutionException(status.ToString());

При выполнении возникает ошибка The given key was not present in the dictionary.
На какое из сообщений Вы регистрируете шаг?
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством.

Подписывайтесь на мой блог, twitter и YouTube канал.
Пользуйтесь моим Ultimate Workflow Toolkit
Старый 29.07.2009, 18:38   #7  
Dark_Angel is offline
Dark_Angel
Участник
 
30 / 10 (1) +
Регистрация: 14.04.2009
На Update
Старый 29.07.2009, 18:44   #8  
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
Цитата:
Сообщение от Dark_Angel Посмотреть сообщение
На Update
А надо на SetState и SetStateDynamicEntity.
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством.

Подписывайтесь на мой блог, twitter и YouTube канал.
Пользуйтесь моим Ultimate Workflow Toolkit
Старый 29.07.2009, 18:51   #9  
Dark_Angel is offline
Dark_Angel
Участник
 
30 / 10 (1) +
Регистрация: 14.04.2009
Та же ошибка...
Старый 29.07.2009, 18:57   #10  
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
Цитата:
Сообщение от Dark_Angel Посмотреть сообщение
Та же ошибка...
У меня всё заработало. Отлаживайте...
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством.

Подписывайтесь на мой блог, twitter и YouTube канал.
Пользуйтесь моим Ultimate Workflow Toolkit
Старый 30.07.2009, 11:35   #11  
Dark_Angel is offline
Dark_Angel
Участник
 
30 / 10 (1) +
Регистрация: 14.04.2009
Ок... разобрался...
Только не могу понять почему в результате выполнения инструкции throw new InvalidPluginExecutionException у меня вылезает окно с подробной информацией об ошибке, вместо обычного сообщения...
В чем дело?

И еще... а как полям текущей записи обратиться?

DynamicEntity target = (DynamicEntity)context.InputParameters[ParameterName.Target];
выдает ошибку, которую я уже писал....

Последний раз редактировалось Dark_Angel; 30.07.2009 в 11:41.
Старый 30.07.2009, 11:56   #12  
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
Цитата:
Сообщение от Dark_Angel Посмотреть сообщение
Ок... разобрался...
Только не могу понять почему в результате выполнения инструкции throw new InvalidPluginExecutionException у меня вылезает окно с подробной информацией об ошибке, вместо обычного сообщения...
В чем дело?

И еще... а как полям текущей записи обратиться?

DynamicEntity target = (DynamicEntity)context.InputParameters[ParameterName.Target];
выдает ошибку, которую я уже писал....
Потому что самой сущности там нет, а только её Моникер. Включите отладчик и сами посмотрите. Неужели это невозможно?

По поводу самих полей - тут 2 пути. 1 - зарегистрировать Image (но с этим я не экспериментировал, просто предположил, что возможно). 2 - имея идентификатор сущности, который есть в контексте - вычитать саму сущность.
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством.

Подписывайтесь на мой блог, twitter и YouTube канал.
Пользуйтесь моим Ultimate Workflow Toolkit
Старый 30.07.2009, 13:20   #13  
Dark_Angel is offline
Dark_Angel
Участник
 
30 / 10 (1) +
Регистрация: 14.04.2009
Отлдачик не работает... Когда я регистрирую плагин на диске... то при срабатывании он не может найти сборку... Я проверил путь по которому он ищет... все ок...
По ссылке, которую ты мне давал на отладку, там вообще про это ничего не сказано...
Старый 30.07.2009, 13:24   #14  
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
Цитата:
Сообщение от Dark_Angel Посмотреть сообщение
Отлдачик не работает... Когда я регистрирую плагин на диске... то при срабатывании он не может найти сборку... Я проверил путь по которому он ищет... все ок...
По ссылке, которую ты мне давал на отладку, там вообще про это ничего не сказано...
1. Прошу не фамильярничать. Мы на брудершафт не пили.
2. В какой каталог Вы копируете сборку и pdb файл для отладки?
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством.

Подписывайтесь на мой блог, twitter и YouTube канал.
Пользуйтесь моим Ultimate Workflow Toolkit
Старый 30.07.2009, 13:30   #15  
Dark_Angel is offline
Dark_Angel
Участник
 
30 / 10 (1) +
Регистрация: 14.04.2009
C:\Program Files\Microsoft Dynamics CRM\Server\bin\assembly
Старый 30.07.2009, 13:44   #16  
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
Цитата:
Сообщение от Dark_Angel Посмотреть сообщение
C:\Program Files\Microsoft Dynamics CRM\Server\bin\assembly
Да. Это правильно.

Можете показать скришот, каким образом регистриуется сборка на сервере?
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством.

Подписывайтесь на мой блог, twitter и YouTube канал.
Пользуйтесь моим Ultimate Workflow Toolkit
Старый 30.07.2009, 13:48   #17  
Dark_Angel is offline
Dark_Angel
Участник
 
30 / 10 (1) +
Регистрация: 14.04.2009
Было бы замечательно... почта darkangel.box@mail.ru
Старый 30.07.2009, 14:15   #18  
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
Цитата:
Сообщение от Dark_Angel Посмотреть сообщение
Было бы замечательно... почта darkangel.box@mail.ru
Эээ. я имел ввиду можете ли Вы сделать скриншот каким образом в плагинрегистраторе Вы регистриуете сборку.
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством.

Подписывайтесь на мой блог, twitter и YouTube канал.
Пользуйтесь моим Ultimate Workflow Toolkit
Старый 30.07.2009, 14:33   #19  
Dark_Angel is offline
Dark_Angel
Участник
 
30 / 10 (1) +
Регистрация: 14.04.2009
Вообщем разобрался я с отладкой... не работало из-за того, что я к другому процессу конектился... у меня было 5 процессов w3wp

А как сообщение нормальное выдать пользователю?

Последний раз редактировалось Dark_Angel; 30.07.2009 в 15:12.
Старый 30.07.2009, 16:24   #20  
slivka_83 is offline
slivka_83
Консультант-джедай
Аватар для slivka_83
MCBMSS
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
1,683 / 374 (16) ++++++
Регистрация: 18.12.2008
Адрес: default city
Извините, что вмешиваюсь, а разве Ваша задача не решается бизнес-процессами?
__________________
Крокодил, крокожу и буду крокодить.
Человек человеку - волк , а зомби зомби - зомби.
Экстремал и буду экстремать!
Блога
Теги
c#, plugin, setstate

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
О динамических отображаемых именах сущностей igla Dynamics CRM: Разработка 8 23.10.2008 15:01
Изменение форм сущностей (панели навигации) W@ndERR ® Dynamics CRM: Разработка 19 16.10.2008 15:01
Как поменять статус? Alir Dynamics CRM: Разработка 4 28.08.2008 10:34
Выборка данных из нескольких сущностей, MS CRM 3 Lithium Dynamics CRM: Разработка 4 04.04.2008 17:58
Как поменять статус Верба Dynamics CRM: Разработка 1 03.12.2007 07:51

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

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

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