# MERGE(複数ファイル結合) データ生成規則 ## 概要 複数の入力ファイルをキーでソート・マージし、統合された1つの出力ファイルを生成するプログラムのテストデータ。 本规则定义4组数据,覆盖全文件合并、键边界、重复键、未排序输入。 ## 输入 - 詳細設計書のキー項目一覧(マージキー) - 各入力ファイルのCOPYBOOKフィールド定義 - キー条件:正常系は昇順ソート済み入力、異常系(组4)は故意に乱序 ## 生成データ組 | 组 | 用途 | 内容 | |----|------|------| | 1 | 全ファイルカバー | 全入力ファイルのデータが出力に反映されるデータ + 末尾多keyテスト | | 2 | キー境界 | 同一キー値が複数ファイルに分散しているケース + 末尾多keyテスト | | 3 | 重复键(MR-N003) | 同一キーが複数ファイルに同値で出現するケース(同キー順序保持確認)+ 末尾多keyテスト | | 4 | 未排序输入(MR-A001) | 入力ファイルが昇順でないデータ(誤マージ確認) | ### 组1:全ファイルカバー(MR-N001) R01: a001→a003→a004 R02: a001→a002→a003 マージ後キー順序(期待): a001→a002→a003→a004 ### 组2:キー境界(MR-N002) R01: a001→a002→a003 R02: a002 同一キーa002が両ファイルに存在(境界でのマージ順序確認)。 ### 组3:重复键(MR-N003) R01: a001→a002→a002→a003 R02: a002→a002→a004 同一キーa002が両ファイルに計4件(同キーの順序保持を確認)。 ### 组4:未排序输入(MR-A001) R01: a001→a003→a002→a004(a003先于a002,违反升序) R02: a001→a002→a003→a004(正常升序) 说明:昇順前提が破られた入力でプログラムの誤マージ/未期待動作を確認する(不要求"正确合并")。 ## 多keyテスト キーが複数項目の場合、各組末尾に追加。各キー項目のみ異なるN件を生成し、正しいキーでマージされることを検証。 需要注意当key为n个项目组合而成时,需要在各組末尾追加n条数据。以基准数据的所有key为准,只有当前第n个key与基准不一致。保证key的比较没有问题。 例(n=3,基准 (a001, b001, c001)): - 追加1: (a002, b001, c001) → 仅第1个key不同 - 追加2: (a001, b002, c001) → 仅第2个key不同 - 追加3: (a001, b001, c002) → 仅第3个key不同 n为实际解析出的key项目数(例中n=3仅为示意,追加条数必须等于实际key项目数)。键项目数n=1时不追加多key测试数据。追加的每条记录必须恰好只改变一个key项目,且不得与既有记录完全重复。 ## データ生成手順 1. マージキー項目を特定(キー項目一覧から) 2. 各組のキー構成に従いレコードを生成(键值升序,组4除外) 3. 非キーフィールドはPIC定義に従い実在しそうな値を生成し、隣接レコード間で異なる値を設定 4. 組1〜組3末尾に多keyテストデータを追加 5. 生成後自检(MR-R001相当):マージ後件数 = 全入力ファイル件数の合計 を確認 ## 出力 每组输出1个JSON文件:`{プログラムID}_g{groupId}.json` 组数约束:输出组数必须与本规则定义的4组一致(g1〜g4),组号连续从1开始。禁止添加本规则未定义的组,禁止缺组。