論理ファイルの例

ファイル定義の過程で、論理ファイル(あるいは論理ビュー)を定義する例を示します。

ここでは次のようなフィールドから成る顧客マスター・ファイルCUSMSTを例として使います。

フィールド

説明

タイプ

長さ

小数点の位置

CUSTNO

顧客番号(プライマリ・キー)

S

7

0

NAME

個人/組織名

A

30

 

ADDR1

住所1

A

35

 

ADDR2

住所2

A

35

 

ADDR3

住所3

A

35

 

POSTCD

郵便番号

A

4

 

STATE

州コード

A

3

 

ACTIVE

稼動/休止フラグ

A

1

 

CREDIT

与信限度

P

11

2

AMTDUE

貸し出し残高

P

11

2

ACCTYP

口座種別

P

1

0

 

例1

NAMEフィールドを基準に整列した、CUSMSTV1という論理ビュー/ファイルを定義。

Logical view name     :CUSMSTV1

Desc of logical view  :Customer master by customer name

Access path maint opt :IMMED Unique?NO Dynamic select?NO

Key field details 

    Field   Description      A/D    S/U/A

    NAME___                  A      _    

    _______                  _      _        +

    _______                  _      _        +

                                             +

例2

州コード順、同じ州内では郵便番号順に並べ替えた、CUSMSTV2という論理ビュー/ファイルを定義。

Logical view name     :CUSMSTV2

Desc of logical view  :Cust master by state and postcode

Access path maint opt :IMMED Unique?NO Dynamic select?NO

Key field details 

    Field      Description      A/D   S/U/A

    STATE____                   _      _

    POSTCD___                   _      _

                                _      _   +

 

昇順/降順の指定はしていないので、省略値である昇順になります。

例3

顧客番号順に並べた、CUSMSTS1という論理ビュー/ファイルを定義。ただし、稼動口座(ACTIVE = 'Y')のみ選択します。

Logical view name     :CUSMSTS1

Desc of logical view  :Active customers by customer no

Access path maint opt :IMMED Unique?NO Dynamic select?NO

Key field details:

    Field       Description      A/D   S/U/A

    CUSTNO__                     _      _

    ________                     _      _        +

    ________                     _      _        +

                                                 +

 

Select/Omit criteria:

    AND/OR    SELECT/OMIT    Field       Operation(s)        

              SELECT_____    ACTIVE__    COMP(EQ 'Y')______

例4

貸し出し残高順に並べた、CUSMSTS2という論理ビュー/ファイルを定義。ただし、与信限度(CREDIT)が100000を超え、貸し出し残高(AMTDUE)が20000以上のもののみ選択します。また、貸し出し残高の高いものから順に並べます。実行時選択機能も使います。

Logical view name    :CUSMSTS2

Desc of logical view :High credit, large debt customers

Access path maint opt:IMMED Unique?NO Dynamic select?YES

Key field details:

    Field       Description      A/D   S/U/A

    AMTDUE__                     D      S

    ________                     _      _        +

    ________                     _      _        +

                                                 +

 

Select/Omit criteria :

    AND/OR    SELECT/OMIT    Field     Operation(s)     

              SELECT____     CREDIT____ COMP(GT 100000)_______

    AND       __________     AMTDUE____ COMP(GE 20000)________

「Select/Omit criteria」の2行目、「SELECT/OMIT」欄が空になっているのは、2つの選択条件をAND条件で結ぶことを表します。この場合、CREDITが100000より大きく、かつ、AMTDUEが20000以上である顧客を選択することになります。

例5

与信限度順に並べた、CUSMSTS3という論理ビュー/ファイルを定義。ただし、与信限度(CREDIT)が100000を超えるか、または貸し出し残高(AMTDUE)が20000以上のもののみ選択します。

Logical view name     :CUSMSTS3

Desc of logical view  :High credit or large debt customers

Access path maint opt :IMMED Unique?NO Dynamic select?NO

Key field details:

    Field        Description      A/D    S/U/A

    CREDIT__                       _      _    

    ________                       _      _        +

    ________                       _      _        +

                                                   +

 

Select/Omit criteria:

    AND/OR    SELECT/OMIT   Field      Operation(s)        

              SELECT____    CREDIT____ COMP(GT 100000)________

    OR        SELECT____    AMTDUE____ COMP(GE 20000)_________

「Select/Omit criteria」の2行目、「SELECT/OMIT」欄が空になっていないので、2つの選択条件をOR条件で結ぶことを表します。この場合、CREDITが100000より大きいか、または、AMTDUEが20000以上である顧客を選択することになります。

例6

州と顧客番号を基準に並べ替えた、CUSMSTS4という論理ビュー/ファイルを定義。ただし、州(STATE)が「NSW」(ニュー・サウス・ウェールズ州)、「VIC」(ビクトリア州)、「QLD」(クイーンズランド州)のいずれかであるもののみ選択します。

Logical view name     :CUSMSTS4

Desc of logical view  :East coast customers by state, cust

Access path maint opt :IMMED Unique?NO Dynamic select?NO

Key field details 

    Field      Description      A/D   S/U/A

    STATE___                    _      _    

    CUSTNO__                    _      _    

    ________                    _      _         +

                                                 +

 

Select/Omit criteria:

    AND/OR    SELECT/OMIT    Field     Operation(s)        

              SELECT_____    STATE____ COMP(EQ 'NSW')________

    OR        SELECT_____    STATE____ COMP(EQ 'VIC')________

    OR        SELECT_____    STATE____ COMP(EQ 'QLD')________

 

An identical condition can be made using the VALUES keyword:

Select/Omit criteria 

    AND/OR    SELECT/OMIT   Field   Operation(s)        

              SELECT_____   STATE_ VALUES('NSW' 'VIC' 'QLD')    

例7

顧客番号順に並べた、CUSMSTS5という論理ビュー/ファイルを定義。ただし、口座種別(ACCTYP)が2、3、4のいずれかであるもののみ選択します。

Logical view name     :CUSMSTS5

Desc of logical view  :Customers with type 2, 3 or 4 accounts

Access path maint opt :IMMED Unique?NO Dynamic select?NO

Key field details:

    Field      Description      A/D   S/U/A

    CUSTNO__                    _      _    

    ________                    _      _        +

    ________                    _      _        +

Select/Omit criteria:

    AND/OR    SELECT/OMIT    Field     Operation(s)        

              SELECT_____     ACCTYP____ COMP(EQ 2)_____

    OR        SELECT_____     ACCTYP____ COMP(EQ 3)_____

    OR        SELECT_____     ACCTYP____ COMP(EQ 4)______

選択条件は、次のような書き方も可能です。

 

             SELECT_____    ACCTYP____ COMP(GE 2)________

    AND                     ACCTYP____ COMP(LE 4)_________

または

 

             SELECT_____     ACCTYP___ VALUES(2 3 4)______

または

 

             SELECT_____    ACCTYP____ RANGE(2 4)______