Ruby でWorkday データ連携アプリを構築





Workday ODBC Driver

Workday ODBC ドライバーは、ODBC 接続をサポートする任意のアプリケーションからリアルタイムなWorkday データに直接接続できるパワフルなツールです。標準のODBC ドライバーインタフェースを使用して、データベースのようにWorkday データにアクセスし、Cash Management、Compensation、Financial Management、Payroll などの読み、書き、更新を実行できます。

Ruby でODBC 経由でWorkday に接続して、モダンなクラウド連携アプリを開発。

CData ODBC Driver for Workday を使うと、簡単にRuby アプリケーションにリアルタイムWorkday データを連携・統合できます。 Tこの記事では、Workday] データにリアルタイムに連携するRuby アプリケーションを構築して、クエリを実行し、結果を表示してみます。

Workday データのODBC 接続を設定

通常はCData ODBC Driver のインストール後にODBC DSN 接続ウィザードが立ち上がり、設定を行うことができます。 もしODBC DSN 接続が未済の場合には、Microsoft ODBC データソースアドミニストレータでODBC DSN を作成および設定することができます。

To connect, there are three pieces of information required: Authentication, API URL, and WSDL URL.


To authenticate, specify your User and Password. Note that you must append your Tenant to your User separated by an '@' character. For instance, if you normally log in with 'geraldg' and your Tenant is 'mycompany_mc1', then your User should be specified as 'geraldg@mycompany_mc1'.


The API URL may be specified either directly via APIURL, or it may be constructed from the Tenant, Service, and Host. The APIURL is constructed in the following format: <Host>/ccx/service/<Tenant>/<Service>.


The WSDLURL may be specified in its entirety, or may be constructed from the Service and WSDLVersion connection properties. The WSDLURL is constructed in the following format:<Service>/<WSDLVersion>/<Service>.wsdl

Ruby および必要なGem のインストール

If you do not have Ruby installed, refer to the Ruby インストールページ. Ruby をインストールしたら、次にruby-dbi、dbd-odbc、ruby-odbc gems をインストールします:

gem install dbi gem install dbd-odbc gem install ruby-odbc

Workday データに連携するRuby アプリケーションの作成

Ruby ファイル (例: WorkdaySelect.rb) を作成し、テキストエディタで開きます。ファイルに次のコードをコピーします:

#connect to the DSN require 'DBI' cnxn = DBI.connect('DBI:ODBC:CData Workday Source','','') #execute a SELECT query and store the result set resultSet = cnxn.execute("SELECT Worker_Reference_WID, Legal_Name_Last_Name FROM Workers WHERE Legal_Name_Last_Name = 'Morgan'") #display the names of the columns resultSet.column_names.each do |name| print name, "\t" end puts #display the results while row = resultSet.fetch do (0..resultSet.column_names.size - 1).each do |n| print row[n], "\t" end puts end resultSet.finish #close the connection cnxn.disconnect if cnxn

これで、Ruby で Workday データが接続できるようになります。簡単にコマンドラインからファイルを叩いて接続を確認してみましょう。:

ruby WorkdaySelect.rb Workday へのSQL-92 企画のSQL を使って、Ruby に簡単にWorkday を連携できます。是非、トライアルで試してみてください。