Connect to SAP Business Warehouse Data from PowerBuilder via ADO.NET

Jerod Johnson
Jerod Johnson
Director, Technology Evangelism
This article demonstrates how to access SAP Business Warehouse data from Appeon PowerBuilder using the CData ADO.NET Provider for SAP Business Warehouse.

This article demonstrates using the CData ADO.NET Provider for SAP Business Warehouse in PowerBuilder, showcasing the ease of use and compatibility of these standards-based controls across various platforms and development technologies that support Microsoft .NET, including Appeon PowerBuilder.

This article shows how to create a basic PowerBuilder application that uses the CData ADO.NET Provider for SAP Business Warehouse to retrieve data.

  1. In a new WPF Window Application solution, add all the Visual Controls needed for the connection properties. Below is a typical connection string:

    URL=https://mysapserver:8000;AuthScheme=Basic;User=username;Password=password;

    To connect to SAP Business Warehouse, set the URL property to a valid SAP Business Warehouse server base URL. The driver must connect to SAP Business Warehouse instances hosted over HTTP with XMLA access.

    The driver supports the following authentication schemes via the AuthScheme property:

    • None: Anonymous authentication, if available on the server.
    • Basic: Set User and Password and set AuthScheme to Basic.
    • Kerberos: See the Using Kerberos section of the help documentation for the required Kerberos properties.

    By default, the driver attempts to negotiate SSL/TLS by checking the server's certificate against the system's trusted certificate store. To specify another certificate, see the SSLServerCert property for the available formats.

  2. Add the DataGrid control from the .NET controls.
  3. Configure the columns of the DataGrid control. Below are several columns from the Account table:
    
    <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=CustomerCount}" Header="CustomerCount" Width="SizeToHeader" />
    		...
    	</DataGrid.Columns>
    </DataGrid>
    
  4. Add a reference to the CData ADO.NET Provider for SAP Business Warehouse assembly.

Connect the DataGrid

Once the visual elements have been configured, you can use standard ADO.NET objects like Connection, Command, and DataAdapter to populate a DataTable with the results of an SQL query:

System.Data.CData.SAPBusinessWarehouse.SAPBusinessWarehouseConnection conn 
conn = create System.Data.CData.SAPBusinessWarehouse.SAPBusinessWarehouseConnection(connectionString)

System.Data.CData.SAPBusinessWarehouse.SAPBusinessWarehouseCommand comm 
comm = create System.Data.CData.SAPBusinessWarehouse.SAPBusinessWarehouseCommand(command, conn)

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

System.Data.CData.SAPBusinessWarehouse.SAPBusinessWarehouseDataAdapter dataAdapter
dataAdapter = create System.Data.CData.SAPBusinessWarehouse.SAPBusinessWarehouseDataAdapter(comm)
dataAdapter.Fill(table)	
datagrid1.ItemsSource=table.DefaultView

The code above can be used to bind data from the specified query to the DataGrid.

Ready to get started?

Download a free trial of the SAP Business Warehouse Data Provider to get started:

 Download Now

Learn more:

SAP Business Warehouse Icon SAP Business Warehouse ADO.NET Provider

Rapidly create and deploy powerful .NET applications that integrate with SAP Business Warehouse.