メインコンテンツまでスキップ

ワークフローの承認時にオンプレミスのデータベースにデータを登録する

後処理の業務ロジックを利用して、承認した案件の内容をオンプレミスのデータベースに登録する方法を解説します。

概要

このチュートリアルでは、承認した案件の内容をオンプレミスのデータベースに登録するワークフローを作成します。
後処理の業務ロジック内で、SQL(オンプレミス連携)ユーザ定義のタスクを利用することでオンプレミスのデータベースとの連携を実現します。

事前準備

注記

「Accel-Mart Quick システム管理者」ロールを持つユーザで実施してください。

  1. 環境設定を行う」の手順に従ってオンプレミス連携エージェントの環境設定を行ってください。
    データソース設定についてはデータソース種別「データベース」の設定を行ってください。

  2. 連携先となるオンプレミスのデータベースに以下のテーブルを作成してください。

    テーブル名: on_premises_insert_db

    列名データ型主キーNOT NULL
    idVARCHAR(20)
    nameVARCHAR(500)
    noteVARCHAR(500)

    以下は上記テーブルのCREATE文です。

    CREATE TABLE on_premises_insert_db (
    id VARCHAR(20) NOT NULL,
    name VARCHAR(500) NOT NULL,
    note VARCHAR(500),
    PRIMARY KEY (id)
    );

ワークフローの作成

注記

「Accel-Mart Quick アプリケーション管理者」ロールを持つユーザで実施してください。

テンプレートを利用せずに簡単なフォームを作成する」を参考に、ワークフローを作成してください。 作成するルート定義とフォームは以下の通りです。

作成するルート定義

ノード名処理対象者
申請Accel-Mart Quick アプリケーション管理者
承認申請者

作成するフォーム

ラベル・フィールド識別名フィールド識別IDアイテム名
品名name文字列
備考note複数行文字列

業務ロジックの作成

オンプレミスのデータベースに案件内容のデータを登録する業務ロジックを作成します。
作成する業務ロジックでは、以下の処理を行います。

  • 「SQL定義(オンプレミス)」を利用して、ワークフローで入力された品名・備考の情報を、オンプレミスのデータベースに登録します。
作成する業務ロジック

作成する業務ロジック

後処理の業務ロジックを新規作成する

  1. 「IM-BIS-フロー編集」画面の「業務ロジック」をクリックします。

    「IM-BIS-フロー編集」

    ヒント

    「業務ロジック」が表示されない場合は、「定義の反映」をクリックしてください。
    また、フォームを編集した場合も必ず「定義の反映」を実行してください。

  2. 「業務ロジック」画面が表示されます。

  3. 「後処理」の「新規作成」ボタンをクリックし、「業務ロジック登録 - 後処理」画面を開きます。

    「基本設定 - 後処理」

  4. 業務ロジック名を入力し、対象ノードを選択します。 今回は、「承認」ノードでの承認時にのみ業務ロジックを実行するようにしたいので、「承認」にのみチェックを入れます。
    対象ノード選択後、「登録」ボタンをクリックします。

    「業務ロジック登録 - 後処理」

  5. 「ロジックフロー定義編集」画面が表示されます。

    「ロジックフロー定義編集」

    備考

    作成される業務ロジックについて、詳細は「後処理(ワークフロー)」を参照してください。

SQL定義(オンプレミス連携)タスクを作成する

  1. パレットの「ユーザ定義追加」カテゴリ内の「SQL定義(オンプレミス連携)新規作成」をクリックします。

    SQL定義(オンプレミス連携)新規作成

  2. ユーザタスクの「ユーザ定義ID」にtutorial_db_insertを入力します。

  3. 「ユーザ定義名 - 標準」に【チュートリアル】オンプレミスDB登録を入力します。

  4. ユーザカテゴリの「新規作成」をクリックし、以下を入力してユーザカテゴリを登録します。

    • ユーザカテゴリID: tutorial
    • ユーザカテゴリ名 - 標準: チュートリアル

    ユーザタスク設定

  5. 「SQL定義」の「データソース」の「検索」をクリックします。

    データソース

  6. 事前準備で設定した連携先データソースを指定し、「決定」ボタンをクリックします。

    データソース検索

  7. 「クエリ種別」で「INSERT」を選択します。

    クエリ種別

  8. 「テーブルからクエリを生成する」をクリックします。

    テーブルからクエリを生成する

  9. 連携先データベースのテーブル一覧が表示されますので、事前準備で作成したon_premises_insert_dbを選択し、「クエリ生成」ボタンをクリックします。

    テーブル一覧

  10. 自動で「クエリ」、および「入力値」が更新されたことを確認し、「登録」ボタンをクリックします。

    クエリ生成結果

タスクを配置する

業務ロジックで使用するタスクを配置します。以下の図のように、タスクをつなぎ合わせてください。
今回は、初期設定されている分岐のうち、「分岐(承認)」しか使用しないため、不要な分岐は削除しています。

タスクの配置

以下のユーザタスクを使用します。

備考

タスクを配置する詳しい操作方法は「エレメントを配置する 」を参照してください。

タスクのマッピング設定をする

「【チュートリアル】オンプレミスDB登録(tutorial_db_insert1)」タスクのマッピング設定を行います。

備考

マッピング設定の詳しい操作方法は「マッピング設定を行う」を参照してください。

  1. データを登録する際の主キーとなるidには「identifier」を利用して生成された一意なIDを利用します。
    マッピング設定ダイアログ右上のセレクトボックスから「identifier」を選択し、「関数を追加」をクリックします。

    identifier追加

  2. 以下の通りマッピングを行ってください。

    始点終点
    identifiertutorial_db_insert1 - id<string>
    入力 - imwUserParameter - name<string>tutorial_db_insert1 - name<string>
    入力 - imwUserParameter - note<string>tutorial_db_insert1 - note<string>

    【チュートリアル】オンプレミスDB登録(tutorial_db_insert1)のマッピング設定

  3. 以上で業務ロジックの設定は全て完了です。業務ロジックを保存してください。

作成したワークフローを申請・承認する

作成したワークフローを申請してみましょう。

  1. メニューの「申請」から、「申請一覧」画面を表示します。

  2. 作成したワークフローを選択します。

  3. 「品名」・「備考」の各項目を入力します。

    申請

  4. 「申請」ボタンをクリックして、申請します。

  5. メニューの「承認」から「案件一覧」画面を表示します。

  6. 申請した案件にマウスカーソルを重ねて、「処理」アイコンをクリックします。

  7. 「承認」ボタンをクリックして、承認します。

  8. 「承認」ノードの後処理が実行された結果、オンプレミスのデータベースにワークフローで入力された情報が登録されます。
    品名、備考に入力したデータがオンプレミスのデータベースのon_premises_insert_dbテーブルに登録されたことを確認してください。
    以下の画像は、オンプレミスのPostgreSQLに登録したデータを、pgAdmin 4を利用して確認した例です。

    結果確認