この記事ではCData ADO.NET Provider for SAP HANA XS Advanced を使ってPowerBuilder からSAP HANA XS Advanced にアクセスする方法を説明します。
CData ADO.NET providers は、PowerBuilder を含むMicrosoft .NET をサポートするあらゆるプラットフォームまたは開発テクノロジーから使用できる、使いやすい標準準拠のデータプロバイダーです。 この記事では、CData ADO.NET Provider for SAP HANA XS Advanced をPowerBuilder で使う方法について説明します。
CData ADO.NET Provider for SAP HANA XS Advanced を使ってデータを取得し読み書きを実行する基本的なPowerBuilder アプリケーションを作成する方法について説明します。
- 新規WPF Window Application ソリューションで、接続プロパティに必要なすべてのビジュアルコントロールを追加します。一般的な接続文字列は次のとおりです:
OAuthClientID=my-ouath-client-id;OAuthClientSecret=my-oauth-client-secret;URL=https://hxehost:51027/euro.xsodata;CallbackURL=http://localhost:33333;InitiateOAuth=GETANDREFRESH
SAP HANA XSA uses the OAuth authentication standard. Before connecting, it is necessary to establish an SAP HANA XSA OData Service. See the OAuth section in the Help documentation for a guide.
- .NET コントロールからDataGrid コントロールを追加します。
-
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=}" Header="" Width="SizeToHeader" /> ... </DataGrid.Columns> </DataGrid>
- CData ADO.NET Provider for SAP HANA XS Advanced アセンブリへの参照を追加します。
DataGrid 接続
ビジュアルエレメントが設定されたら、Connection、Command、およびDataAdapter のような標準のADO.NET オブジェクトを使ってSQL クエリの結果をDataTable に表示することができます:
System.Data.CData.SAPHanaXSA.SAPHanaXSAConnection conn
conn = create System.Data.CData.SAPHanaXSA.SAPHanaXSAConnection(connectionString)
System.Data.CData.SAPHanaXSA.SAPHanaXSACommand comm
comm = create System.Data.CData.SAPHanaXSA.SAPHanaXSACommand(command, conn)
System.Data.DataTable table
table = create System.Data.DataTable
System.Data.CData.SAPHanaXSA.SAPHanaXSADataAdapter dataAdapter
dataAdapter = create System.Data.CData.SAPHanaXSA.SAPHanaXSADataAdapter(comm)
dataAdapter.Fill(table)
datagrid1.ItemsSource=table.DefaultView
上のコードは、指定したクエリからDataGrid にデータをバインドできます。