Вопрос

Мне нужно установить поле Notes в значение поля Notes в другом объекте в форме CRM 2011.Итак, мне нужно знать, как Get и установите поле Notes, используя JavaScript.И я не могу получить имя поля Notes внутри раздела, как вы можете увидеть на следующем изображении.

Введите описание изображения здесь

Это было полезно?

Решение

Хорошо, есть два подхода, необходимые здесь.

@philip_rich Указал, что аннотации для существующих записей создаются как только они теряют фокус и поэтому могут быть запрошены.Вы должны быть в состоянии найти существующий код для этого довольно легко (если нет, спросите здесь).

Вы сами признали, что для новых (несогласованных) записей аннотации не сохраняются до тех пор, пока не будет сохранена родительская запись.Нет поддерживаемого способа доступа к значению в поле «Примечания» на данный момент, однако этот неприятный бит кода должен получить значение, которое вы ищете.Остерегайтесь, что, поскольку оно не поддерживается, он уязвим к изменениям DOM в формах:

var myNotesText = document.getElementById("notescontrol").contentWindow.document.getElementById("NotesTable").children[1].children[4].children[0].innerText;
.

Другие советы

Примечания в CRM называются «аннотациями» под капотом.Вы создаете аннотацию, поскольку вы будете любым другим типом записи CRM, а затем ассоциируйте эту аннотацию с интересующей достопримечательностью субъекта.Я не попытался вернуть поля заметок от JavaScript (я обычно делаю это через плагин, который документируется в SDK).Тем не менее, я не вижу причин, по которым вы не смогли выполнить запрос ODATA для получения аннотаций, в которых связанная запись субъекта была на примере X.

В JS Вам не нужно назначать, вы просто создаете ноту.

Но вы определенно нужны созданный объект, прежде чем вы сможете прикрепить к нему к нему обратите внимание.

Примечания могут быть два типа записка и вложение.

Вот пример того, как вы можете создать простое (текстовое) примечание (аннотацию) от 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);
}
.

Где:

Entity - (EntiteReference) объекта, которую вы хотите прикрепить ноту.

Субъект - (строка) тема примечания.

<Сильный> Текст - (строка) Тело примечания.

Если вы хотите прикрепить документ MS Office, вам необходимо изменить isdocument и mimetype mimetype .

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top