Как установить для поля пользователя значение SystemUserId в JavaScript? - PullRequest
0 голосов
/ 04 декабря 2009

Я настраиваю форму в Microsoft CRM Dynamics Online, и мне нужно установить значение поля для идентификатора текущего пользователя. У меня есть код, который правильно вытягивает SystemUserID, но у меня возникают трудности с получением значения в поле формы.

//Lots of XML/SOAP stuff to pull the user information
var systemUserIdNode = entityNode.selectSingleNode("q1:systemuserid");
crmForm.all.FieldForUserID.DataValue = systemUserIdNode; //Fails silently

[Update] После некоторых копаний я обновил свой код на основе примера в SDK. Теперь это выглядит так:

var userIdValue = new Array();
userIdValue [0] = new LookupControlItem(systemUserIdNode, 8, fullNameNode);
crmForm.all.new_useridfield.DataValue = userIdValue ;

Однако это вызывает ошибку в последней строке - «Объект не поддерживает это свойство или метод». Так что я все еще в замешательстве (тем более, что образец вышел из SDK).

1 Ответ

4 голосов
/ 10 декабря 2009

Попробуйте избавиться от первых двух строк и заменить третью на

crmForm.all.new_useridfield.DataValue = 
    [{ 
        id: systemUserIdNode,
        name: fullNameNode,
        typename: 'systemuser'
    }];

Для свойства id могут потребоваться фигурные скобки, поэтому вам может потребоваться изменить его на:

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