CookBook

スプレッドシートでForma入力チェックユーザプログラムを利用して入力チェックを実行する方法

投稿日:

このCookBookでは、スプレッドシートでForma入力チェックユーザプログラムを利用して入力チェックを実行する方法について紹介しています。

Formaの入力チェックプログラムでは以下の2つのチェックを実行することが可能です。

【1】 入力チェックの内容をアプリケーション固有のルールに基づいて動的に変更する。
【2】 アプリケーション固有の入力チェックをする。

ただし、スプレッドシートアイテムにはアイテム自体に入力チェックプロパティが存在しないため、【2】ですべてのチェックを実装します。
また、エラーメッセージ表示順の制御についても他アイテム同様に動作するため、そのサンプルも掲載します。

入力チェックプログラムの詳細は以下のドキュメントを参照してください。
IM-FormaDesigner for Accel Platform プログラミングガイド - 入力チェックプログラム

完成イメージ


・ スプレッドシート内の単項目・明細テーブルに対して入力チェックを実装します。

完成サンプル

以下の完成サンプルをダウンロードしてご活用ください。

レシピ

  1. Formaアプリケーションを作成し、通勤交通費申請書を表現したフォームにスプレッドシートアイテムを配置します。
  2. 入力チェックプログラムを作成します。

完成サンプルを見ながら以下の解説を確認してください。

1. Formaアプリケーションを作成し、通勤交通費申請書を表現したフォームにスプレッドシートアイテムを配置します。

以下の項目をシート上のフィールドとして定義してください。

  • Applicant
  • Affiliation department
  • Applicant's address
  • Closest station

以下の項目をシート上のテーブルとして定義してください。

  • Public transport fare

以下の項目をテーブルに表示する列として設定してください。

  • Transportation to use
  • Boarding section (From)
  • Boarding section (To)
  • 3 months (commuter pass)
  • 1 month (commuter pass)
  • one day (round trip)

2. 入力チェックプログラムを作成します。

  • getCustomProperties
    • 冒頭で説明したとおり、スプレッドシートアイテムにはアイテム自体に入力チェックプロパティが存在しないため、このメソッドで行うことはありません。
  • validate
    • 単項目は既存のアイテム同様、 sendParam.%フィールド識別ID% に存在します。
    • テーブル定義は明細テーブルやグリッドテーブルのように sendParam.%テーブル識別ID% にオブジェクトの配列として存在します。
    • 入力チェックエラーと判定した場合は ImFormaUtil.addValidationError を使用してエラー情報を登録してください。
  • getErrorDisplayOrder
    • validate メソッドで使用した入力チェックIDを配列として返却することで、エラー表示順序を制御することができます。

-CookBook
-,

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

ワークフローの案件削除時にBIS/Formaの関連データも削除する方法

このCookBookでは、ワークフローの案件削除時にBIS/Formaの関連データも併せて削除する方法について紹介しています。 BIS/Formaで作成したワークフローには、機能ごとに個別で管理するト …

no image

Formaのスクリプトから処理対象者を制御するには

このCookBookでは、スクリプトを利用してIM-Workflowの動的ノード(動的承認、縦配置、横配置)の処理対象者を制御する方法をご紹介します。 スクリプトから動的処理対象者設定機能を利用するこ …

no image

外部連携の後処理で任意のエラーメッセージを表示する

このCookbookでは、外部連携の後処理で任意のエラーメッセージを表示する方法を紹介します。 この方法を活用することにより、外部連携の後処理ででエラーが発生した場合、利用者に内容を通知することができ …

no image

ワークスペース機能におけるイベントカレンダーの利用例

このCookBookでは「intra-mart Accel Collaboration」ワークスペース機能におけるイベントカレンダーの利用例について紹介しています。 intra-mart Accel …

no image

スクリプト開発した画面にバリデーション(入力チェック)を実装する

このCookBookでは、作成した画面項目に対してバリデーション(入力チェック)を設定する方法をご紹介します。 今回はスクリプト開発で登録フォームを作成するで作成した画面項目に対して、クライアントサイ …

まだデータがありません。

RSSRSSRSSRSS