高度な Visualforce ダッシュボードコンポーネント
Visualforce ページは、ダッシュボードコンポーネントとして使用できます。ダッシュボードでは、ソースレポートから得たデータを、グラフ、ゲージ、テーブル、総計値、または Visualforce ページなど、視覚化されたコンポーネントとして表示します。コンポーネントは、組織の主要な総計値のスナップショットおよびパフォーマンスの指標を提供します。各ダッシュボードには、最大 20 個のコンポーネントを含めることができます。
標準コン��ローラを使用する Visualforce ページをダッシュボードで使用することはできません。Visualforce ページをダッシュボードで使用するには、そのページがコントローラを含んでいないか、1 つのカスタムコントローラを使用しているか、または StandardSetController クラスにバインドされたページを参照している必要があります。Visualforce ページは、これらの要件を満たさない場合、ダッシュボードコンポーネントの [Visualforce ページ] ドロップダウンリストにオプションとして表示されません。
次の例は、ダッシュボード内で使用でき、カスタムリストコントローラを使用する Visualforce ページを示します。「Barbara Levy」という名前の取引先責任者に関連付けられたすべてのオープンケースを表示します。
1<apex:page controller="retrieveCase" tabStyle="Case">
2 <apex:pageBlock>
3 {!contactName}'s Cases
4 <apex:pageBlockTable value="{!cases}" var="c">
5 <apex:column value="{!c.status}"/>
6 <apex:column value="{!c.subject}"/>
7 </apex:pageBlockTable>
8 </apex:pageBlock>
9</apex:page>このコードは、ページに関連付けられたカスタムリストコントローラを表示します。
1public class retrieveCase {
2
3 public String getContactName() {
4 return 'Babara Levy';
5 }
6
7 public List<Case> getCases() {
8 return [SELECT status, subject FROM Case
9 WHERE Contact.name = 'Babara Levy' AND status != 'Closed' limit 5];
10 }
11}
ダッシュボードで実行する Visualforce ページのサンプル