COBOLサンプルソース集)マージ

【MRGDV2】2本のファイルのマージ

MATDV2のドライバと全く同じで、機能の内容が異なるだけです。

      ***** (併合処理ドライバパターン) *****    [MRGDV2]     (20 F10)

      * [ 2本のファイルの併合 file-end は high-value で制御 ] *
      *  (  ) 内に命令等を記述する

       procedure    division.
      **********  [ 制御-MODULE ]  **********
           open input (f1) (f)2 output (f3)
           perform f1-rtn thru f1-ext
           perform f2-rtn thru f2-ext
           perform until (f1キー = high-value) and (f2キー = high-value)
               evaluate true
                   when (f1キー < f2キー) perform 処理f1 thru 出口f1
                                      perform f1-rtn thru f1-ext
                   when (f1キー = f2キー) perform 処理f2 thru 出口f2
                                      perform f2-rtn thru f2-ext
                   when (f1キー > f2キー) perform 処理f3 thru 出口f3
                                      perform f2-rtn thru f2-ext
               end-evaluate
           end-perform
           close (f1) (f2) (f3)  stop run.

      **********  [ 機能-MODULE ]  **********
       処理f1. (f1 を書き出す).
       出口f1. exit.

       処理f2. (err処理を行う).
       出口f2. exit.

       処理f3. (f2 を書き出す).
       出口f3. exit.

      **********  [ 読込-MODULE ]  **********
       f1-rtn. read (f1) end move high-value to (f1キー)
                     not end continue
               end-read.
       f1-ext. exit.
       
       f2-rtn. read (f2) end move high-value to (f2キー)
                     not end continue
               end-read.
       f2-ext. exit.

<< Back   Index   Next >>    < Top >