设置并在CRM 2011 JavaScript中获取Notes字段
-
12-12-2019 - |
题
我需要将Notes字段设置为CRM 2011表单中的其他实体中的Notes字段值。所以,我需要知道如何使用JavaScript获取和设置Notes字段。而且我无法在下面的图像中看到的部分内找到Notes字段的名称。
解决方案
好的,这里需要两种方法。
@philip_rich指出,一旦失去焦点,就会创建现有记录的注释,因此可以查询。您应该能够很容易地找到现有代码(如果没有,请在此询问)。
您自己承认,对于新的(未撤下的)记录,在保存父记录后,不会保存注释。此时,没有支持访问Notes字段中的值的方法,但是这个令人讨厌的代码都应该得到你寻求的价值。要注意,由于它不受支持,它易于显示表单中的DOM更改:
var myNotesText = document.getElementById("notescontrol").contentWindow.document.getElementById("NotesTable").children[1].children[4].children[0].innerText;
. 其他提示
CRM中的注释称为引擎盖下的“注释”。您可以创建一个注释,因为您可以使用其他CRM记录类型,然后将该注释与关注的实体记录相关联。我没有试图明确检索来自JavaScript的Notes字段(我通常通过插件完成这一点,该插件被记录在SDK中)。但是,我认为没有理由为什么无法执行OData查询以检索关联实体记录是实体类型x的注释。
在js中,您不需要分配,您只需创建一个注释。
但是您在您可以将注释附加之前,您可以肯定需要创建的实体。
notes可以是两个类型的音符和附件。
这是如何从js创建一个简单(文本)注意(注释)的示例。
function _createAnnotation(entity, subject, text) {
var orgService = GetOrganizationService();
var annotation = {};
annotation.Name = "annotation";
annotation._properties = [];
annotation._propertyTypes = [];
annotation._properties['objectid'] = entity;
annotation._propertyTypes['objectid'] = 'lookup';
annotation._properties['subject'] = subject;
annotation._propertyTypes['subject'] = 'string';
annotation._properties['notetext'] = text;
annotation._propertyTypes['notetext'] = 'string';
annotation._properties['isdocument'] = 'false';
annotation._propertyTypes['isdocument'] = 'boolean';
annotation._properties['mimetype'] = 'text/html';
annotation._propertyTypes['mimetype'] = 'string';
orgService.Create(annotation);
}
.
其中:
实体 - 要附加注释的实体的 - (entityReference)。
主题 - (String)注意题。
文本 - (字符串)正文的音符。
如果要附加MS Office文档,则需要更改 ISDocument 和 MimeType 参数。
不隶属于 StackOverflow