Flexビジネス規則の定義

Flexビジネス規則または SQLステートメントを定義して、組織に固有の検証規則を定義します。挿入後イベントまたは更新後イベントに対して、処理するステートメントを1つ以上設定できます。

Flex SQL処理は、データ検索(選択)とデータ操作(挿入、更新、削除)のステートメントをサポートします。条件チェックを実行するには、selectステートメントを使用します。

SQLステートメントでは、大文字と小文字を使用できます。ただし、行識別トークンは大文字か小文字のどちらかにする必要があります(たとえば:ROWIDまたは:rowid)。

すべてのFlex SQLステートメントには、定義済みの:ROWIDトークンを使用する必要があります。このトークンは、指定したテーブル内で処理されるレコードに対するデータベース行識別を指します。ステートメントは、挿入または更新操作に影響されるテーブル内のレコードごとに実行されます。

ステートメントの最大文字数は4000文字です。ステートメント終了文字(;)は付けないようにします。

データ操作ステートメントは使用できますが、トリガステップの無限カスケードを開始しないようにしてください。たとえば、[テーブル]で識別される基本テーブルを更新するFlex SQLステートメントを作成することは、通常はお勧めしません。

Infor EAMでは、Flex SQLプロシージャを定義する際、Infor EAMのコンサルタントと緊密に協力して行うことを推奨しています。

  1. [管理] > [設定] > [フレックスビジネス規則]フォーム。
  2. [新しいレコード]をクリックします。
  3. 次の情報を指定します。
    テーブル
    データベーステーブルを指定します。
    順序番号
    Flex SQLステートメントの順序番号を指定します。
    トリガ
    次のオプションのどちらかを選択します。
    • [挿入後]
    • [更新後]
    SQLステートメント
    選択したデータベーステーブルのSQLステートメントを指定します。
    失敗メッセージ
    失敗メッセージを指定します。
    コメント
    Flex SQLステートメントに関するコメントを指定します。
  4. 必要に応じて、データベーステーブルにFlex SQLステートメントが必須の場合は[存在必須]チェックボックスを選択します。[存在必須]を選択した場合、SQLステートメントは[順序番号]の順に実行されます。1つのステートメントが失敗すると、残りは実行しません。[存在必須]を選択しない場合、各ステートメントは独立して実行します。
  5. 必要に応じて、[不具合で中断]を選択し、失敗したときにステートメントを中断します。[不具合で中断]をチェックした場合、[失敗メッセージ]フィールドの値が返され、残りのSQLステートメントは処理されず、Flex SQLをトリガした保存は取り消されます。
  6. 必要に応じて、[リバースリターンコード]を選択すると、ステートメント完了時に戻り値を自動的に(NULLをNot NULLに)反転します。
    [リバースリターンコード]は[不具合で中断]とのみ組み合わせて使用されます。
  7. 必要に応じて[使用中]チェックボックスを選択し、このFlex SQLステートメントレコードを使用中に設定します。
  8. [レコードを保存]をクリックします。

    [Mobileのみ]のみのフラグが付いたレコードはこの画面で削除できません。モバイルデバイスでそれらを削除する必要があります。

    [Flex SQLをテスト]をクリックして、SQLステートメントが有効であるかどうかを確認します。