SAP BODS Salesforce.com and NetSuite ODBC adapters from Linux

February 06, 2015 Data & AI, Digital Experience, DataDirect

In my previous blog about connectivity from Business Objects to Salesforce, we talked about creating Salesforce Universes for direct and real-time data connectivity to use in business intelligence (BI). As new requirements come to your team, it makes sense to expand your data warehouse (like SAP HANA) to include cloud data.

Expand Your Data Warehouse to Include Cloud Data

Today, I’m working off that theme and discussing couple of SAP Business Objects Data Services (BODS) 4.2 Linux projects I’ve been engaged with, connecting cloud data sources such as Salesforce and NetSuite using Progress® DataDirect® ODBC adapters. These ODBC adapters enable native data services extraction, transformation and loading.

DataDirect ODBC adapters are built on the same technology as the relational adapters bundled with BODS out-of-box. With them you can instantly browse any cloud application schema similar to existing relational sources and targets from within the Designer interface. And YES, we can write to Salesforce.com as a target from BODS!

Using ODBC adapters with Salesforce and NetSuite

This tutorial will focus on Salesforce and NetSuite, but similar steps can be followed to connect BODS 4.2 to any commercial DataDirect ODBC drivers across big data, NoSQL and cloud. In addition, this mini tutorial applies to third-party ODBC drivers you might obtain from other application vendors such as NetSuite.com, ServiceNow, Plex Systems, VoltDB and Deltek, to name a few.

Connecting BODS 4.2 to Salesforce and NetSuite: Getting Started

To get started connecting BODS to cloud sources, follow these steps:

  1. Download a trial of the 32-bit and 64-bit Progress® DataDirect Connect® and Connect64 XE for ODBC Salesforce drivers. 32-bit ODBC drivers will run on the BODS client designer; 64-bit on the application server. This tutorial focuses on UNIX and Linux application servers.
  2. Verify that your DataDirect test connection works independently from BODS by following the corresponding quick start guide, available with the trial download.
  3. Update the BODS profile with the ODBC shared library path (for example, LIBPATH on AIX, SHLIB_PATH on HP-UX pa-risc, and LD_LIBRARY_PATH on Solaris, Linux and HP-UX (Itanium). For example, the default installation location for Salesforce will be:
    /opt/Progress/DataDirect/Connect64_for_ODBC_71/lib

    For other drivers such as NetSuite, an additional environment variable is required:

    $OASDK_ODBC_HOME

    Refer to the instructions from the application vendor for a complete reference.

  4. Modify the appropriate ini files. The architecture of BODS 4.2 requires two odbc.ini files (ds_odbc.ini and odbc.ini).
  5. Default locations for odbc.ini and ds_odbc.ini:
    /app/bods/sapbo/dataservices/DataDirect/odbc/odbc.ini
    /app/bods/sapbo/dataservices/bin/ds_odbc.ini

    ds_odbc.ini serves as a pass through to the DataDirect Unix/Linux ODBC Driver Manager where the desired ODBC data source name is in brackets. For example:

    [Salesforce]
     Driver=/home/boxiadm/app/bodsx/dataservices/DataDirect/odbc/lib/libodbc.so
     OdbcConformanceLevel=3
     LazyLoading=
     DriverUnicodeType=
     ODBC64SqlLenSize=64
     ODBC64SqlHandleSize=64
     #RebrandedLib=TRUE

    In odbc.ini, you should configure the actual library (ddsfrc27.so for DataDirect Connect64 for ODBC Salesforce v7.1.4 or ivoa22.so for NetSuite.com). Note that the ODBC DSN name in brackets must match between ds_odbc.ini and odbc.ini.

    [Salesforce]
     Driver=/opt/Progress/DataDirect/Connect64_for_ODBC_71/lib/ddsfrc27.so
     Description=DataDirect 7.1 Salesforce
     ConfigOptions=(MapSystemColumnNames=0;CustomSuffix=Include;AuditColumns=All)
     CreateDB=1
     EnableBulkLoad=False
     Extended Options=
     HostName=test.salesforce.com
     JVMClasspath=/opt/Progress/DataDirect/Connect64_for_ODBC_71/java/lib/sforce.jar
     SecurityToken=
     StmtCallLimit=0
     TransactionMode=1

    Make sure the client ODBC data source on Windows is configured with the same properties in the ODBC Administrator.

  6. Create and run a job using the Salesforce ODBC DSN created above

Why Use the ODBC Driver vs. the Salesforce Adapter from SAP?

SAP recommends the use of DataDirect drivers when you need:

  • To access Salesforce using a newer Salesforce API version to expose data from all the latest features (Spring '15 was a whopper!). We stay current with the latest Salesforce API versions in the ODBC driver.
  • Read/Write access to the Salesforce Platform. The ODBC driver works as a target and supports INSERT, UPDATE, and DELETE using either standard or bulk APIs, which are transparent to BODS.

My BODS Prediction for 2015

I guarantee you will see requirements from BODS to consume at least one of the following cloud data sources over the next 8 months:

  • Salesforce
  • NetSuite
  • Amazon Redshift
  • Oracle Marketing Cloud (Eloqua)
  • ServiceNow
  • Marketo
  • Oracle Service Cloud (RightNow)
  • Google Analytics
  • WorkDay

Tweet @SAsInSumit or ping me on LinkedIn to let me know if I'm right (be nice!).

How Can We Help?

We are always ready to help our customers with whatever they need. To contact us, post a comment below, tweet to @DataDirect_News or call 1-800-876-3101. We are partners with SAP on TSANET  and happy to collaborate on your behalf for any connectivity project.

Sumit Sarkar

Technology researcher, thought leader and speaker working to enable enterprises to rapidly adopt new technologies that are adaptive, connected and cognitive. Sumit has been working in the data access infrastructure field for over 10 years servicing web/mobile developers, data engineers and data scientists. His primary areas of focus include cross platform app development, serverless architectures, and hybrid enterprise data management that supports open standards such as ODBC, JDBC, ADO.NET, GraphQL, OData/REST. He has presented dozens of technology sessions at conferences such as Dreamforce, Oracle OpenWorld, Strata Hadoop World, API World, Microstrategy World, MongoDB World, etc.

Read next Top 5 Reasons to Use DataDirect with Salesforce