Динамика - запуск проверки обязательных полей без сохранения - PullRequest
0 голосов
/ 27 марта 2020

Я ищу способ показать стандартное сообщение об ошибке, которое отображается рядом с необходимыми полями при сохранении формы, но без ее сохранения.

Ответы [ 2 ]

1 голос
/ 29 марта 2020

Учитывая, что вы работаете с последней онлайн-версией Dynamics, я бы порекомендовал вам пользователя addnotification с контекстом выполнения.

Вот код, который вам нужен, необходимо настроить в соответствии с вашими потребностями, Пример показывает тип уведомления в соответствии с рекомендациями, но вы можете использовать Error, чтобы форма не сохраняла и отображала ошибку.

function addTickerSymbolRecommendation(executionContext) {
    var formContext = executionContext.getFormContext();
    var myControl = formContext.getControl('name');
    var accountName = formContext.data.entity.attributes.get('name');
    var tickerSymbol = formContext.data.entity.attributes.get('tickersymbol');

    if (accountName.getValue() == 'Microsoft' && tickerSymbol.getValue() != 'MSFT') {
        var actionCollection = {
            message: 'Set the Ticker Symbol to MSFT?',
            actions: null
        };

        actionCollection.actions = [function () {
            tickerSymbol.setValue('MSFT');
            myControl.clearNotification('my_unique_id');
        }];

        myControl.addNotification({
            messages: ['Set Ticker Symbol'],
            notificationLevel: 'RECOMMENDATION',
            uniqueId: 'my_unique_id',
            actions: [actionCollection]
        });
    }
    else
        console.log("Notification not set");
}
1 голос
/ 28 марта 2020

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

formContext.data.entity.save(saveOption);

Подробнее

Но вы все равно можете добавлять уведомления в поля при изменении или при загрузке формы для пользовательский сценарий ios.

Xrm.Page.getControl(arg).setNotification(message,uniqueId)

Подробнее

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...