Dynamics CRM 2013/Fall '13 コマンドバーのカスタマイズ その 7

みなさん、こんにちは。

今回は既存のボタンに対するカスタマイズを紹介します。すでに
これまでの記事の内容を理解している前提となりますので、まだ
以前の記事をご覧でない場合、以下リンクを参照してください。

Dynamics CRM 2013/Fall '13 コマンドバーのカスタマイズ その 1
Dynamics CRM 2013/Fall '13 コマンドバーのカスタマイズ その 2
Dynamics CRM 2013/Fall '13 コマンドバーのカスタマイズ その 3
Dynamics CRM 2013/Fall '13 コマンドバーのカスタマイズ その 4
Dynamics CRM 2013/Fall '13 コマンドバーのカスタマイズ その 5
Dynamics CRM 2013/Fall '13 コマンドバーのカスタマイズ その 6

シナリオ

取引先企業のグリッドコマンドバーにおいて、新規ボタンの画像
を変更し、文字列を「作成」に変更する。

image

サポートされる内容

コマンドバーのカスタマイズについては、既存のコマンド定義の
再利用はサポートされますが、JavaScript 関数の利用はサポート
されません。またコマンド定義についても将来的な変更や廃止は
すべて Microsoft がその権限を持っているものとされています。

既存ボタンのカスタマイズ

既存ボタンをカスタマイズするには、同じ ID を指定することで
上書きする必要があります。ただしデータベースのレコードを
上書きするわけではなく、カスタマイズが上位のレイヤーとして
挿入されるため、もともとある定義は変更されません。

1. Command Bar Test ソリューションをエクスポートして、解凍
した Customizations.xml を開きます。

2. 以前紹介した方法ですでに新規ボタンの ID を探します。該当
の Button 定義をまるまるコピーします。

3. エンティティリボンに以下の CustomAction を追加します。
Button 定義はコピーしたものを張り付けます。

LabelText とImage16by16 のみ変更しています。

image

4. 変更を保存してソリューションをインポートした後、すべて
のカスタマイズの公開を行い、ブラウザをリフレッシュします。

5. 取引先企業グリッドを表示します。

image

6. ボタンをクリックして、新規ボタンと同じ動作となるか
確認します。

必要に応じて複数言語対応も検討してください。

まとめ

コマンドバーのカスタマイズは Customizations.xml を直接編集
する必要があるため、慣れが必要です。また複数の方法で同じ
結果を達成できるため、要件や状況に合わせて適切な方法を
選択する必要があります。

ただし、既定のボタンを隠したい場合はまず権限をはく奪する
ことで対応するように検討してください。

- 中村 憲一郎