Rational Developer for System z
COBOL for Windows バージョン 7.5 プログラミング・ガイド


例: 逐次探索

次の例は、3 次元テーブルの最も内部にあるテーブルの中で、特定のストリングを見つける方法を示しています。

テーブルの各次元には独自の指標があります (それぞれ、1、4、および 1 に設定されています)。 最も内部のテーブル (TABLE-ENTRY3) には昇順キーがあります。

01  TABLE-ONE.
    05 TABLE-ENTRY1 OCCURS 10 TIMES
          INDEXED BY TE1-INDEX.
       10 TABLE-ENTRY2 OCCURS 10 TIMES
             INDEXED BY TE2-INDEX.
          15 TABLE-ENTRY3 OCCURS 5 TIMES
                ASCENDING KEY IS KEY1
                INDEXED BY TE3-INDEX.
             20 KEY1                 PIC X(5).
             20 KEY2                 PIC X(10).
. . .
PROCEDURE DIVISION.
    . . .
    SET TE1-INDEX TO 1
    SET TE2-INDEX TO 4
    SET TE3-INDEX TO 1
    MOVE “A1234” TO KEY1 (TE1-INDEX, TE2-INDEX, TE3-INDEX + 2)
    MOVE “AAAAAAAA00” TO KEY2 (TE1-INDEX, TE2-INDEX, TE3-INDEX + 2)
    . . .
    SEARCH TABLE-ENTRY3
      AT END
        MOVE 4 TO RETURN-CODE
      WHEN TABLE-ENTRY3(TE1-INDEX, TE2-INDEX, TE3-INDEX)
          = “A1234AAAAAAAA00”
        MOVE 0 TO RETURN-CODE
    END-SEARCH

実行後の値

TE1-INDEX = 1
TE2-INDEX = 4
TE3-INDEX points to the TABLE-ENTRY3 item
          that equals “A1234AAAAAAAA00”
RETURN-CODE = 0

ご利用条件 | フィードバック

Copyright IBM Corporation 1996, 2008.
このインフォメーション・センターでは Eclipse テクノロジーが採用されています。(http://www.eclipse.org)