fix: 溢出截断 + flatfile字段路由 + 多E2E验证
1. _make_numeric_value截断保护 PIC 9(3)字段值超过999时截断(之前不截断) 2. flatfile.py字段路由 write_all_files按FD分配字段值到对应的文件 3. 端到端运行验证: 01-matching-1-1: PASS (8匹配/9不匹配) 03-matching-N-1: PASS (COPYBOOK正常解析) 10-divide-50: 程序自身OPEN逻辑问题 34-sort-anomaly: PARTIAL(异常测试用例部分通过) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -401,10 +401,12 @@ def _children_of(group_name: str, fields: list) -> list:
|
||||
|
||||
|
||||
def _make_numeric_value(idx: int, record_num: int, total_digits: int) -> str:
|
||||
max_val = 10 ** total_digits - 1
|
||||
for step in (100, 10, 1):
|
||||
val = idx * step + record_num
|
||||
if val < 10 ** total_digits:
|
||||
return str(val).zfill(total_digits)
|
||||
return str(min(val, max_val)).zfill(total_digits)
|
||||
return str(min(record_num, max_val)).zfill(total_digits)
|
||||
return str(record_num).zfill(total_digits)
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user