Discover how a bimodal integration strategy can address the major data management challenges facing your organization today.
Get the Report →Connect to Smartsheet Data from PowerBuilder
This article demonstrates how to access Smartsheet data from Appeon PowerBuilder using the CData ADO.NET Provider for Smartsheet.
This article demonstrates using the CData ADO.NET Provider for Smartsheet 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 Smartsheet to perform reads and writes.
About Smartsheet Data Integration
CData provides the easiest way to access and integrate live data from Smartsheet. Customers use CData connectivity to:
- Read and write attachments, columns, comments and discussions.
- View the data in individuals cells, report on cell history, and more.
- Perform Smartsheet-specific actions like deleting or downloading attachments, creating, copying, deleting, or moving sheets, and moving or copying rows to another sheet.
Users frequently integrate Smartsheet with analytics tools such as Tableau, Crystal Reports, and Excel. Others leverage our tools to replicate Smartsheet data to databases or data warehouses.
Getting Started
- In a new WPF Window Application solution, add all the Visual Controls needed for the connection properties. Below is a typical connection string:
OAuthClientId=MyOauthClientId;OAuthClientSecret=MyOAuthClientSecret;CallbackURL=http://localhost:33333;InitiateOAuth=GETANDREFRESH
Smartsheet uses the OAuth authentication standard. To authenticate using OAuth, you will need to register an app to obtain the OAuthClientId, OAuthClientSecret, and CallbackURL connection properties.
However, for testing purposes you can instead use the Personal Access Token you get when you create an application; set this to the OAuthAccessToken connection property.
- Add the DataGrid control from the .NET controls.
-
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=TaskName}" Header="TaskName" Width="SizeToHeader" /> ... </DataGrid.Columns> </DataGrid>
- Add a reference to the CData ADO.NET Provider for Smartsheet 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.Smartsheet.SmartsheetConnection conn
conn = create System.Data.CData.Smartsheet.SmartsheetConnection(connectionString)
System.Data.CData.Smartsheet.SmartsheetCommand comm
comm = create System.Data.CData.Smartsheet.SmartsheetCommand(command, conn)
System.Data.DataTable table
table = create System.Data.DataTable
System.Data.CData.Smartsheet.SmartsheetDataAdapter dataAdapter
dataAdapter = create System.Data.CData.Smartsheet.SmartsheetDataAdapter(comm)
dataAdapter.Fill(table)
datagrid1.ItemsSource=table.DefaultView
The code above can be used to bind data from the specified query to the DataGrid.