Sage 300 Python Connector

SQL-based Access to Sage 300 from Python

Easily connect Python-based Data Access, Visualization, ORM, ETL, AI/ML, and Custom Apps with Sage 300!


  download   buy now


Other Sage Accounting Technologies


Sage 300 Logo

Python Connector Libraries for Sage 300 Data Connectivity. Integrate Sage 300 with popular Python tools like Pandas, SQLAlchemy, Dash & petl. Easy-to-use Python Database API (DB-API) Modules connect Sage 300 data with Python and any Python-based applications.

Features

  • Powerful metadata querying enables SQL-like access to non-database sources
  • Push down query optimization pushes SQL operations down to the server whenever possible, increasing performance
  • Client-side query execution engine, supports SQL-92 operations that are not available server-side
  • Connect to live Sage 300 data, for real-time data access
  • Full support for data aggregation and complex JOINs in SQL queries
  • Secure connectivity through modern cryptography, including TLS 1.2, SHA-256, ECC, etc.
  • Seamless integration with leading BI, reporting, and ETL tools and with custom applications

Specifications

  • Python Database API (DB-API) Modules for Sage 300 .
  • Write SQL, get Sage 300 data. Access Sage 300 through standard Python Database Connectivity.
  • Integration with popular Python tools like Pandas, SQLAlchemy, Dash & petl.
  • Simple command-line based data exploration of Sage 300 Invoices, Receipts, Refunds, and more!
  • Full Unicode support for data, parameter, & metadata.


CData Python Connectors in Action!

Watch the video overview for a first hand-look at the powerful data integration capabilities included in the CData Python Connectors.

WATCH THE PYTHON CONNECTOR VIDEO OVERVIEW

Python Connectivity with Sage 300

Full-featured and consistent SQL access to any supported data source through Python


  • Universal Python Sage 300 Connectivity

    Easily connect to Sage 300 data from common Python-based frameworks, including:


    • Data Analysis/Visualization: Jupyter Notebook, pandas, Matplotlib
    • ORM: SQLAlchemy, SQLObject, Storm
    • Web Applications: Dash, Django
    • ETL: Apache Airflow, Luigi, Bonobo, Bubbles, petl
  • Popular Tooling Integration

    The Sage 300 Connector integrates seamlessly with popular data science and developer tooling like Anaconda, Visual Studio Python IDE, PyCharm, and more. Real Python,

  • Replication and Caching

    Our replication and caching commands make it easy to copy data to local and cloud data stores such as Oracle, SQL Server, Google Cloud SQL, etc. The replication commands include many features that allow for intelligent incremental updates to cached data.

  • String, Date, Numeric SQL Functions

    The Sage 300 Connector includes a library of 50 plus functions that can manipulate column values into the desired result. Popular examples include Regex, JSON, and XML processing functions.

  • Collaborative Query Processing

    Our Python Connector enhances the capabilities of Sage 300 with additional client-side processing, when needed, to enable analytic summaries of data such as SUM, AVG, MAX, MIN, etc.

  • Easily Customizable and Configurable

    The data model exposed by our Sage 300 Connector can easily be customized to add or remove tables/columns, change data types, etc. without requiring a new build. These customizations are supported at runtime using human-readable schema files that are easy to edit.

  • Enterprise-class Secure Connectivity

    Includes standard Enterprise-class security features such as TLS/ SSL data encryption for all client-server communications.

Connecting to Sage 300 with Python

CData Python Connectors leverage the Database API (DB-API) interface to make it easy to work with Sage 300 from a wide range of standard Python data tools. Connecting to and working with your data in Python follows a basic pattern, regardless of data source:

  • Configure the connection properties to Sage 300
  • Query Sage 300 to retrieve or update data
  • Connect your Sage 300 data with Python data tools.


Connecting to Sage 300 in Python

To connect to your data from Python, import the extension and create a connection:

import cdata.sage300 as mod
conn = mod.connect("User=user@domain.com; Password=password;")

#Create cursor and iterate over results
cur = conn.cursor()
cur.execute("SELECT * FROM Invoices")
 
rs = cur.fetchall()
 
for row in rs:
print(row)

Once you import the extension, you can work with all of your enterprise data using the python modules and toolkits that you already know and love, quickly building apps that help you drive business.

Visualize Sage 300 Data with pandas

The data-centric interfaces of the Sage 300 Python Connector make it easy to integrate with popular tools like pandas and SQLAlchemy to visualize data in real-time.

engine = create_engine("sage300///Password=password&User=user")

df = pandas.read_sql("SELECT * FROM Invoices", engine)

df.plot()
plt.show()