0

CRM2011フォームの他のエンティティの[メモ]フィールドを[メモ]フィールドの値に設定する必要があります。したがって、Javascriptを使用してNotesフィールドを取得および設定する方法を知る必要があります。下の画像にあるように、セクション内のメモフィールドの名前を取得できません。

ここに画像の説明を入力してください

4

3 に答える 3

2

CRM のメモは、内部では「注釈」と呼ばれます。他の CRM レコード タイプと同じように注釈を作成し、その注釈を対象のエンティティ レコードに関連付けます。javascript から明示的にメモ フィールドを取得しようとはしていません (通常は、SDK に記載されているプラ​​グインを介してこれを行いました)。ただし、関連付けられたエンティティ レコードがたとえばエンティティ タイプ X である注釈を取得するために oData クエリを実行できなかった理由はわかりません。

于 2012-05-21T12:08:37.563 に答える
2

ここでは 2 つのアプローチが必要です。

@Philip_Rich は、既存のレコードの注釈はフォーカスを失うとすぐに作成されるため、クエリを実行できると指摘しました。このための既存のコードを非常に簡単に見つけることができるはずです (そうでない場合は、ここで質問してください)。

新しい (保存されていない) レコードの場合、親レコードが保存されるまで注釈が保存されないことをご自身で認めました。現時点ではメモ フィールドの値にアクセスする方法はサポートされていませんが、この厄介なコードは目的の値を取得する必要があります。サポートされていないため、フォームの DOM の変更に対して脆弱であることに注意してください。

var myNotesText = document.getElementById("notescontrol").contentWindow.document.getElementById("NotesTable").children[1].children[4].children[0].innerText;
于 2012-05-29T12:58:04.950 に答える
1

JS では、割り当てを行う必要はなく、メモを作成するだけです。

ただし、メモを添付する前に、エンティティを作成する必要があります。

メモには、メモと添付ファイルの 2 種類があります。

以下は、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 - メモを添付するエンティティの (EntityReference)。

subject - (文字列) メモの件名。

text - (文字列) メモの本文。

MS Office ドキュメントを添付する場合は、isdocumentおよびmimetypeパラメータを変更する必要があります。

于 2012-05-22T05:16:58.077 に答える