如何在JavaScript中将User字段设置为SystemUserId?

时间:2009-12-04 17:39:30

标签: javascript dynamics-crm dynamics-crm-online

我正在Microsoft的CRM Dynamics Online中自定义表单,需要将字段值设置为当前用户的ID。我有正确提取SystemUserID的代码,但是我很难将值输入表单字段。

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

[更新] 经过一番挖掘,我根据SDK中的示例更新了我的代码。它现在看起来像这样:

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

但是,这会导致最后一行出错 - “对象不支持此属性或方法”。所以我仍然感到难过(甚至更多,因为样本不在SDK中)。

1 个答案:

答案 0 :(得分:4)

尝试摆脱前两行并用

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

id属性可能需要大括号,因此您可能需要将其更改为:

id: '{' + systemUserIdNode + '}'