![]() |
#1 |
Участник
|
![]()
Подскажите пожалуйста, как узнать какое значение в picklist было выбрано?
есть picklist: mypicklist : A=1 B=2 и условие типа: if (mypicklist.value=1) { clas="A" } else { clas="B" } Спасибо!!! П.С.: сильно не пинайте, 3 дня только в плагинах . ![]() |
|
![]() |
#2 |
Moderator
|
Какая версия системы? Если 4.0 то можно использовать что-то вроде:
Код: public void Execute(IPluginExecutionContext context) { DynamicEntity entity = null; // Check if the input parameters property bag contains a target // of the create operation and that target is of type DynamicEntity. if (context.InputParameters.Properties.Contains("Target") && context.InputParameters.Properties["Target"] is DynamicEntity) { // Obtain the target business entity from the input parmameters. entity = (DynamicEntity)context.InputParameters.Properties["Target"]; *** } }
__________________
http://fixrm.wordpress.com, снятие/наведение порчи. Быстро, дорого, гарантия. ![]() ![]() |
|
|
За это сообщение автора поблагодарили: netmstnet (1). |
![]() |
#3 |
Участник
|
Цитата:
Сообщение от Артем Enot Грунин
![]() Какая версия системы? Если 4.0 то можно использовать что-то вроде:
Код: public void Execute(IPluginExecutionContext context) { DynamicEntity entity = null; // Check if the input parameters property bag contains a target // of the create operation and that target is of type DynamicEntity. if (context.InputParameters.Properties.Contains("Target") && context.InputParameters.Properties["Target"] is DynamicEntity) { // Obtain the target business entity from the input parmameters. entity = (DynamicEntity)context.InputParameters.Properties["Target"]; *** } } public void Execute(IPluginExecutionContext context) { DynamicEntity entity = null; if (context.InputParameters.Properties.Contains("Target") && context.InputParameters.Properties["Target"] is DynamicEntity) { entity = (DynamicEntity)context.InputParameters.Properties["Target"]; if (entity.Name != "new_certificat") { return; } } else { return; } { // на форме "new_certificat" есть picklist "new_cursul" со значениями : (Inter=1; Rinter=2) } |
|
![]() |
#4 |
Чайный пьяница
|
Как то так должен выглядеть код:
X++: if (!entity.Properties.Contains("new_cursul")) return; int value = ((Picklist)entity["new_cursul"]).Value; //обработка вашей логики
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством. Подписывайтесь на мой блог, twitter и YouTube канал. Пользуйтесь моим Ultimate Workflow Toolkit |
|
|
За это сообщение автора поблагодарили: netmstnet (1). |
![]() |
#5 |
Участник
|
Спасибо огромное, все получилось.
Ваш совет толкнул меня на мысль: просто передать в качестве параметра, имя значений а не значения. Вот так у меня работает: int value = ((Picklist)entity["new_cursul"]).Value; cname = value.ToString(); .............. Неудобство в том что имена в виде 1,2,3,... и тд., не очень информативны, когда "Inter", "Rinter", "Adr", в полне нормально. Как передать имя а не значения? Спасибо! |
|
![]() |
#6 |
Moderator
|
Боюсь что никак. Значение пиклиста - это именно цифровой код опции, а не пользовательская метка. Метки могут меняться по требованиям бизнеса, будут отличаться при переключении языков интерфейса и.т.д Цифровое значение должно быть неизменным идентификатором. Если же вам все же нужно получить метку из кода, то вы можете воспользоваться сервисом метаданных IPluginExecutionContext.CreateMetadataService(). С его помощью вы можете получить всю необходимую информацию о любом атрибуте.
__________________
http://fixrm.wordpress.com, снятие/наведение порчи. Быстро, дорого, гарантия. ![]() ![]() |
|
![]() |
#7 |
Участник
|
Мда, Вы правы я этот момент упустил. Спасибо.
Тогда добавлю еще один колумн в таблице типа FrendlyName с именем счетчика , и все станет информативно. |
|
![]() |
#8 |
Moderator
|
Что у вас за задача?
__________________
http://fixrm.wordpress.com, снятие/наведение порчи. Быстро, дорого, гарантия. ![]() ![]() |
|
![]() |
#9 |
Участник
|
|
|
![]() |
#10 |
Moderator
|
Боюсь что нет
__________________
http://fixrm.wordpress.com, снятие/наведение порчи. Быстро, дорого, гарантия. ![]() ![]() |
|
|
|