Shoeisha Technology Media

CodeZine(コードジン)

特集ページ一覧

Salesforceに表計算グリッドコントロール「SPREAD」のパワーを融合する

「CData ADO.NET Provider for Salesforce 4J」の紹介

  • ブックマーク
  • LINEで送る
  • このエントリーをはてなブックマークに追加
2015/01/08 14:00
目次

Salesforceをデータソースに指定

 サーバーエクスプローラーでSalesforceのデータが確認できるようになるだけでも、いろいろな可能性があります。例えば、サーバーエクスプローラーのデータ接続は、アプリのデータソースのデータ接続として利用できます。

 それでは、Salesforceのキャンペーンページで表示される内容をCData経由でデータソースにして、表計算グリッドコントロールの「SPREAD for WPF」で表示するサンプルを作成してみましょう。

図7 キャンペーンページ
図7 キャンペーンページ

 キャンペーンページの内容はCampaignテーブルに格納されています。サーバーエクスプローラーで確認してみましょう。

図8 Campaignテーブル
図8 Campaignテーブル

新規プロジェクトの作成

 [ファイル]-[新しいプロジェクト]メニューを選択して[Windowsデスクトップ]-[WPFアプリケーション]を選択してWPFアプリの新規プロジェクトを作成します。

データソースの追加

 [表示]-[その他のウィンドウ]-[データソース]メニューを選択して[データソース]ウィンドウを表示します。

図9 [データソース]ウィンドウ
図9 [データソース]ウィンドウ

 [新しいデータソースの追加]リンクをクリックしてウィザードを起動します。

 (1)データソース構成ウィザードで、[データベース]を選択して[次へ]ボタンをクリックし、次に[データソース]を選択して[次へボタン]をクリックします。

図10 データソース構成ウィザード
図10 データソース構成ウィザード

 (2)[データの選択]画面で「CData [Cdata ADO.NET Provider for Salesforce 4J]」を選択します。このときパスワードを接続文字列に含まないようにします。

図11 データ接続の選択
図11 データ接続の選択

 (3)接続文字列をアプリケーション構成ファイルに保存します。

図12 接続文字列の保存
図12 接続文字列の保存

 (4)取得するテーブルおよび項目を指定します。

図13 取得内容の設定
図13 取得内容の設定

データソースとコントロールの関連付け

 [データソース]ウィンドウにウィザードで設定したテーブルが表示されていることを確認します。テーブル名の横のドロップダウンボタンをクリックして、コントロールの関連付けを「GCSpreadGrid」にします。

図14 コントロールの関連付け
図14 コントロールの関連付け

 もし、「GCSpreadGrid」が表示されていないときには、以下の手順を行えば表示されます。

  1. ツールボックスからGCSpreadGridをWPFウィンドウエディタにドラッグ&ドロップして、プロジェクトにSPREAD for WPFの参照設定などを追加
  2. 追加されているSPREAD for WPFを削除
  3. コントロールの関連付けで[カスタマイズ]を選択して[GCSpreadGrid]項目を選択

データソースから画面部品の配置

 コントロールの関連付けが終わったら、[データソース]ウィンドウの[Campaign]テーブルをWPFウィンドウにドラッグ&ドロップします。これでデータソースの内容をSPREADで表示する画面ができあがりました。

図15 SPREAD for WPFの配置
図15 SPREAD for WPFの配置

パスワードの設定

 データソースを作成するときにパスワードは除外しているので、MainWindows.xaml.vbにパスワードを設定するコードを追加します。

リスト1 SPREAD for WPFの配置
Class MainWindow 

    Private Sub Window_Loaded(sender As Object, …

        Dim DataSet1 As CZ1411DataSource.DataSet1 = …
        Dim DataSet1CampaignTableAdapter As  …

        DataSet1CampaignTableAdapter.Connection.ConnectionString &= ";password=hogehoge"

        DataSet1CampaignTableAdapter.Fill(DataSet1.Campaign)
        Dim CampaignViewSource As System.Windows.Data.CollectionViewSource = …
        CampaignViewSource.View.MoveCurrentToFirst()
    End Sub
End Class

 具体的には「DataSet1CampaignTableAdapter.Connection.ConnectionString」にパスワード指定の文字列を追加するコードになります。

実行

 Visual Studioでの定義と操作、そして1行だけコードを記述しただけですが、この状態で実行すればSalesforceからデータを取得してSPREADに表示ができます。

図16 データソースの表示例
図16 データソースの表示例

  • ブックマーク
  • LINEで送る
  • このエントリーをはてなブックマークに追加

著者プロフィール

  • 初音玲(ハツネアキラ)

     国内SIerのSEでパッケージ製品開発を主に行っており、最近は、空間認識や音声認識などを応用した製品を手掛けています。  個人的には、仕事の内容をさらに拡張したHoloLensなどのMRを中心に活動しています。  Microsoft MVP for Windows Development...

バックナンバー

連載:現役エンジニア直伝! 「現場」で使えるコンポーネント活用術(SPREAD)

もっと読む

All contents copyright © 2005-2020 Shoeisha Co., Ltd. All rights reserved. ver.1.5