8.84 GET_FIELD_INFO

LANSA内部データベースからフィールドに関連する情報のリストを取得して、呼び出し元のRDMLファンクションに可変長の作業リストで戻します。

特記:この組み込み関数は非常に高度な機能を提供しており、基本的にRDMLファンクションで新しいRDMLファンクションを構築することができるようになります。

この関数は非常に特殊な場所で使用されるため、LANSA製品を熟知している必要があります。通常、この組み込み関数を商用のアプリケーション(例:オーダー・エントリー)で使用することはありません。また使用するべきではありません。

この BIF は、8.2 開発環境のみで使用される組み込み関数です。

 

引数

番号

タイプ

必須/任意

記述

最小長

最大長

最小小数桁数

最大小数桁数

1

A

必須

フィールド名

1

10

 

 

2

A

必須

情報の要求レベル

D = ディクショナリ・レベル

F = ファイル・レベル

1

1

 

 

3

A

必須

取得するフィールドに関する情報のタイプ。有効なタイプは以下のとおりです。

FIELDCHECK - 妥当性検査

MLATTR- 複数言語属性

REFFLD - 要求のフィールドを参照するフィールド

1

10

 

 

4

A

任意

物理ファイル名。ファイル・レベルの情報を要求する場合は必須です。

1

10

 

 

5

A

任意

物理ファイル・ライブラリ。ファイル・レベルの情報を要求する場合は必須です。

1

10

 

 

 

戻り値

番号

タイプ

必須/任意

記述

最小長

最大長

最小小数桁数

最大小数桁数

1

A

必須

戻りコード

OK = リスト(満載または一部)が戻された。このフィールドに関するこのタイプの情報はこれ以上存在しない

OV = リスト(満載)が戻された。ただしリストに収まらなかったこのタイプの情報がさらに存在する

NR = リストは空で戻された。リストの最終エントリーがNULLで戻される

ER = フィールドが見つからなかった。リストの最終エントリーがNULLで戻される

2

2

 

 

2

L

必須

フィールドに関する情報を含めるヘッダー作業リスト

呼び出し元RDMLファンクションの要件:
- 項目の長さの合計が正確に100バイトの作業リストを提供する
- 以下のエントリー数を超えない
Windowsの場合は32,767項目
IBM iの場合は9999項目

取得するフィールド関連情報のタイプについては、以下を参照してください。

FIELDCHECK タイプのヘッダー作業リストのフォーマット:

MLATTR タイプのヘッダー作業リストのフォーマット:

REFFLD タイプのヘッダー作業リストのフォーマット:

100

100

 

 

3

L

必須

フィールドに関する情報を含める詳細作業リスト

呼び出し元RDMLファンクションに必要な作業リストの要件:
- エントリーの長さの合計が正確に100バイト
- 以下のエントリー数を超えない
Windowsの場合は32,767項目
IBM iの場合は9999項目

詳細については、以下を参照してください。

FIELDCHECK タイプの詳細作業リストのフォーマット:

MLATTR タイプの詳細作業リストのフォーマット:

REFFLD タイプのヘッダー作業リストのフォーマット:

100

100

 

 

 

FIELDCHECK タイプのヘッダー作業リストのフォーマット:

バイト

説明

1-5

このエントリーに対する詳細リストの最初のエントリー番号。文字形式。00000の値はこのエントリーに対する詳細リストにはエントリーがないことを表します。

6-10

このエントリーに対する詳細リストの最後のエントリー番号。文字形式

11-12

検査タイプ。SL = 簡易ロジック、DC = 日付チェック、CF = ファイル検査、CL = 複雑ロジック、RV = 値の範囲、LV = 値のリスト

13-42

検査の記述

43-43

追加 (ADD) 時の検査を有効にする。Y = 追加 (ADD) 時に検査を実行する、U = 追加使用 (ADD USE) 時に検査を実行する、N = 追加 (ADD) 時に検査を実行しない

44-44

変更 (CHANGE) 時の検査を有効にする。Y = 変更 (CHG) 時に検査を実行する、U = 変更使用 (CHG USE) 時に検査を実行する、N = 変更 (CHG) 時に検査を実行しない

45-45

削除 (DELETE) 時の検査を有効にする。Y = 検査を有効にする、N = 検査を有効にしない

46-46

検査がTRUEのときの対応。N = 次の検査を実行する、E = 致命的なエラーを発行する、A = 値を受け入れて検査を終了する

47-47

検査が偽のときの対応。N = 次の検査を実行する、E = 致命的なエラーを発行する、A = 値を受け入れて検査を終了する

48-54

エラー・メッセージ番号

55-64

メッセージ・ファイル名

65-74

メッセージ・ファイル・ライブラリ

75-84

複雑ロジック検査を実行するときに呼び出されるプログラム名。複雑ロジック検査でない場合はブランク

85-94

ファイル検査で使用されるファイル名。ファイル検査でない場合はブランク

 

MLATTR タイプのヘッダー作業リストのフォーマット:

バイト

説明

1-5

このエントリーに対する詳細リストの最初のエントリー番号。文字形式。00000の値はこのエントリーに対する詳細リストにはエントリーがないことを表します。

6-10

このエントリーに対する詳細リストの最後のエントリー番号。文字形式

11-14

言語コード

15-29

ラベル

30-49

欄見出し1

50-69

欄見出し2

70-89

欄見出し3

 

REFFLD タイプのヘッダー作業リストのフォーマット:

バイト

説明

1-5

REFFLD 情報で詳細リストは使用されないため、値は00000

6-10

値は00000

11-20

フィールド名

21-60

説明

 

FIELDCHECK タイプの詳細作業リストのフォーマット:

バイト

説明

検査タイプが簡易ロジック:詳細リストの各エントリーは、次のようなフォーマットにする必要があります。

1-79

条件行

検査タイプが日付検査:詳細リストは1エントリー。次のようなフォーマットにする必要があります。

1-8

日付形式

9-15

指定の日付から過去に向かって許容される日数。文字形式

16-22

指定の日付から未来に向かって許容される日数。文字形式

検査タイプがファイル検査:詳細リストの各エントリーは、次のようなフォーマットにする必要があります。

1-20

ファイルのキーとして使用される値

検査タイプが複雑ロジック:詳細リストの各エントリーは、次のようなフォーマットにする必要があります。

1-20

追加のパラメータとして使用される値

検査タイプが値の範囲:詳細リストの各エントリーは、次のようなフォーマットにする必要があります。

1-20

範囲の下限として使用される値

21-40

範囲の上限として使用される値

検査タイプが値のリスト:詳細リストの各エントリーは、次のようなフォーマットにする必要があります。

1 - 20

リスト要素として使用される値

 

MLATTR タイプの詳細作業リストのフォーマット:

バイト

説明

詳細リストの各エントリーは、次のようなフォーマットにする必要があります。

1-40

フィールド記述

 

REFFLD タイプの詳細作業リストのフォーマット:

バイト

説明

詳細リストに戻される情報はありません。