[ |../../index.htm#lansa/delete_checks.htm]
現在地:
9.42 DELETE_CHECKS
注意: 9.1 組み込み関数の規則 利用オプション
妥当性検査の組み込み関数PUT_XXXXXXXで妥当性検査を置き換える前に、指定したフィールドから標準的なディクショナリ・レベルまたはファイル・レベルの妥当性検査を削除します。
フィールドからファイル・レベルの妥当性検査を削除する場合、関連するファイルは事前に組み込み関数START_FILE_EDITで編集セッションに投入しておく必要があります。
この組み込み関数の使用には、通常の権限とタスク追跡ルールが適用されます。
この BIF は、9.2 開発環境のみで使用される組み込み関数です。
引数
番号 |
タイプ |
必須/任意 |
記述 |
最小長 |
最大長 |
最小小数桁数 |
最大小数桁数 |
1 |
A |
必須 |
削除する妥当性検査のレベル |
1 |
1 |
|
|
2 |
A |
必須 |
妥当性検査が削除されるディクショナリまたはファイルのフィールドの名前 |
1 |
10 |
|
|
3 * |
N |
必須 |
削除を制御する順序番号。妥当性検査の順序番号がこの引数の番号以上であれば削除します。この引数の指定がない場合に値はゼロ(0)とみなされるため、すべての妥当性検査がこの制御値と一致することになります。 |
1 |
3 |
0 |
0 |
4 * |
A |
必須 |
削除を制御する妥当性検査の汎用記述。妥当性検査の記述がこの引数の値と汎用的に一致すれば削除します。この引数の指定がない場合にデフォルト値はブランクとされるため、すべての妥当性検査がこの制御値と一致することになります。 |
1 |
30 |
|
|
- 削除の制御条件である順序番号と記述の関係はAND条件です。例えば、500とIEWの値を渡した場合、順序番号が500番以上で、かつ記述がIEWで始まる妥当性検査だけが削除されます。
戻り値番号
タイプ
必須/任意
説明
最小長
最大長
最小小数桁数
最大小数桁数
1
A
必須
戻りコード
OK = 妥当性検査が定義された
ER = 致命的なエラーが検出された
NR = 削除対象レコードが見つからなかった
"ER" の場合は、戻りコード・エラー・メッセージが自動的に発行されます。ファイル編集セッションが関係していた場合、ファイル編集セッションはコミットされずに終了します。2
2
例
ユーザーがフィールド制御メニューから妥当性検査を削除できるLANSAオプションを使用せずに、フィールドの妥当性検査を削除する場合は次のように行います。
********* Define arguments and lists DEFINE FIELD(#LEVEL) TYPE(*CHAR) LENGTH(1) LABEL('Level') DEFINE FIELD(#FIELD) TYPE(*CHAR) LENGTH(10) LABEL('Field') DEFINE FIELD(#SEQNUM) TYPE(*DEC) LENGTH(3) DECIMALS(0) LABEL('Sequence #') DEFINE FIELD(#DESCR) TYPE(*CHAR) LENGTH(30) LABEL('Description') DEFINE FIELD(#RETCOD) TYPE(*CHAR) LENGTH(2) LABEL('Return code') GROUP_BY NAME(#VALCHK) FIELDS((#LEVEL) (#FIELD) (#SEQNUM) (#DESCR)) ********* Request Validation check details BEGIN_LOOP REQUEST FIELDS(#VALCHK) ********* Execute built-in-function - DELETE_CHECKS USE BUILTIN(DELETE_CHECKS) WITH_ARGS(#LEVEL #FIELD #SEQNUM #DESCR) TO_GET(#RETCOD) ********* Deletion of validation checks was successful IF COND('#RETCOD *EQ ''OK''') MESSAGE MSGTXT('Deletion of validation check(s) was successful') ********* Deletion of validation checks failed ELSE IF COND('#RETCOD *EQ ''ER''') MESSAGE MSGTXT('Deletion of validation check(s) failed') ********* No records found eligible for deletion ELSE IF COND('#RETCOD *EQ ''NR''') MESSAGE MSGTXT('No Records found eligible for deletion') ENDIF ENDIF ENDIF END_LOOP
[ |../../index.htm#lansa/delete_checks.htm]