function readOnly(count){ }
Don't have an account?
Search for an answer or ask a question of the zone or Customer Support.
You need to sign in to do that
Sign in to start searching questions
Signup for a Developer Edition
Sign in to start a discussion
表題のとおり、Visualforceにレポート実行結果画面のグラフ部分だけを貼りつけたい
と思っているのですが、実現可能でしょうか?
どなたかご存じの方がいらっしゃいましたら教えて下さい。
レポート実行結果のグラフではないのですが、<apex:chart>というタグでグラフの
表示が可能みたいです。
この方法はいかがでしょうか。
■Apexクラス・サンプル
public class ChartController { // Return a list of data points for a chart public List<Data> getData() { return ChartController.getChartData(); } // Make the chart data available via JavaScript remoting @RemoteAction public static List<Data> getRemoteData() { return ChartController.getChartData(); } // The actual chart data; needs to be static to be // called by a @RemoteAction method public static List<Data> getChartData() { List<Data> data = new List<Data>(); data.add(new Data('Jan', 30, 90, 55)); data.add(new Data('Feb', 44, 15, 65)); data.add(new Data('Mar', 25, 32, 75)); data.add(new Data('Apr', 74, 28, 85)); data.add(new Data('May', 65, 51, 95)); data.add(new Data('Jun', 33, 45, 99)); data.add(new Data('Jul', 92, 82, 30)); data.add(new Data('Aug', 87, 73, 45)); data.add(new Data('Sep', 34, 65, 55)); data.add(new Data('Oct', 78, 66, 56)); data.add(new Data('Nov', 80, 67, 53)); data.add(new Data('Dec', 17, 70, 70)); return data; } // Wrapper class public class Data { public String name { get; set; } public Integer data1 { get; set; } public Integer data2 { get; set; } public Integer data3 { get; set; } public Data(String name, Integer data1, Integer data2, Integer data3) { this.name = name; this.data1 = data1; this.data2 = data2; this.data3 = data3; } } }
■Apexページ・サンプル①:円グラフ
<apex:page controller="ChartController"> <apex:chart data="{!data}" height="300" width="400" background="#F5F5F5"> <apex:legend position="left"/> <apex:pieSeries labelField="name" dataField="data1" colorSet="#37241E,#94B3C8,#4D4E24,#BD8025,#816A4A,#F0E68C"/> </apex:chart> </apex:page>
■Apexページ・サンプル②:棒グラフ
<apex:page controller="ChartController"> <apex:chart data="{!data}" height="400" width="500"> <apex:legend position="left"/> <apex:axis type="Numeric" position="left" title="Closed Won" grid="true" fields="data1,data2,data3" dashSize="2"> <apex:chartLabel /> </apex:axis> <apex:axis type="Category" position="bottom" fields="name" title="Stacked Bars"> <apex:chartLabel rotate="315"/> </apex:axis> <apex:barSeries orientation="vertical" axis="left" stacked="true" xField="name" yField="data1,data2,data3" title="MacDonald,Promas,Worle"/> </apex:chart> </apex:page>
Taikiさん、ご回答ありがとうございます。
この方法は当然のことながら、
グラフに自分でデータを与えて作成する以外にはないですか?
例えば、レポートのIdを渡せばいいとか…。
要はレポートで集計する処理を自作Apexで実装し、その値をVisualforce側で
展開し、値をaddしつつグラフ化するという方法という認識で合っていますでしょうか?
レポートの情報をそのまま使用する方法は見つかりませんでした...。
集計処理をApexで実装して、グラフ化するという方法になるかなと思っています。
レポート実行結果のグラフではないのですが、<apex:chart>というタグでグラフの
表示が可能みたいです。
この方法はいかがでしょうか。
■Apexクラス・サンプル
■Apexページ・サンプル①:円グラフ
■Apexページ・サンプル②:棒グラフ
All Answers
レポート実行結果のグラフではないのですが、<apex:chart>というタグでグラフの
表示が可能みたいです。
この方法はいかがでしょうか。
■Apexクラス・サンプル
■Apexページ・サンプル①:円グラフ
■Apexページ・サンプル②:棒グラフ
Taikiさん、ご回答ありがとうございます。
この方法は当然のことながら、
グラフに自分でデータを与えて作成する以外にはないですか?
例えば、レポートのIdを渡せばいいとか…。
要はレポートで集計する処理を自作Apexで実装し、その値をVisualforce側で
展開し、値をaddしつつグラフ化するという方法という認識で合っていますでしょうか?
レポートの情報をそのまま使用する方法は見つかりませんでした...。
集計処理をApexで実装して、グラフ化するという方法になるかなと思っています。
http://releasenotes.docs.salesforce.com/en-us/spring14/release-notes/rn_analytics_vf_charts.htm