2013-02-19 24 views
1

经过大量的解答和实验后,我终于成功地完成了一些不完全失败的事情。它可以在下面看到。如何在CRM 2011中正确设置查找值?我只是半途而废

// set value in form field 
function setLookup(lookupSchemaName, lookupGuid, lookupValue, lookupEntity) 
{ 
    //var lookupSchemaName = 'uomid'; 
    //var lookupGuid = '270BD3DB-D9AF-4782-9025-509E298DEC0A'; 
    //var lookupValue = 'EACH'; 
    //var lookupEntity = 'unit'; 

    Xrm.Page.getAttribute(lookupSchemaName).setValue([{id: lookupGuid, name: lookupValue, entityType: lookupEntity}]); 
} 

这附加到产品查找字段的onChange事件。它工程但不完全。问题是,当它运行时,我最终会看到一个包含单词'EACH'的查找字段,并以蓝色突出显示(表示与其后的记录进行链接;请参阅下图)但未完全接受。可以这么说。

我期望得到的是实体的图标和可点击的值。我也无法保存表单,但是我可以使用该字段的常规查找功能并让事情恢复正常。

Field state after value insertion

+4

度量单位实体称为'uom'。尝试使用该值设置值。你的JS看起来很好。 – glosrob 2013-02-19 08:38:28

+0

@glosrob它的工作!谢谢你,谢谢你,谢谢你。这引出了另一个快速问题。什么是找到真实实体名称的适当方式? – Chris76786777 2013-02-19 16:28:51

+0

您可以在实体页面上看到它。设置 - >自定义 - >自定义系统 - >实体。选择一个实体。它的逻辑名称显示在“名称”下(与“显示名称”下列出的显示/友好名称相对) – glosrob 2013-02-19 16:31:10

回答

2

这里的问题是,你正在使用Unit of Measure的显示名称,而不是逻辑名。

Unit of Measure的正确逻辑名称是。

这可以通过CRM去

Settings > Customisations > Customise the System > Entities

逻辑名称显示在实体页面上找到。