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

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

関連記事

IM-BloomMaker 時刻入力に設定した日付・時刻型変数の日付やタイムゾーンはどうなっているの?

はじめに 2022 Winter でリリースした「時刻入力」エレメントは、時刻の入力フォームを表示するエレメントです。 「時刻入力」エレメントの value プロパティには日付・時刻型変数を指定します …

IM-Wiki

Wiki機能の活用例

このCookbookでは、intra-mart Accel Platform 2018 Springから利用可能なWiki機能(IM-Wiki)の活用例について紹介します。 今回の記事では実際にWik …

差戻し先ノードの処理対象者を再展開するフローを作成する方法

このCookBookでは、差戻し先ノードの処理対象者を再展開するフローを作成する方法について紹介しています。 IM-Workflowの仕様として、差戻し先ノードではそのノードを以前に処理した人のみが再 …

no image

スレッドダンプの取り方

このCookBookでは、スレッドダンプの取り方について紹介しています。 以下に手順を説明しますが、スレッドダンプは必ず問題の事象が発生している時に取得してください。 例えば、動作が重い・非同期処理が …

no image

availability_check を利用した死活監視方法のご紹介

この CookBook では、availability_check を利用した死活監視方法について紹介しています。 availability_check を利用するには「Resinデータソース設定」モ …