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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 03.08.2015, 17:39   #1  
magicandy is offline
magicandy
Участник
 
111 / 12 (1) ++
Регистрация: 15.07.2014
? Проверка на null
Есть следующий код плагина:

X++:
if (postImageEnt.Contains("someattribute"))
{
    EntityReference someattributeER = postImageEnt.GetAttributeValue<EntityReference>("someattribute");
    if (someattributeER == null) return;
    
    /* код */
}
Будет ли в данном случае избыточной проверка?
X++:
if (someattributeER == null) return;
И вообще, может ли в контекст попадать атрибут со значением null? Если да, то в каких случаях? Спасибо.
Старый 03.08.2015, 18:01   #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
Да. В контексте может быть нул. Например когда происходит очищение поля. Всё зависит от того, что вы анализируете. Если это допустим таргет из контекста, то там может быть нул. Если же вы получаете данные из CRM, то проверки на наличие/отсутствие поля - будет достаточно.
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством.

Подписывайтесь на мой блог, twitter и YouTube канал.
Пользуйтесь моим Ultimate Workflow Toolkit
Старый 03.08.2015, 18:12   #3  
magicandy is offline
magicandy
Участник
 
111 / 12 (1) ++
Регистрация: 15.07.2014
В данном случае postImageEnt берется из PostImage контекста.
Цитата:
Например когда происходит очищение поля.
Очищение поля в коде плагина?
Или когда, например, в js-скрипте стоит принудительное setSubmitMode("always") на это поле?

Последний раз редактировалось magicandy; 03.08.2015 в 18:19.
Старый 03.08.2015, 18:30   #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
Например когда в поле записи есть значение а затем (источник не важен - это может быть форма CRM, вызов CRM эндпоинта и т.д.) выполняют очищение поля (присваивают полю значение null).

Ньюансов по поводу формирования Пост-Имедж не знаю, но предполагаю, что для формирования имаджа выполняется т.н. грязное чтение записи, так что скорее всего если поле не содержит данных, то и в коллекции аттрибутов его не будет.
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством.

Подписывайтесь на мой блог, twitter и YouTube канал.
Пользуйтесь моим Ultimate Workflow Toolkit
За это сообщение автора поблагодарили: magicandy (1).
Старый 03.08.2015, 19:08   #5  
vasya-serega is offline
vasya-serega
Участник
 
145 / 17 (1) ++
Регистрация: 12.05.2013
Адрес: Украина
Если вы всегда будет проверять EntityReference на Null из target или image, ничего страшного не произойдет. Куда хуже, когда в плагинах на продакте вываливается NullReferenceExeption, если на этапе тестирования вроде все возможные комбинации не были проверены.
За это сообщение автора поблагодарили: magicandy (1).
Старый 04.08.2015, 23:56   #6  
magicandy is offline
magicandy
Участник
 
111 / 12 (1) ++
Регистрация: 15.07.2014
Ну, что ж, будем проверять . Спасибо.
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Workflow проверка при генерации Lavdislav Dynamics CRM: Разработка 1 06.05.2014 12:44
Gareth Tucker: Duplicate Record Button using Jscript in Microsoft CRM 2011 Blog bot Dynamics CRM: Blogs 0 31.07.2012 16:11
AssociateObjects( crmFormSubmit.crmFormSubmitObjectType.value, crmFormSubmit.crmFormSubmitId.value, lookupEntityTypeCode, lookupItems, true, null,"gar_gar_filling_kits_productss"); u.rastegaev Dynamics CRM: Разработка 4 02.03.2011 12:16
CRM DE LA CREME! Some more useful javascripts for MS CRM Blog bot Dynamics CRM: Blogs 0 04.05.2010 11:05
crmForm.IsDirty зохватит всех! Черничкин Станислав Dynamics CRM: Разработка 10 19.02.2008 08:10

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

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

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