ノーコードでクラウド上のデータとの連携を実現。
詳細はこちら →Power BI XMLA Data Provider の30日間無償トライアルをダウンロード
30日間の無償トライアルへ製品の詳細
Power BI XMLA ADO.NET Provider 相談したいPower BI XMLA データに連携する.NET アプリケーションを素早く、簡単に開発できる便利なドライバー。
CData
こんにちは!ウェブ担当の加藤です。マーケ関連のデータ分析や整備もやっています。
Power BI XMLA 用の CData ADO.NET プロバイダーはサードパーティーコントロールで使うことのできる通常のADO.NET データベースアクセスコンポーネントを実装しています。データバインドするための通常のADO.NET プロセスに従うことで、UI コントロールから実データへの双方向アクセスを可能にします。 この記事では、CData を使ってDevExpress Windows Forms とウェブコントロールにデータバインドする方法を説明します。ここでは、最新のデータを表示するチャートにデータバインドします。
下のコードでは、Power BI XMLA でDevExpress のチャートに追加する方法を説明します。PowerBIXMLADataAdapter はチャートコントロールのSeries プロパティにバインドします。コントロールのDiagram プロパティはx 軸とy 軸をカラム名として定義します。
using (PowerBIXMLAConnection connection = new PowerBIXMLAConnection(
"URL=powerbi://api.powerbi.com/v1.0/myorg/CData;")) {
PowerBIXMLADataAdapter dataAdapter = new PowerBIXMLADataAdapter(
"SELECT Country, Education FROM Customer WHERE Country = 'Australia'", connection);
DataTable table = new DataTable();
dataAdapter.Fill(table);
DevExpress.XtraCharts.Series series = new DevExpress.XtraCharts.Series();
chartControl1.Series.Add(series);
DataTable table = new DataTable();
series.ValueDataMembers.AddRange(new string[] { "Education" });
series.ArgumentScaleType = DevExpress.XtraCharts.ScaleType.Qualitative;
series.ArgumentDataMember = "Country";
series.ValueScaleType = DevExpress.XtraCharts.ScaleType.Numerical;
chartControl1.Legend.Visibility = DevExpress.Utils.DefaultBoolean.False;
((DevExpress.XtraCharts.SideBySideBarSeriesView)series.View).ColorEach = true;
}
下のコードではPower BI XMLA でDevExpress Web を操作するための設定方法を説明します。PowerBIXMLADataAdapter はチャートのSeries プロパティにバインドします。Diagram プロパティはx 軸とy 軸をカラム名として定義します。
using DevExpress.XtraCharts;
using (PowerBIXMLAConnection connection = new PowerBIXMLAConnection(
"URL=powerbi://api.powerbi.com/v1.0/myorg/CData;"))
{
PowerBIXMLADataAdapter PowerBIXMLADataAdapter1 = new PowerBIXMLADataAdapter("SELECT Country, Education FROM Customer WHERE Country = 'Australia'", connection);
DataTable table = new DataTable();
PowerBIXMLADataAdapter1.Fill(table);
DevExpress.XtraCharts.Series series = new Series("Series1", ViewType.Bar);
WebChartControl1.Series.Add(series);
DataTable table = new DataTable();
series.ValueDataMembers.AddRange(new string[] { "Education" });
series.ArgumentScaleType = ScaleType.Qualitative;
series.ArgumentDataMember = "Country";
series.ValueScaleType = ScaleType.Numerical;
((DevExpress.XtraCharts.SideBySideBarSeriesView)series.View).ColorEach = true;
}