2011-06-27 9 views
0

Microsoft Dynamics CRM 2011のカスタムエンティティの名前フィールドに入力します。 このエンティティのonsaveトリガでトリガされる関数を作成しました。Microsoft CRM 2011エンティティの名前フィールドに自動入力

このフィールドは必須ではありません。しかし、彼らはこの分野をビジネスに必要としています。だから、私は新しいレコードを保存しようとすると、私は、このフィールドを埋める必要がありますメッセージを取得します。つまり、私のonsave関数が呼び出されることはありません。ここ

がレコードを保存するときに呼ばれる私のコードです:良くls_string内のテキストは、どこから来るのかに応じて、

var ls_string = ""; 

// put some text in ls_string 

var myName = ""; 
if (myName != Xrm.Page.getAttribute("name").getValue()) { 
    Xrm.Page.getAttribute("name").setValue(ls_string); 
    Xrm.Page.getAttribute("name").setSubmitMode("always");   

} 

答えて

3

うーん、保存イベントが発生する前に、あなたは、名前フィールドの人口を行うことができます。

"First Name"または "Last Name"フィールドのいずれかが変更された場合、名前フィールドを "First Name" + "Last Name"に更新するのが典型的な例です。

ただし、クライアントスクリプトを使用してフィールドに入力することは、必ずしも最適なプランではありません。ビジネスロジックを強化するためにプラグインを使用して、抜け穴を避ける方がよいでしょう。

フィールドがビジネス要件の場合はこれは役に立ちませんが、フラグが実際にあなたに与える利点はわかりません。本当に必要なビジネスフラグが必要な場合は、クライアントスクリプト内の値を読み込み、常にプラグインで上書きします。

+0

+1「ビジネスロジックを実施するためにプラグインを使用する方が良い」 – ccellar

関連する問題