Xrm.Page.data.getIsValid() возвращает разные значения для пользователей с разными ролями.

У меня есть кнопка ленты «ABC» в форме «Возможность». OnClick "ABC" запускается следующая функция:

function popup()
{
    if (!Xrm.Page.data.getIsValid()) return;
    -------
    -------
    -------
}

Я проверил следующие шаги.

Если у пользователя есть роль, отличная от системного администратора.

  1. откройте запись возможности, нажмите кнопку «ABC», сработает функция popup(). Xrm.Page.data.getIsValid() вернуть истину
  2. Откройте запись возможности, нажмите кнопку «ABC», отредактируйте запись, сохраните запись, сработает функция popup(). Xrm.Page.data.getIsValid() вернуть ложь

Если у пользователя есть роль системного администратора.

  1. откройте запись возможности, нажмите кнопку «ABC», сработает функция popup(). Xrm.Page.data.getIsValid() вернуть истину
  2. Откройте запись возможности, нажмите кнопку «ABC», отредактируйте запись, сохраните запись, сработает функция popup(). Xrm.Page.data.getIsValid() вернуть истину

Пожалуйста, помогите мне, почему getIsValid() возвращает разные значения, если пользователь не является администратором


person Siddique Mahsud    schedule 01.09.2015    source источник


Ответы (1)


Где вы нашли getIsValid()? Этого нет в документации. Итак, я предполагаю, что это внутренняя и, следовательно, неподдерживаемая функция, например. вы не должны ожидать, что это сработает.

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

person James Wood    schedule 01.09.2015
comment
Большое спасибо, Джеймс, я также думаю больше не использовать эту функцию из-за странного поведения, и из-за того, что это внутренняя функция. - person Siddique Mahsud; 02.09.2015