奇怪的错误TypeError:无法读取null的属性“ getValue”

时间:2019-07-30 08:40:10

标签: javascript arrays dynamics-crm dom-events

我收到这个奇怪的错误:

  

TypeError:无法读取null的属性“ getValue”

当我想获取另一个字段的值时,取决于unit Field的更改,并被告知2个字段(项目和Unit)是查找字段。这是我的代码:

function OnChanegUnit() 
  {
    debugger;
    var UnitId = Xrm.Page.getAttribute("ph_phdunitId").getValue();
     if (UnitId != null) 
    {
        var oDataSetName = "ph_phdunitSet";
        var columns = "ph_projectnameid";
        var filter = "ph_phdunitId eq (guid'" + UnitId[0].id + "') ";
        var results = retrieveMultiple(oDataSetName, columns, filter);
        if (results != "")
        { 
            if (results[0].ph_projectnameid.Id != null) 
            {

                SetLookup("ph_project", results[0].ph_projectnameid.Id, results[0].ph_projectnameid.Name, results[0].ph_projectnameid.LogicalName);
            }
            else {
                Xrm.Page.getAttribute("ph_project").setValue(null);
                Xrm.Page.getAttribute("ph_project").setSubmitMode("always");
            }
             }
    }
    else{
        Xrm.Page.getAttribute("ph_project").setValue(null);
        Xrm.Page.getAttribute("ph_project").setSubmitMode("always");
       }
}

1 个答案:

答案 0 :(得分:1)

代码与此行相关:

var UnitId = Xrm.Page.getAttribute("ph_phdunitId").getValue();

使用Xrm函数,字段名称必须始终为小写,因此正确的代码为

var UnitId = Xrm.Page.getAttribute("ph_phdunitid").getValue();

当然,如果该字段的格式为

关于其他错误

Cannot read property '0' of undefined

它可能与来自您的自定义函数的results相关