9.200 START_FILE_EDIT
注意: 9.1 組み込み関数の規則 &<a href="ladtgub1_0016.htm"&>利用オプション&</a&>
指定されたLANSAファイル定義の定義上で「編集セッション」を開始します。
編集セッションでは、新しいファイルを定義したり、既存のファイルを変更したりすることができます。
編集セッション中、ファイル定義はロックされ、他のユーザーが使用することはできません。
1度に編集できるファイル定義は、1つだけです(つまり、同じジョブ内からの2つのファイル定義を同時に編集することはできません)。
新しいファイル定義または変更したファイル定義の詳細は、END_FILE_EDIT組み込み関数を使用して「コミット」しないと失われます。
この BIF は、9.2 開発環境のみで使用される組み込み関数です。
引数
番号 |
タイプ |
必須/任意 |
記述 |
最小長 |
最大長 |
最小小数桁数 |
最大小数桁数 |
1 |
A |
必須 |
編集するファイルの名前 |
1 |
10 |
|
|
2 |
A |
必須 |
ファイルが存在するライブラリ |
1 |
10 |
|
|
3 ** |
A |
必須 |
編集される詳細のソース。ブランク、LAN、OTHを指定することはできません。 |
3 |
3 |
|
|
4 |
A |
任意 |
ファイル記述をブランクにすることはできません。新規ファイルの作成時に必要です。 |
1 |
40 |
|
|
5 |
A |
任意 |
権限。新規ファイルの作成時に必要です。ALL、NORMAL、NONEを指定することができます。 |
1 |
6 |
|
|
6 |
A |
任意 |
ファイル・コンポーネント編集オプション |
3 |
3 |
|
|
-
- 編集される詳細の「ソース」は重要です。編集セッションが開始されると、START_FILE_EDIT組み込み関数に渡されたソースと同じ「ソース」を持つファイル定義の詳細すべてに削除保留フラグが立てられます。FILE_FIELD、LOGICAL_VIEWなどの組み込み関数のいずれかによって詳細が「再指定」されない場合、詳細は、END_FILE_EDIT組み込み関数によってファイル定義から削除されます。例外は、前述の6番目の引数で1つ以上のバイト位置を使用することによって、特定の詳細を編集から除外している場合です。これによって、別のソース (「&<a href="../../../lansa010/content/lansa/ugub_30007.htm"&>ファイル制御メニュー&</a&>」でLANSA のファイル定義の表示/変更機能を使用した直接入力など) によって指定されたファイルの詳細をファイル編集セッション中に元の状態のまま維持することができます。
次に、この「ソース」コードの例を挙げます。ソース・コードを設定した後は、特定のタイプのインターフェース内で、使用するソース・コードを変更しないでください。LDM
LANSA データ・モデリング・インターフェース
IEW
インフォメーション・エンジニアリング・ワークベンチ・インターフェース
ACC
アクセラレート・データ・モデリング・インターフェース
戻り値例番号
タイプ
必須/任意
記述
最小長
最大長
最小小数桁数
最大小数桁数
1
A
必須
戻りコード
OK = 編集セッションが開始された
ER = 致命的なエラーが検出された
戻りコードがERの場合、エラー・メッセージが自動的に出力され、編集セッションはコミットなしで終了します。2
2
次の例では、従来のメニュー形式のインターフェースではなく、組み込み関数を使用することによって、NAMESという名前と住所の簡単なファイルの全詳細を定義しています。
*** Define the fields into the data dictionary (no prompting) * USE BUILTIN(PUT_FIELD) WITH_ARGS('N' 'CUSTNO' 'S' 007 0 ' ' 'Customer number') TO_GET(#RETCODE) USE BUILTIN(PUT_FIELD) WITH_ARGS('N' 'CUSNAME' 'A' 010 0 ' ' 'Customer name') TO_GET(#RETCODE) USE BUILTIN(PUT_FIELD) WITH_ARGS('N' 'ADDRESS1' 'A' 020 0 ' ' 'Address line 1') TO_GET(#RETCODE) USE BUILTIN(PUT_FIELD) WITH_ARGS('N' 'ADDRESS2' 'A' 020 0 ' ' 'Address line 2') TO_GET(#RETCODE) USE BUILTIN(PUT_FIELD)WITH_ARGS('N' 'ZIPCODE' 'S' 006 0 ' ' 'Zip code') TO_GET(#RETCODE) * *** Start an edit session on the new file NAMES in library QGPL * USE BUILTIN(START_FILE_EDIT) WITH_ARGS('NAMES' 'QGPL' 'DEM' 'Customer details' 'NORMAL') TO_GET(#RETCODE) * *** Use of triple quotes round *FIRST and *DEFAULT libraries * USE BUILTIN(START_FILE_EDIT) WITH_ARGS('CODES' '''*FIRST''' 'TST' 'Codes details' 'NORMAL') TO_GET(#RETCODE) * USE BUILTIN(START_FILE_EDIT) WITH_ARGS('SALES' '''*DEFAULT''' 'PRD' 'Sales results' 'NORMAL') TO_GET(#RETCODE) * *** Define the fields in the file USE BUILTIN(FILE_FIELD) WITH_ARGS('CUSTNO') TO_GET(#RETCODE) USE BUILTIN(FILE_FIELD) WITH_ARGS('CUSNAME') TO_GET(#RETCODE) USE BUILTIN(FILE_FIELD) WITH_ARGS('ADDRESS1') TO_GET(#RETCODE) USE BUILTIN(FILE_FIELD) WITH_ARGS('ADDRESS2') TO_GET(#RETCODE) USE BUILTIN(FILE_FIELD) WITH_ARGS('ZIPCODE') TO_GET(#RETCODE) *** Define the primary or relational file key * USE BUILTIN(PHYSICAL_KEY) WITH_ARGS('CUSTNO') TO_GET(#RETCODE) * *** Define additional logical view in CUSNAME / ZIPCODE order USE BUILTIN(LOGICAL_VIEW) WITH_ARGS('NAMESV1' 'Customers in name order') TO_GET(#RETCODE) * *** Define keys of logical view NAMESV1 USE BUILTIN(LOGICAL_KEY) WITH_ARGS('NAMESV1' 'CUSNAME') TO_GET(#RETCODE) USE BUILTIN(LOGICAL_KEY) WITH_ARGS('NAMESV1' 'ZIPCODE') TO_GET(#RETCODE) *** Define "one to one" access route to ZIPTABLE by using key ZIPCODE USE BUILTIN(ACCESS_RTE) WITH_ARGS('DEM1' 'Zip details' 'ZIPTABLE' '''*FIRST''' 1 'N/AVAIL') TO_GET(#RETCODE) USE BUILTIN(ACCESS_RTE_KEY) WITH_ARGS('DEM1' 'ZIPCODE') TO_GET(#RETCODE) * *** Define "one to many" access route to ORDHDRV2 using key CUSTNO USE BUILTIN(ACCESS_RTE) WITH_ARGS('DEM2' 'Order details' 'ORDHDRV2' '''*FIRST''' 999 'IGNORE') TO_GET(#RETCODE) USE BUILTIN(ACCESS_RTE_KEY) WITH_ARGS('DEM2' 'CUSTNO') TO_GET(#RETCODE) * *** End the edit session and commit details USE BUILTIN(END_FILE_EDIT) WITH_ARGS('Y') TO_GET(#RETCODE)
- 編集される詳細の「ソース」は重要です。編集セッションが開始されると、START_FILE_EDIT組み込み関数に渡されたソースと同じ「ソース」を持つファイル定義の詳細すべてに削除保留フラグが立てられます。FILE_FIELD、LOGICAL_VIEWなどの組み込み関数のいずれかによって詳細が「再指定」されない場合、詳細は、END_FILE_EDIT組み込み関数によってファイル定義から削除されます。例外は、前述の6番目の引数で1つ以上のバイト位置を使用することによって、特定の詳細を編集から除外している場合です。これによって、別のソース (「&<a href="../../../lansa010/content/lansa/ugub_30007.htm"&>ファイル制御メニュー&</a&>」でLANSA のファイル定義の表示/変更機能を使用した直接入力など) によって指定されたファイルの詳細をファイル編集セッション中に元の状態のまま維持することができます。