3

У меня есть одно обязательное поле в моей сущности X, но при импорте данных я могу создавать записи, даже если я не даю этому обязательному полю значение, которое не очень хорошо. Как я могу сделать это поле обязательным даже при импорте?Поле обязательное для заполнения

Спасибо заранее,

ответ

1

Уровень требование полей (например, Business Обязательный) не соблюдается при выполнении импорта (это в основном в жизнь с помощью пользовательского интерфейса).

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

4

Большинство обязательных полей применяются только в пользовательском интерфейсе. Есть несколько исключений для некоторых системных объектов, например. контакт - имя, имя учетной записи, имя инцидента - имя, чтобы перечислить несколько.

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

Самый простой способ сделать это состоит в следующем:

  1. Добавить синхронный рабочий процесс вашей организации, после того, как на создании или изменении своей области.
  2. Добавить условие в рабочий процесс, если поле содержит никаких данных, затем выполните следующий шаг:
    • Остановить рабочий процесс; отменен, с сообщением по вашему выбору.

Это приведет к ввозной провал попытки, когда поле не заполняется, и запись не будет создан или обновлен. Если вы проверили это в CRM, это приведет к тому, что пользователю появится диалоговое окно с ошибкой.

+0

Вы должны установить рабочий или плагин для выполнения до создания записи. Таким образом, вы можете заблокировать создание записи. Если проверка будет выполнена после этого, она просто покажет ошибку и все еще создаст запись –

+0

@ StefanWilliam-Worrall; Я считаю, что изменения будут отменены как часть неудачной транзакции CRM, поэтому запись должна быть удалена, если она была создана. –

2

Вы можете создать плагин Pre Operation, который работает на Create, если объект не содержит это поле, выкинет ошибку. (EDIT: Я не пробовал это, поэтому я не уверен на 100% работа)

Или

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

1

Бизнес-правила с областью действия «Сущность» - это самое простое решение без кода для реализации этого сценария.

Например, импорт объемных данных, рабочие процессы, плагины, вызовы API/SDK будут обходить формы CRM и, следовательно, также обойти любые проверки JavaScript или формы бизнес-правила, которые вы могли бы настроить. Такой тип проверки на стороне сервера обычно требовал плагинов или синхронных рабочих процессов.

К счастью, бизнес-правила теперь имеют новую область «Сущность», которая применяется на уровне сервера вместо уровня формы. Это означает, что эти бизнес-правила, подобно плагинам и рабочим процессам синхронизации, будут выполняться, даже если вы не используете CRM-форму в своей транзакции, потому что они происходят на платформе (на стороне сервера) вместо формы (браузер/клиентская сторона) ,

Ссылка, чтобы узнать больше: https://community.dynamics.com/crm/b/gonzaloruiz/archive/2016/08/15/business-rules-vs-sync-workflows-in-crm

+0

Мое решение для одного лайнера прямолинейно без решения кода, которое не упоминается в других 3 ответах. Ссылка просто для получения дополнительных знаний, если кто-то (не crm; вниз избиратели) сталкивается и хочет снова искать, чтобы узнать, что такое бизнес-правило (прямая ссылка google luck :)) :) –

 Смежные вопросы

  • Нет связанных вопросов^_^