外部記述ファイルの記述には、レコードをファイルから取り出す方法を記述しているアクセス・パスが 含まれます。 レコードは、到着順 (キー順でない) アクセス・パスまたはキー順アクセス・ パスに基づいて検索することができます。
到着順アクセス・パスは、レコードがファイルに保管される順序に 基づいています。 レコードは 1 つずつ順番にファイルに追加されていきます。
キー順アクセス・パスの場合には、ファイル内のレコードの順序は、 そのファイルの DDS に定義されたキー・フィールドの内容に基づいています。例えば、図 160 に示されている DDS では、 CUST はキー・フィールドとして定義されています。 キー順アクセス・パスは、レコードを追加した場合、削除した場合、あるいは キー・フィールドの内容が変更された場合には、常に更新されます。
外部記述データベース・ファイルの場合のアクセス・パスの詳細については、Web サイト http://www.ibm.com/eserver/iseries/infocenter で iSeries Information Center の中の『データベース』カテゴリーの『DB2 Universal Database for AS/400』の節を参照してください。
*.. 1 ...+... 2 ...+... 3 ...+... 4 ...+... 5 ...+... 6 ...+... 7 ..* A..........T.Name++++++.Len++TDpB......Functions++++++++++++++++++++* A** 論理 CUSMSTL 得意先マスター・ファイル A UNIQUE A R CUSREC PFILE(CUSMSTP) A TEXT('Customer Master Record') A CUST A NAME A ADDR A CITY A STATE A ZIP A SRHCOD A CUSTYP A ARBAL A ORDBAL A LSTAMT A LSTDAT A CRDLMT A SLSYR A SLSLYR A K CUST
DDS のサンプルは、得意先マスター論理ファイル CUSMSTL のものです。 このファイルには、1 つのレコード様式 CUSREC (得意先マスター・レコード) があります。 このファイルのデータは、物理ファイル CUSMSTP に入っていますが、 これはキーワード PFILE によって識別されます。 UNIQUE キーワードを使用して、このファイルには重複するキーの値を使用でき ないことを示しています。 CUST フィールドは、最後の行の 17 桁目に K があるので、このレコード様式 のキー・フィールドとして識別されます。
このレコード様式のフィールドは、レコードに現れる順序でリストされます 。 フィールドの属性は、物理ファイル CUSMSTP から獲得されます。 順に、物理ファイルはフィールド参照ファイルを参照してフィールドの属性を 獲得します。 フィールド参照ファイルは 図 161 に示してあります。
*.. 1 ...+... 2 ...+... 3 ...+... 4 ...+... 5 ...+... 6 ...+... 7 ..* A..........T.Name++++++RLen++TDpB......Functions++++++++++++++++++++* A**FLDRED DSTREF 配送アプリケーションのフィールド参照 A R DSTREF TEXT('Distribution Field Ref') A* 参照として使用される共通フィールド A BASDAT 6 0 EDTCDE(Y) 1 A TEXT('Base Date Field') A* 得意先マスター・ファイルで使用されるフィールド A CUST 5 CHECK(MF) 2 A COLHDG('Customer' 'Number') A NAME 20 COLHDG('Customer Name') A ADDR R REFFLD(NAME) 3 A COLHDG('Customer Address') A CITY R REFFLD(NAME) 3 A COLHDG('Customer City') A STATE 2 CHECK(MF) 2 A COLHDG('State') A SRHCOD 6 CHECK(MF) 2 A COLHDG('Search' 'Code') A TEXT('Customer Number Search + A Code') A ZIP 5 0 CHECK(MF) 2 A COLHDG('Zip' 'Code') A CUSTYP 1 0 RANGE(1 5) 4 A COLHDG('Cust' 'Type') A TEXT('Customer Type 1=Gov 2=Sch+ A 3=Bus 4=Pvt 5=Oth') A ARBAL 8 2 COLHDG('Accts Rec' 'Balance') 5 A EDTCDE(J) 6 A ORDBAL R REFFLD(ARBAL) A COLHDG('A/R Amt in' 'Order + A File') A LSTAMT R REFFLD(ARBAL) A COLHDG('Last' 'Amount' 'Paid') A TEXT('Last Amount Paid in A/R') A LSTDAT R REFFLD(BASDAT) A COLHDG('Last' 'Date' 'Paid') A TEXT('Last Date Paid in A/R') A CRDLMT R REFFLD(ARBAL) A COLHDG('Credit' 'Limit') A TEXT('Customer Credit Limit') A SLSYR R+ 2 REFFLD(ARBAL) A COLHDG('Sales' 'This' 'Year') A TEXT('Customer Sales This Year') A SLSLYR R+ 2 REFFLD(ARBAL) A COLHDG('Sales' 'Last' 'Year') A TEXT('Customer Sales Last Year') 7
このフィールド参照ファイルの例は、図 160 に示されている CUSMSTL (得意先マスター論理) ファイルによって使用されるフィールドの定義 を示しています。 フィールド参照ファイルには通常、他のファイルによって使用される フィールドの定義が入っています。 次のテキストは、このフィールド参照ファイルの一部の項目について説明して います。
(C) Copyright IBM Corporation 1992, 2006. All Rights Reserved.