ユニット core.validation

最終公開日 : Sep 16, 2026
バリデーション制約のコンテキストで依存関係を設定するためのメソッドを提供するスクリプトユニット。
メソッド
procedure addDependencyToInsertAndDelete(path: string) 現在の制約のバリデーション結果が、指定されたテーブルパスの挿入と削除に依存することを指定する依存関係パスを追加します。
procedure addDependencyToInsertAndDeleteAndModifyInOtherDataset(path: string, dataset: string, dataspace: string) 現在の制約のバリデーション結果が、別のデータセット内のパスで指定されたテーブルまたはテーブルフィールドの挿入、変更、および削除に依存することを指定する依存関係パスを追加します。
procedure addDependencyToInsertAndDeleteInOtherDataset(path: string, dataset: string, dataspace: string) 現在の制約のバリデーション結果が、特定のデータスペース内の指定されたデータセットの指定されたテーブルの挿入と削除に依存することを指定する依存関係パスを追加します。
procedure addDependencyToInsertDeleteAndModify(path: string) 現在の制約のバリデーション結果が、パスで指定されたテーブルまたはテーブルフィールドの挿入、変更、および削除に依存することを明示的に宣言する依存関係パスを追加します。
procedure addDependencyToModify(path: string) 現在の制約のバリデーション結果が、パスで指定されたフィールドの変更に依存することを明示的に宣言する依存関係パスを追加します。
procedure disableAjaxPrevalidation() ユーザーインターフェースで、関連フィールドがユーザー入力で更新されたときに、制約が動的に事前バリデーションされるのを防ぎます。
procedure setBlocksCommitToNever() バリデーションエラーを追加する場合でも、現在の制約が操作をブロックしてはならないことを指定します。
procedure setDependencyToLocalNode() 現在の制約のバリデーション結果が、ノードのローカル値のみに依存することを指定します。

addDependencyToInsertAndDelete

procedure addDependencyToInsertAndDelete(path: string)
現在の制約のバリデーション結果が、指定されたテーブルパスの挿入と削除に依存することを指定する依存関係パスを追加します。スクリプト公開時に指定されたパスでテーブルパスが見つからない場合、エラーが発生します。
このメソッドは、制約のプロシージャセットアップから呼び出す必要があります。そうでない場合、無視されます。
例:
uses core.validation as v;
uses core.message as msg;
export procedure checkTable()
begin
end

export procedure checkRecord(record : .Product)
begin
  if (record.Price < record.Threshold) then
  begin
    var message:='The price of the product '|_ebx.record.Price |' is under the threshold '|record.PriceThreshold;
    msg.addWarning(message);
  end

  export procedure setup()
  begin
    v.addDependencyToInsertDelete('/root/ProductCatalog');
  end
パラメーター:
path: テーブルパス。
使用可能な場所:

addDependencyToInsertAndDeleteAndModifyInOthe…

procedure addDependencyToInsertAndDeleteAndModifyInOtherDataset(path: string, dataset: string, dataspace: string)
現在の制約のバリデーション結果が、別のデータセット内のパスで指定されたテーブルまたはテーブルフィールドの挿入、変更、および削除に依存することを指定する依存関係パスを追加します。スクリプト公開時に指定されたデータセットでテーブルパスまたはテーブルフィールドパスが見つからない場合、エラーが発生します。
このメソッドは、制約のプロシージャセットアップから呼び出す必要があります。そうでない場合、無視されます。
例:
uses core.validation as v;
uses core.data as d;
export procedure check()
begin
  // do some validation checks
end

export procedure setup()
begin
  v.addDependencyToInsertAndDeleteAndModifyInOtherDataset("/root/table/field", 'otherDataset', 'otherDataspace');
end
パラメーター:
path: フィールドパス。
dataset: 他のデータセット。
dataspace: 他のデータスペース。
使用可能な場所:

addDependencyToInsertAndDeleteInOtherDataset

procedure addDependencyToInsertAndDeleteInOtherDataset(path: string, dataset: string, dataspace: string)
現在の制約のバリデーション結果が、特定のデータスペース内の指定されたデータセットの指定されたテーブルの挿入と削除に依存することを指定する依存関係パスを追加します。スクリプト公開時に、パスがテーブルパスでない場合、または指定されたデータセットとデータスペースで見つからない場合、エラーが発生します。
このメソッドは、制約のプロシージャセットアップから呼び出す必要があります。そうでない場合、無視されます。
例:
uses core.validation as v;
uses core.data as d;
export procedure checkTable()
begin
  // do some validation checks
end

export procedure checkRecord(record : .table)
begin
  // do some validation checks
end
export procedure setup()
begin
  v.addDependencyToInsertAndDeleteInOtherDataset("/root/table",'otherDataset','otherDataspace');
end
パラメーター:
path: テーブルパス。
dataset: 他のデータセット名。
dataspace: 他のデータスペース名。
使用可能な場所:

addDependencyToInsertDeleteAndModify

procedure addDependencyToInsertDeleteAndModify(path: string)
現在の制約のバリデーション結果が、パスで指定されたテーブルまたはテーブルフィールドの挿入、変更、および削除に依存することを明示的に宣言する依存関係パスを追加します。スクリプト公開時に指定されたパスでテーブルパスまたはテーブルフィールドパスが見つからない場合、エラーが発生します。
このメソッドは、制約のプロシージャセットアップから呼び出す必要があります。そうでない場合、無視されます。
例:
uses core.validation as v;
uses core.message as msg;
export procedure checkTable()
begin
end

export procedure checkRecord(record : .Employee)
begin
  if (record.number < 100) then
  begin
    msg.addError("The number must be at least 100");
  end
end

export procedure setup()
begin
  v.addDependencyToInsertDeleteAndModify('/root/Employee/number');
end
パラメーター:
path: テーブルパスまたはテーブルフィールドパス。
使用可能な場所:

addDependencyToModify

procedure addDependencyToModify(path: string)
現在の制約のバリデーション結果が、パスで指定されたフィールドの変更に依存することを明示的に宣言する依存関係パスを追加します。スクリプト公開時に、フィールドにローカル値がない場合、または指定されたパスで見つからない場合、エラーが発生します。
このメソッドは、制約のプロシージャセットアップから呼び出す必要があります。そうでない場合、無視されます。
例:
uses core.validation as v;
uses core.message as msg;
export procedure checkTable()
begin
end

export procedure checkRecord(record : .ProductCatalog)
begin
  if (not(str.endsWith(_ebx.root.code,'TIBCO_'))) then
  begin
    msg.addWarning("The code must end with 'TIBCO_'");
  end
end

export procedure setup()
begin
  v.addDependencyToModify('/root/code');
end
パラメーター:
path: フィールドパス。
使用可能な場所:

disableAjaxPrevalidation

procedure disableAjaxPrevalidation()
ユーザーインターフェースで、関連フィールドがユーザー入力で更新されたときに、制約が動的に事前バリデーションされるのを防ぎます。これは、パフォーマンスを向上させたり、フォーム更新中の不要なバリデーションエラーを回避したりするのに役立ちます。ただし、フォームが送信されたとき、またはビューでレコードがロードされたときには、制約は引き続きバリデーションされます。
例:
uses core.validation as v;
uses core.message as msg;
export procedure checkTable()
begin
  // do some validation checks
end
export procedure checkRecord(record : .table)
begin
  // do some validation checks
end

export procedure setup()
begin
  v.disableAjaxPrevalidation();
end
使用可能な場所:

setBlocksCommitToNever

procedure setBlocksCommitToNever()
バリデーションエラーを追加する場合でも、現在の制約が操作をブロックしてはならないことを指定します。
例:
uses core.validation as v;
uses core.message as msg;
export procedure checkTable()
begin
  // do some validation checks
end
export procedure checkRecord(record : .table)
begin
  // do some validation checks
end

export procedure setup()
begin
  v.setBlocksCommitToNever();
end
使用可能な場所:

setDependencyToLocalNode

procedure setDependencyToLocalNode()
現在の制約のバリデーション結果が、ノードのローカル値のみに依存することを指定します。
例:
uses core.validation as v;
uses core.message as msg;
export procedure check()
begin
  // do some validation checks
end

export procedure setup()
begin
  v.setDependencyToLocalNode();
end
使用可能な場所: