PowerBuilder からRetently のデータに接続してみた

加藤龍彦
加藤龍彦
デジタルマーケティング
この記事では、CData API Driver for ADO.NET を使ってAppeon PowerBuilder から Retently のデータ にアクセスする方法を紹介します。



この記事では、CData API Driver for ADO.NET をPowerBuilder で使う方法を紹介します。これらの標準準拠コントロールは扱いやすく、Appeon PowerBuilder をはじめ、Microsoft .NET に対応したさまざまなプラットフォームや開発テクノロジーで利用できます。

この記事では、CData API Driver for ADO.NET を使って PowerBuilder からデータを取得する基本的なアプリケーションを作成する方法を紹介します。

  1. 新規WPF Window Application ソリューションで、接続プロパティに必要なすべてのビジュアルコントロールを追加します。一般的な接続文字列は次のとおりです:

    Profile=C:\profiles\Retently.apip;Authscheme=OAuth;OAuthClientId=your_client_id;OAuthClientSecret=your_client_secret;CallbackUrl=your_callback_url;

    まず、Profile 接続プロパティをディスク上の Retently プロファイルの場所に設定します(例:C:\profiles\Retently.apip)。次に、ProfileSettings 接続プロパティを Retently の接続文字列に設定します(以下を参照)。

    Retently API プロファイル設定

    Retently アカウントにログインし、OAuth 設定ページに移動してアプリケーションを登録すると、Client ID と Client Secret が取得できます。

  2. .NET コントロールからDataGrid コントロールを追加します。
  3. DataGrid コントロールのカラムを設定します。Account テーブルからいくつかのカラムを以下に示します:
    
    
    <DataGrid AutoGenerateColumns="False" Margin="13,249,12,14" Name="datagrid1" TabIndex="70" ItemsSource="{Binding}">
    <DataGrid.Columns>
        <DataGridTextColumn x:Name="idColumn" Binding="{Binding Path=Id}" Header="Id" Width="SizeToHeader" />
        <DataGridTextColumn x:Name="nameColumn" Binding="{Binding Path=Id}" Header="Id" Width="SizeToHeader" />
    		...
    	</DataGrid.Columns>
    </DataGrid>
    
  4. CData API Driver for ADO.NET アセンブリへの参照を追加します。

DataGrid 接続

ビジュアルエレメントが設定されたら、Connection、Command、およびDataAdapter のような標準のADO.NET オブジェクトを使ってSQL クエリの結果をDataTable に表示することができます:


System.Data.CData.API.APIConnection conn
conn = create System.Data.CData.API.APIConnection(connectionString)

System.Data.CData.API.APICommand comm
comm = create System.Data.CData.API.APICommand(command, conn)

System.Data.DataTable table
table = create System.Data.DataTable

System.Data.CData.API.APIDataAdapter dataAdapter
dataAdapter = create System.Data.CData.API.APIDataAdapter(comm)
dataAdapter.Fill(table)
datagrid1.ItemsSource=table.DefaultView

上のコードは、指定したクエリからDataGrid にデータをバインドできます。

はじめる準備はできましたか?

API Driver で Retently のライブデータに接続

Retently に接続