Visual Studio でチャートコントロールと SAP Business Warehouse をデータバインド
データバインドによって、UI コントロールからデータに接続できます。 CData ADO.NET Provider for SAPBusinessWarehouse を使って、Visual Studio 上でWindows Forms およびWeb Forms とSAP Business Warehouse をデータバインドできます。この記事で、SAP Business Warehouse を、ウィザードから変更をリアルタイムで反映するチャートにデータバインドする方法を説明します。 Code Walk-through セクションではチャートはほんの10行のコードで作成します。
チャートへのデータバインド
データバインドは3つのステップから構成されます。コントロールのインスタンス作成、データソースの設定、最後にデータバインドです。
接続を設定してデータベースオブジェクトを選択
下の手続きにより、データソース構成ウィザードを使ってチャートコントロールとSAP Business Warehouse との接続を作成します。ウィザード上でデータバインドをするSAP Business Warehouse エンティティを使います。
- Windows Forms プロジェクトでは、チャートコントロールをツールボックスからフォーム上にドラグ&ドロップします。チャートプロパティのデータセクションで DataSource を選択し、メニューからプロジェクトデータソースの追加を選択します。
- 出てくるデータソース構成ウィザードでデータベース -> データセットを選択します。
- データ接続ステップで、「新しい接続」をクリックします。
データ接続の選択ダイアログで、「変更」をクリックして、CData SAP Business Warehouse のデータソースを選択して、接続プロパティを入力します。下は代表的な接続文字列ですです。:
Below is a typical connection string:
URL=https://mysapserver:8000;AuthScheme=Basic;User=username;Password=password;
SAP Business Warehouse に接続するには、URL プロパティを有効なSAP Business Warehouse サーバーのベースURL に設定します。ドライバーはXMLAアクセスを使用してHTTP 上でホストされたSAP Business Warehouse インスタンスに接続する必要があります。
ドライバーはAuthScheme プロパティを通じて以下の認証スキームをサポートしています:
- None:サーバーで使用可能な場合、匿名認証。
- Basic:User とPassword を設定し、AuthScheme をBasic に設定します。
- Kerberos:必要なKerberos プロパティについては、ヘルプドキュメントの「Kerberos の使用」セクションを参照してください。
デフォルトでは、ドライバーはシステムの信頼された証明書ストアに対してサーバーの証明書を確認することでSSL/TLS のネゴシエーションを試みます。別の証明書を指定するには、使用可能な形式についてSSLServerCert プロパティを参照してください。
- 使用するデータソースオブジェクトを選択します。例は Sales テーブルです。
DataBind
データソースの追加とデータベースオブジェクトを選択したら、チャートにオブジェクトをバインドします。この例では、X軸に CustomerCount をY軸に City を設定します。
- チャートプロパティで、Series プロパティをクリックし、Series コレクション エディター を開きます。
- Series プロパティでX軸、Y軸に設定するカラムを選択します:XValueMember および YValueMember プロパティにメニューからカラムを選びます。
チャートはこれでSAP Business Warehouse にデータバインドされました。チャートを実行して最新のデータを表示させましょう。
コード Walk-through
SAP Business Warehouse へのデータバインドはほんの数行のコードのみが必要で、3つの簡単なステップで完了できます。
- SAP Business Warehouse に接続します。
- SAPBusinessWarehouseDataAdapter を作成して、クエリを作成し、結果を入れるデータセットを作成します。
- 結果セットとチャートをデータバインドします。
下に完全なコードを示します:
SAPBusinessWarehouseConnection conn = new SAPBusinessWarehouseConnection("URL=https://mysapserver:8000;AuthScheme=Basic;User=username;Password=password;");
SAPBusinessWarehouseCommand comm = new SAPBusinessWarehouseCommand("SELECT CustomerCount, City FROM Sales WHERE Country = 'US'", conn);
SAPBusinessWarehouseDataAdapter da = new SAPBusinessWarehouseDataAdapter(comm);
DataSet dataset = new DataSet();
da.Fill(dataset);
chart1.DataSource = dataset;
chart1.Series[0].XValueMember = "CustomerCount";
chart1.Series[0].YValueMembers = "City";
// Insert code for additional chart formatting here.
chart1.DataBind();