PowerBuilder からSAP BusinessObjects BI のデータに接続してみた
CData ADO.NET providers は、PowerBuilder を含むMicrosoft .NET をサポートするあらゆるプラットフォームまたは開発テクノロジーから使用できる、使いやすい標準準拠のデータプロバイダーです。 この記事では、CData ADO.NET Provider for SAPBusinessObjectsBI をPowerBuilder で使う方法について説明します。
CData ADO.NET Provider for SAPBusinessObjectsBI を使ってデータを取得し読み書きを実行する基本的なPowerBuilder アプリケーションを作成する方法について説明します。
- 新規WPF Window Application ソリューションで、接続プロパティに必要なすべてのビジュアルコントロールを追加します。一般的な接続文字列は次のとおりです:
User=username;Password=password;Url=http://myinstance:6405/biprws
SAP Business Objects BI インスタンスに接続するには、次の接続プロパティを設定する必要があります。
- URL:SAP BusinessObjects BI REST API URL。これを見つけるには:
- セントラル管理コンソールにログインします。
- コンボボックスからアプリケーションを選択します。
- RESTful Web Service を選択します。セントラル管理コンソールは、アクセスURL を表示します。デフォルトでは、http://{Server-Name}:6405/biprws です。
- AuthScheme:SAP BusinessObjects BI に接続する際に使用する認証の種類に設定。
SAP BusinessObjects BI への認証方法は、Basic、Enterprise、LDAP、Windows AD、CyberArk をサポートしています。
Basic
デフォルトのBasic 認証メカニズムを使用してSAP BusinessObjects BI に接続するには、AuthScheme をBasic に設定し、次のプロパティを設定します。
- User: インスタンスのユーザー名。
- Password: インスタンスのパスワード。
その他の認証方法については、ヘルプドキュメント の「はじめに」セクションを参照してください。
- URL:SAP BusinessObjects BI REST API URL。これを見つけるには:
- .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=StoreName}" Header="StoreName" Width="SizeToHeader" /> ... </DataGrid.Columns> </DataGrid> - CData ADO.NET Provider for SAPBusinessObjectsBI アセンブリへの参照を追加します。
DataGrid 接続
ビジュアルエレメントが設定されたら、Connection、Command、およびDataAdapter のような標準のADO.NET オブジェクトを使ってSQL クエリの結果をDataTable に表示することができます:
System.Data.CData.SAPBusinessObjectsBI.SAPBusinessObjectsBIConnection conn conn = create System.Data.CData.SAPBusinessObjectsBI.SAPBusinessObjectsBIConnection(connectionString) System.Data.CData.SAPBusinessObjectsBI.SAPBusinessObjectsBICommand comm comm = create System.Data.CData.SAPBusinessObjectsBI.SAPBusinessObjectsBICommand(command, conn) System.Data.DataTable table table = create System.Data.DataTable System.Data.CData.SAPBusinessObjectsBI.SAPBusinessObjectsBIDataAdapter dataAdapter dataAdapter = create System.Data.CData.SAPBusinessObjectsBI.SAPBusinessObjectsBIDataAdapter(comm) dataAdapter.Fill(table) datagrid1.ItemsSource=table.DefaultView
上のコードは、指定したクエリからDataGrid にデータをバインドできます。