Ready to get started?

Download a free trial of the Dynamics NAV Driver to get started:

 Download Now

Learn more:

Dynamics NAV Icon Dynamics NAV JDBC Driver

Rapidly create and deploy powerful Java applications that integrate with Dynamics NAV account data including Items, Sales Orders, Purchase Orders, and more!

Connect to Dynamics NAV Data in JRuby



Create a simple JRuby app with access to live Dynamics NAV data.

JRuby is a high-performance, stable, fully threaded Java implementation of the Ruby programming language. The CData JDBC Driver for Dynamics NAV makes it easy to integrate connectivity to live Dynamics NAV data in JRuby. This article shows how to create a simple JRuby app that connects to Dynamics NAV data, executes a query, and displays the results.

Configure a JDBC Connection to Dynamics NAV Data

Before creating the app, note the installation location for the JAR file for the JDBC Driver (typically C:\Program Files\CData\CData JDBC Driver for Dynamics NAV\lib).

JRuby natively supports JDBC, so you can easily connect to Dynamics NAV and execute SQL queries. Initialize the JDBC connection with the getConnection function of the java.sql.DriverManager class.

Before you can connect, OData Services will need to be enabled on the server. Once OData Services are enabled, you will be able to query any Services that are published on the server.

The User and Password properties, under the Authentication section, must be set to valid Dynamics NAV user credentials. In addition, you will need to specify a URL to a valid Dynamics NAV server organization root and a ServerInstance. If there is not a Service Default Company for the server, you will need to set the Company as well.

Built-in Connection String Designer

For assistance in constructing the JDBC URL, use the connection string designer built into the Dynamics NAV JDBC Driver. Either double-click the JAR file or execute the jar file from the command-line.

java -jar cdata.jdbc.dynamicsnav.jar

Fill in the connection properties and copy the connection string to the clipboard.

Below is a typical JDBC connection string for Dynamics NAV:

jdbc:dynamicsnav:http://myserver:7048;User=myserver\Administrator;Password=admin;ServerInstance=DYNAMICSNAV71;

Create a JRuby App with Connectivity to Dynamics NAV Data

Create a new Ruby file (for example: DynamicsNAVSelect.rb) and open it in a text editor. Copy the following code into your file:

require 'java' require 'rubygems' require 'C:/Program Files/CData/CData JDBC Driver for Dynamics NAV 2018/lib/cdata.jdbc.dynamicsnav.jar' url = "jdbc:dynamicsnav:http://myserver:7048;User=myserver\Administrator;Password=admin;ServerInstance=DYNAMICSNAV71;" conn = java.sql.DriverManager.getConnection(url) stmt = conn.createStatement rs = stmt.executeQuery("SELECT Name, Prices_Including_VAT FROM Customer") while (rs.next) do puts rs.getString(1) + ' ' + rs.getString(2) end

With the file completed, you are ready to display your Dynamics NAV data with JRuby. To do so, simply run your file from the command line:

jruby -S DynamicsNAVSelect.rb

Writing SQL-92 queries to Dynamics NAV allows you to quickly and easily incorporate Dynamics NAV data into your own JRuby applications. Download a free trial today!