Dynamics CRM 2011 読み取り最適化フォーム

※ 2013年 3月 21日 追記

読み取り最適化フォームの機能が拡張され、Web リソースがサポートされます。
https://msdn.microsoft.com/ja-jp/library/hh913610.aspx#BKMK_ReadOptimizedForms

 

みなさん、こんにちは。

今回は、先日公開された Microsoft Dynamics CRM 2011 Update Rollup 7 の
新機能である、読み取り最適化フォームを紹介します。

情報元 : Read-optimized forms

背景と概要

多くのユーザーが、多様なデバイスやネットワークを経由して情報にアクセスする際、
データロードのパフォーマンスはとても重要になります。よって、より高速なデータの
ロードや、効率の良いネットワーク帯域の利用に重点を置きました。このことは、普段
データの編集よりも閲覧を行うことが多いユーザーにとって、特に影響があります。

その成果の一部として Update Rollup 7 で読み取り最適化フォームを提供します。

読み取り最適化フォームは、レコードの表示がとても高速です。これはデータとして
必要な最小限の要素だけを取得することで実現しています。よってフォームリボンや
Web リソースは読み込みません。ただし、読み取り最適化フォームを開いた後に
データの編集が必要になった場合でも、ワンクリックで編集用のフォームに移動が
可能です。

Update Rollup 7 では、読み取り最適化フォームは既定で無効です。こちらの機能は
今までに実装されていなかったため、急に画面が変わるとユーザーが困惑するかも
しれないという配慮からです。また、データの表示にスクリプトや Web リソースを
多く利用している環境があることも理解しています。読み取り最適化フォームはまだ
完成形ではなく、今後も多くの考慮を踏まえて改善していく予定です。将来的には
読み取り最適化フォームが既定のフォームとなる予定です。

機能

この記事では、読み取り最適化フォームの以下の機能を紹介します。

• 読み取り最適化フォームの詳細
• 編集フォームへの切り替え
• 読み取り最適化フォームの有効化
• 読み取り最適化フォームと、編集フォームが表示される場合の条件

読み取り最適化フォームの詳細

読み取り最適化フォームは、データ以外の要素を排除することで高速なロードを
実現しています。読み取り最適化フォームには以下の項目が含まれます。

• 全てのフィールド、メモ、iFrame、サブグリッドは既定で表示します。
• フォームレベルおよびフィールドレベルのセキュリティに準拠します。
• フォームリボンは表示されません。
• ナビゲーションは表示されません。
• Web リソースは表示されません。
• スクリプトは実行されません。
• レコードは編集できません。

取引先企業のサンプルレコードは以下のように表示されます。

image

image

メモ

メモがある場合は、読み取り最適化フォームでも表示されます。新しくメモを追加したり
編集するには、編集フォームを開く必要があります。

サブグリッド 

多くのエンティティが 1 : N 関連を持っており、その情報をフォーム上に配置しています。
読み取り最適化フォームでもサブグリッドの内容を確認することが可能で、最新の情報に
更新や、並べ替え、検索なども期待通りに動作します。グラフに関しても表示が可能ですが
リボンが読み取り最適化フォームにはないため、サブグリッドからのアクションは行えません。

IFrames

外部の情報を表示する手段として IFrame を利用しますが、この情報が確認できることは
非常に重要です。その重要性を認識しているため、読み取り最適化フォームでも IFrame の
情報を表示することが可能です。しかし、IFrame 内であってもスクリプトは一切動作しない
ため、Client API を利用したスクリプトがある場合には、エラーになります。

アクティビティ フィードおよび画像 Web リソース

フォーム上にアクティビティ フィードのウォールおよび、画像の Web リソースがある場合
読み取り最適化フォームが表示されます。スクリプトや Silverlight 等の Web リソースがある
場合は、自動で編集フォームが開きます。ただし、読み取り最適化フォームでは、アクティビティ
フィードのウォールも画像 Web リソースも、内容は表示されません。これらの情報を表示したい
場合は、編集フォームを開く必要があります。しかしこちらの挙動は、時期メジャーリリースにて
変更される予定であり、アクティビティ フィードのウォールも、画像 Web リソースも、読み取り
最適化フォームで、表示されるようになる予定です

編集フォームへの切り替え 

編集フォームへの切り替えは 1 クリックだけで実行可能です。ユーザーは 2 通りの方法で
編集フォームへ切り替えることが出来ます。

1) 読み取り最適化フォームより、編集ボタンをクリックします。
 image

2) レコードを開く前に、グリッドより編集ボタンをクリックします。
image

読み取り最適化フォームの有効化

Update Rollup 7 は既定で読み取り最適化フォームが無効になっています。従って管理者が
明示的に有効にする必要があります。.

システムの設定

管理者がまず組織でレベルで設定を有効にします。またユーザーレベルでの制御も可能です。

1. 設定 | 管理 | システムの設定をクリックします。

2. カスタマイズタブより、フォームモードを変更します。
  ・ 編集を選択して、「フォームを表示するモードをユーザーが選択できるようにする」 のチェックを
     オフにすると、ユーザーは常に編集フォームを開くことになります。
  ・ 読み取り最適化を選択すると、ユーザーは常に読み取り最適化フォームが既定になります。
  ・ 「フォームを表示するモードをユーザーが選択できるようにする」 のチェックをオンにすると
     各ユーザーごとに既定を変更できます。

image

管理者は以下の手順でユーザーごとの既定を変更できます。

1. 設定 | 管理 | ユーザーを開きます。

2. 既定を変更するユーザーを選択して、リボンのフォームモードより、任意のモードを
指定します。複数のユーザーを同時に変更可能です。

image

個人用オプション

既定で、個人のオプションは組織の設定を利用するようになっていますが、管理者が
許可している場合、各自で設定を変更することが可能です。

image

読み取り最適化フォームと、編集フォームが表示される場合の条件

フォームによって、カスタムスクリプトの有無等、カスタマイズ状況が異なるため、ユーザーが
読み取り最適化フォームを開けるか、編集フォームとなるかが不透明になる場合があります。
以下に、組織やユーザーの設定以外の要因を示します。

image

開発者向けに、 SDK 内でも情報を公開しています。 (英語)
Design Considerations for Read Only Forms

まとめ

こちらの記事のコメントにあるとおり、読み取り最適化フォームはこれからもまだ
進化を続ける予定ですが、現在の機能でも、特定の組織においては十分に機能
すると考えています。是非お試しいただき、不明点やフィードバックがあれば、
コメントをいただければ幸いです。

- Dynamics CRM サポート 中村 憲一郎