コラボフロー API Profile がパッケージ版に対応しました

コラボフロー API Profile がパッケージ版に対応しました

CData のコラボフロー API Profile がクラウド版に加えてパッケージ版にも対応しました。

1.コラボフローとは

コラボフローは、申請・承認業務を電子化できる、Web ワークフローシステムです。

Web ブラウザーを使って稟議書や経費申請などの社内申請業務を効率化する事ができます。

Excel からフォームデザインをインポートすることができ、現在使っているExcel で作られた書式を、そのままの形で入力フォームとして利用することができるため、現在のフローをそのままシステム化することができるのが特徴です。

2.クラウド版とパッケージ版の違い

クラウド版とパッケージ版で最も異なるのは接続先で、クラウド版は、コラボフローの提供しているサーバーに接続を行います。

パッケージ版は、サーバーを用意し、そこにパッケージをインストールするため、用意したサーバーに接続を行います。

また、コラボフローでは新しい機能の追加などが行われることがありますが、初めにクラウド版がリリースされ、その数か月後にパッケージ版がリリースされるといったように、リリース時期が異なることがあります。

3.ODBC Driver for API とCollaboflow API Profile を使ってパッケージ版のコラボフローに接続します

1) API ドライバーとコラボフローのAPI Profile をダウンロードします

今回は例としてODBC ドライバーを使用しますが、この他にもExcel Add-In やPower BI Connector などもあります。

API ドライバー・プロファイル | SaaS のデータにノーコードで接続できるAPI ドライバー・プロファイルをダウンロード | CData Software Japan

2) APIドライバーをインストールします

ODBC Driver for API Installer

3) API Keyを取得します

Collaboflow 環境設定メニュー

Collaboflow REST API 設定

4) ODBC データデータソースの設定を行います

ODBC Driver for API DSN構成画面

Profile=<プロファイルのファイルパス>
URL=<コラボフローのサーバー>
APIKey=<取得したAPI Key>
AppCd=1
Instance=collaboflow

Collaboflow AppCd 確認

データモデルタブからクエリを実行してデータを参照することができます。

ODBC Driver for API データモデル画面

4.文書を取得する

下記のような休暇届のデータをコラボフローから取得してみます。

Coolaboflow 休暇届

まず、MyRequests ビューで文書のDocumentId を取得します。

MyRequests ビュー

次に、DocumentContent でDocumentId を指定すると、Contents カラムでフォームに入力された内容をJSON 形式で取得することができます。

DocumentContents ビュー

5.JSON_EXTRACT 関数を使って、Contents カラムから値を取得する

Contents カラムの中身はJSON 形式になっています。

JSON_EXTRACT 関数を使うと、このJSON 形式のデータからフォームで入力された値を取得することができます。

Contents カラムの値はこのようになっています。

{
"fid3": { "display": true, "writable": false, "label": "1", "value": 1.000000000000, "type": "number" },
"fid4": { "display": true, "writable": false, "label": "有給休暇", "value": "有給休暇", "type": "radio" },
"fid5": { "display": true, "writable": false, "label": "私用のため", "value": "私用のため", "type": "textarea" },
"fid6": { "display": true, "writable": false, "label": "備考です", "value": "備考です", "type": "textarea" },
"fid7": { "display": true, "writable": false, "label": "2024年10月31日(木)", "value": "2024-10-30T15:00:00Z", "type": "date" },
"fid8": { "display": true, "writable": false, "label": "2024年10月31日(木)", "value": "2024-10-30T15:00:00Z", "type": "date" },
"fid9": { "display": true, "writable": false, "label": "システム管理者", "value": "システム管理者", "type": "text" },
"fid10": { "display": true, "writable": false, "label": "システム部", "value": "システム部", "type": "text" }
}

fid3 ~fid10 という部分はフォームの項目Id です。

項目Id は、デザイン画面で確認することができます。

Coolaboflow 休暇届 フィールドId

CData Driver では、JSON_EXTRACT 関数を使って、次のように指定することで、Contents カラムのJSON 形式の値から、各項目の値を取得できます。

DocumentContents ビュー JSON_EXTRACT 関数

6.カスタムスキーマを使ってフォームごとのビューを作成する

上記のようにSQL を指定して項目を取得する方法の他に、カスタムスキーマを使うことで、そのフォーム専用のビューを作ることもできます。

API Driver のAPI Profile を新規作成する (cdata.com)

~API Profile の定義を使ってカスタムスキーマを作成する方法~

1) apip ファイルの拡張子をzip に変更して展開します

2) 元にしたいビューのrsdファイル(DocumentContents.rsd) ファイルを任意のフォルダー(C:\CDataJAPIProfile\CollaboFlow\)にコピーします

3) ファイル名を任意名前(DocumentContents休暇届.rsd) に変更します

4) rsd ファイルをテキストエディタなどで開きます

5)次のようにカラムの情報を追加します

カスタムスキーマファイル

rsdファイルの書式

xs:type="データ型" readonly="true(読み取り専用)" other:xPath="<取得する値のパス>" />
xPath は、レスポンスデータのパスを指定します。
レスポンスデータは、Verbosity=3 を指定してログファイルを取得することで確認することができます。

6) 接続設定を下記のように変更します

ODBC Driver for API DSN構成画面 カスタムスキーマ

Profile=フォルダー名
Other=Location=フォルダーパス

7) データモデルで追加したカスタムスキーマにアクセスできることを確認します

ODBC Driver for API データモデル画面 カスタムスキーマ

カスタムスキーマを使用することで、コラボフローの文書に入力されている値を簡単に取得することができます。

ODBC Driver for API データモデル画面 カスタムスキーマ2

また、カスタムスキーマでは、日程はDate 型、期間日数はinteger 型のようにカラムに合わせて適切なデータ型を定義するなど細かなカスタマイズを行うこともできます。

7.まとめ

コラボフローの文書を連携したいとお考えの方は、ぜひ一度、CData 製品の無償トライアルをお試しください。

トライアル・お問い合わせ

関連コンテンツ