CRM Javascript 检查实体类型

CRM Javascript to Check Entity Type

我正在使用 CRM 2013,我正在写一个 JavaScript 来检查电子邮件参与者列表中是否有任何 'Queue' 类型的实体。

我卡在了这一部分,我必须编写脚本来检查此队列数据类型。

MSDN 文章建议使用 Xrm.Page.data.entity.getEntityName(),但是如果我在其中插入实体名称,我不确定它是否有效:

toParty[indxAttendees].getEntityName()

感谢您的帮助。

function deleteSenderQueueFromEmail() {
  var formType = Xrm.Page.ui.getFormType();

  if (formType == 1 || formType == 2) {

    var toParty = Xrm.Page.getAttribute("to").getValue();
    var ccParty = Xrm.Page.getAttribute("cc").getValue();
    var bcParty = Xrm.Page.getAttribute("bcc").getValue();


    for (var indxAttendees = 0; indxAttendees < toParty.length; indxAttendees++) {

      if (toParty[indxAttendees].getEntityName() == "queue") {
        //delete the queue from the list of participants
      }
    }
  }
}

Xrm.Page.data.entity.getEntityName() 获取显示在表单上的实体的逻辑名称。在 e-mail 表格上,这将始终是 "email".

您要查找的查找值位于属于 To/Cc/Bcc 字段的数组中。查找值是具有 identityTypename 属性.

的对象

我会建议一个接受派对列表参数的函数。

function deleteSenderQueue(partyList) {
    if (partyList == null) {
        return;
    }

    partyList.forEach(function(party) {
        if (party.entityType === "queue") {
            // Delete the queue from the list of participants.
        }
    });
}

这个函数可以这样使用:

deleteSenderQueue(Xrm.Page.getAttribute("to").getValue());