CRM Online 2011 の関連データを更新するエンティティのリボン ボタンをクリックすると、いくつかのコードを実行する必要があります。このロジックをすべて JScript で記述する必要はありません。JScript から C# コードを呼び出す方法はありますか? Microsoft がリボンから使用している JScript ファイルを調べたところ、次のようになっています。
Mscrm.Campaign.copyCampaign = function (campaignId, saveAsTemplate) {
var $v_0 = new RemoteCommand("MarketingAutomation", "CopyCampaign", null);
$v_0.SetParameter("campaignId", campaignId);
$v_0.SetParameter("saveAsTemplate", saveAsTemplate.toString());
var $v_1 = $v_0.Execute(),
$v_2 = $v_1.ReturnValue;
openObj(Mscrm.EntityTypeCode.Campaign, $v_2, null, null, Mscrm.NavigationMode.NavigationModeInline, null);
Mscrm.Utilities.refreshParentGrid(Mscrm.EntityTypeCode.Campaign, campaignId)
};
Web サービス関数に戻ると思われる RemoteCommand 呼び出しが行われています。私はこのようなことをしたいと思っています。独自の Web サービス関数を追加できますか?
テストとして、エンティティの「割り当て」メッセージを送信するために JScript から呼び出しを行うことができました。これはプラグインで機能する可能性がありますが、C# コード (「割り当て」、「更新」など) を実行するためだけに実際には発生しなかった実行イベントのメッセージを送信するのは奇妙に思えます。独自のメッセージを作成する方法はありません。