トリガ
トリガは、フル機能版フォームの構成要素のひとつで、サーバにおいて、起点となるフォームの計算処理が実行される度に、そのフォームにあらかじめ関連付けられた計算処理を自動的に実行するために用います。計算処理は別のフォームあるいはスクリプトとして定義出来ます。
トリガは、[マネージャ] のフォーム設計画面(フル機能版フォーム)から設定することができます。
トリガの仕様
-
ひとつのフォームに対してひとつ以上のトリガを設定できます。
-
ひとつのトリガに対してひとつのアクション(スクリプトまたはフォーム)を設定します。
-
それぞれのアクションを実行する際のパラメータ、業務責任単位、元帳版等には、起点フォームの情報が使われます。なお、パラメータについては、起点フォームのパラメータ値及び起点フォームのデフォルト設定値にて指定されたメンバが引き渡されます(前者が優先されます)。起点フォームの情報が、アクションの要件を満たさない場合(例: パラメータの不足)、実行時にエラーが発生します。
-
トリガは、フォームの計算処理が実行される箇所で、起点フォームの計算処理の後、定義された実行順にしたがって順番に実行されます。計算処理が実行される箇所とトリガの実行有無については後述します。
-
トリガから実行されるフォームおよびスクリプトから実行されるフォームにトリガが設定されていても、それらは実行されません。
-
トリガは、起点フォーム自身が計算処理を含むかどうかに関わらず実行されます。
-
アクションの本体(フォームやスクリプト)自体を削除する際、トリガでの使用有無のチェックはありません。削除後に当該トリガを実行すると、エラーが発生します。
-
エラーが発生した場合、それ以降のトリガは実行されません。
-
起点フォーム、各トリガ経由のすべての計算処理は、それぞれ固有のデータベーストランザクション内で実行されます。エラーが発生した場合でも、それまでの正常終了分はデータベースに反映されています。
-
それぞれの計算処理が実行タイムアウト時間(デフォルト:
600
秒)を超えると、エラーが発生します。
フォームの計算処理実行箇所とトリガの実行有無
フォームの計算処理が実行されるすべての箇所と、それぞれの箇所におけるトリガの実行有無を以下に示します。
機能 | 実行箇所 | トリガ実行?(YES/no) | クライアントプログラム |
---|---|---|---|
フォーム |
フォームからのデータ保存 |
YES |
[ブラウザ] 、[コントリビュータ](照会/帳票画面) |
業務プロセス管理 |
提出パッケージの受付 |
YES |
[コントリビュータ] |
業務プロセス管理 |
提出パッケージの再取込 |
YES |
[コントリビュータ] |
業務プロセス管理 |
共有作業版へのデータ公開 |
YES |
[マネージャ] |
業務プロセス管理 |
共有作業版からのデータ取込 |
YES |
[マネージャ] |
業務プロセス管理 |
業務定義最新化 |
YES |
[マネージャ] |
業務プロセス管理 |
パッケージ入力データ保存 |
YES |
[コントリビュータ](ワークスペース画面)、[Excel-Link](パッケージ入力用のみ) |
[Web-API], リクエスタ |
「フォームを用いた計算処理の実行( |
YES |
[Web-API], リクエスタ |
フォーム |
計算処理 |
no[1] |
[ブラウザ]、[コントリビュータ] |
トリガ |
フォームアクションの実行 |
no[2] |
各種 |
スクリプト |
|
no[3] |
[マネージャ]、トリガ |