我从某个记录表单上的功能区按钮调用 crm 对话框。有没有办法在对话框中获取此记录 Guid?
问问题
2460 次
3 回答
2
感谢所有回复。我找到了办法。在对话框表单助手中,我们应该查找:{ EntityName },而不是在 { EntityName }下方的下拉列表中选择- 存储了有关调用对话框的当前记录的所有数据。
于 2012-10-25T08:44:14.680 回答
0
是的,这是一个很好的做法:
http://crmmongrel.blogspot.com/2011/06/launch-dialog-from-ribbon-button-in-crm.html
在第 6 步中,您会注意到功能区包含以下内容:
<CrmParameter Value="FirstPrimaryItemId" />
于 2012-10-25T02:46:16.927 回答
0
我的需求略有不同,因此提出的两个解决方案并不完全适合。我发布以防万一这对其他人有帮助。我想在提示和响应页面上显示 guid,然后将 guid 传递给自定义代码。
当然,CRM 会将主键 guid 转换为记录名称。
在代码中这没问题,因为我可以查询实体以获取该名称的记录,但其中有很多额外的处理。
我们在所有表格上都有一个管理选项卡,以获取额外的支持信息。在这种情况下,我只是创建了一个字段,将其放在管理选项卡上,然后添加此 javascript 以形成 OnLoad。
function PopulateRecordGuid()
{
if (Xrm.Page.ui.getFormType() != 1)
{
if(Xrm.Page.getAttribute('xxxx_recordguid').getValue() == null )
{
var Id = Xrm.Page.data.entity.getId();
Id = Id.replace('{', '');
Id = Id.replace('}', '');
Xrm.Page.getAttribute('xxxx_recordguid').setValue(Id);
}
}
}
当然有很多变化,例如使用插件或触发记录创建的工作流填充创建消息等。
于 2014-04-17T18:23:16.303 回答