0

我从某个记录表单上的功能区按钮调用 crm 对话框。有没有办法在对话框中获取此记录 Guid?

4

3 回答 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 回答