CRM 2011 - 筛选的子网格搜索功能



我找到了一种使"过滤子网格"与JavaScript一起使用的方法,但是当我在子网格上添加"搜索框"时,它会搜索所有记录,而不是作为过滤结果的记录。

基本上,我们唯一要做的就是在单击"子网格A"中的行时放置"FetchXML","子网格B"将获得新的"FetchXML"。 不幸的是,我们不能再在"子网格B"中搜索,它搜索"ALL"记录,它应该只在新的"FetchXML"中搜索。 有人在CRM 2011中完成了这项工作吗?

我唯一做的是:

//Setting the fetch xml to the sub grid.
relatedSamples.control.setParameter("fetchXml", fetchXml);
relatedSamples.control.setParameter("effectiveFetchXml", fetchXml);
relatedSamples.control.setParameter("fetchXmlForFilters", fetchXml);
//This statement will refresh the sub grid after making all modifications.
relatedSamples.control.refresh();

搜索后看看你的 effectiveFetchXml。 您会注意到它不包括您最初传递给它的有效 FetchXml 。

不幸的是,解决此问题的唯一方法是劫持搜索按钮以触发您自己的事件。 在你的事件中传递你想要的有效FetchXml,包括搜索框的值(例如,在搜索"t"时注入这样的东西......

<filter type="or">
<condition attribute="subject" operator="like" value="t%" />
<condition attribute="regardingobjectidname" operator="like" value="t%" />
</filter>

保罗感谢你的答案,它:)我使用"F12"工具搜索"搜索"按钮的ID是什么,然后我可以覆盖它:

if (document.getElementById("ModulesPlannedChoice_findCriteriaButton") != null) document.getElementById("ModulesPlannedChoice_findCriteriaButton").onclick = function () { refreshModulesPlanned(); }
var searchValue = (document.getElementById("ModulesPlannedChoice_findCriteria") != null ? document.getElementById("ModulesPlannedChoice_findCriteria").value : "");

不,我的任务是做所需的实现,快速查找像正常一样工作!

setParameter 函数不再可用。现在你可以使用 SetParameter 来代替它。幸运的是,刷新功能仍然可用。因此,更改代码中的函数名称,它将起作用。

相关内容

  • 没有找到相关文章

最新更新