Connect to and Query Sage US Data in QlikView over ODBC

Create data visualizations with Sage US data in QlikView.

The CData ODBC drivers expand your ability to work with data from more than 180 data sources. QlikView is a business discovery platform that provides self-service BI for all business users in an organization. This article outlines simple steps to connect to Sage US data using the CData ODBC driver and create data visualizations in QlikView.

The CData ODBC drivers offer unmatched performance for interacting with live Sage US data in QlikView due to optimized data processing built into the driver. When you issue complex SQL queries from QlikView to Sage US, the driver pushes supported SQL operations, like filters and aggregations, directly to Sage US and utilizes the embedded SQL engine to process unsupported operations (often SQL functions and JOIN operations) client-side. With built-in dynamic metadata querying, you can visualize and analyze Sage US data using native QlikView data types.

Connect to Sage US as an ODBC Data Source

If you have not already, first specify connection properties in an ODBC DSN (data source name). This is the last step of the driver installation. You can use the Microsoft ODBC Data Source Administrator to create and configure ODBC DSNs.

The Application Id and Company Name connection string options are required to connect to Sage as a data source. You can obtain an Application Id by contacting Sage directly to request access to the Sage 50 SDK.

Sage must be installed on the machine. The Sage.Peachtree.API.dll and Sage.Peachtree.API.Resolver.dll assemblies are required. These assemblies are installed with Sage in C:\Program Files\Sage\Peachtree\API\. Additionally, the Sage SDK requires .NET Framework 4.0 and is only compatible with 32-bit applications. To use the Sage SDK in Visual Studio, set the Platform Target property to "x86" in Project -> Properties -> Build.

You must authorize the application to access company data: To authorize your application to access Sage, restart the Sage application, open the company you want to access, and connect with your application. You will then be prompted to set access permissions for the application in the resulting dialog.

While the compiled executable will require authorization only once, during development you may need to follow this process to reauthorize a new build. To avoid restarting the Sage application when developing with Visual Studio, click Build -> Configuration Manager and uncheck "Build" for your project.

When you configure the DSN, you may also want to set the Max Rows connection property. This will limit the number of rows returned, which is especially helpful for improving performance when designing reports and visualizations.

Populate a Chart with Sage US Data

The steps below supply the results of an SQL query to a visualization in QlikView. In this article, you will create a bar chart with the query below:

SELECT Name, LastInvoiceAmount FROM Customer
  1. Click File -> Edit Script (or click the Edit Script button in the Toolbar).
  2. On the Data tab, select ODBC in the Database menu and click Connect.
  3. Select the DSN (CData Sage50US Sys) in the resulting dialog. A command like the following is generated: ODBC CONNECT TO [CData Sage50US Sys];
  4. Enter the SQL query directly into the script with the SQL command (or click Select to build the query in the SELECT statement wizard). SQL SELECT Name, LastInvoiceAmount FROM Customer;

    Where possible, the SQL operations in the query, like filters and aggregations, will be pushed down to Sage US, while any unsupported operations (which can include SQL functions and JOIN operations) will be managed client-side by the CData SQL engine embedded in the driver.

  5. Close the script editor and reload the document to execute the script.
  6. Click Tools -> Quick Chart Wizard. In the wizard, select the chart type. This example uses a bar chart. When building the chart, you have access to the fields from Sage US, typed appropriately for QlikView, thanks to built-in dynamic metadata querying.
  7. When defining Dimensions, select Name in the First Dimension menu.
  8. When defining Expressions, click the summary function you want and select LastInvoiceAmount in the menu.
  9. Finish the wizard to generate the chart. The CData ODBC Driver for Sage US connects to live Sage US data, so the chart can be refreshed to see real-time changes. Live connections are possible and effective, thanks to the high-performance data processing native to CData ODBC Drivers.