Обязательны ли обязательные поля при обновлении при использовании CrmService?

Asked
Viewd369

1

MSCRM 4.0

При написании плагинов я предполагал, что обязательные поля всегда будут существовать либо в целевом изображении, либо в изображении PreImage. Но недавно при кодировании внешнего приложения, которое использует CrmService, я понял, что служба позволит создать бизнес-объект (или динамический объект) с использованием метода Create, даже если обязательные поля не существуют или содержат значение.

Так ли это? Есть ли способ принудительно указать обязательные поля при вызове метода обновления службы? Кто-нибудь знает, почему это может быть не так? Может ли кто-нибудь пролить свет на эту проблему? Придется ли мне самому управлять этими обязательными полями?

2 ответов

2

Нет проверки. Вот почему нам нужно убедиться, что эти свойства правильно заполнены допустимым значением.

Необходимо обеспечить соблюдение надлежащих правил проверки в событии PreCreate, чтобы вы могли использовать InvalidPluginExecutionException , чтобы уведомить пользователей о том, что некоторые обязательные свойства не заполнены должным образом.

2

Нет, валидации нет. Для стандартных сущностей вы можете найти обязательные поля платформы. Но обычно они ограничиваются такими вещами, как бизнес-подразделение в отчете или что-то в этом роде - редкие случаи. Если вам нужна бизнес-проверка, вам нужно будет добавить ее в плагин Pre-Create / Update.