Spaces:
Configuration error
Configuration error
| """ | |
| 质量检验报告生成脚本说明文档 | |
| ============================ | |
| 本文档详细说明了 generate_quality_inspection_reports.py 的工作原理和数据处理流程。 | |
| 输入文件 | |
| -------- | |
| 1. 1.xls - 源数据文件,包含以下工作表: | |
| - HEADER: 包含基本信息如数量和批准人 | |
| - Dimension: 包含尺寸数据和检验日期 | |
| - Sand: 包含化学元素测试数据 | |
| 2. 2.xlsx - 模板文件,包含: | |
| - WACKER: 模板工作表,包含预设格式 | |
| 数据结构 | |
| -------- | |
| 1. Sand表结构(跳过前12行后): | |
| - 第3列 (索引2): Crucible ID(客户ID) | |
| - 第5-15列 (索引4-14): 化学元素测试数据 | |
| * Al: 第5列 (索引4) | |
| * Ca: 第6列 (索引5) | |
| * Cu: 第7列 (索引6) | |
| * Fe: 第8列 (索引7) | |
| * K: 第9列 (索引8) | |
| * Li: 第10列 (索引9) | |
| * Mg: 第11列 (索引10) | |
| * Mn: 第12列 (索引11) | |
| * Na: 第13列 (索引12) | |
| * Ti: 第14列 (索引13) | |
| * Zr: 第15列 (索引14) | |
| 2. 输出报告结构: | |
| - 基本信息(B3-D5):数量、批号、日期等 | |
| - 化学元素数据(D9-D19):对应11种元素的测试结果 | |
| - 尺寸数据(D20-D28):外径、高度、壁厚等 | |
| - 批准信息(D29):批准人姓名 | |
| 处理流程 | |
| -------- | |
| 1. 数据读取阶段: | |
| - 读取HEADER表获取基本信息 | |
| - 读取Dimension表获取尺寸数据和日期信息 | |
| - 读取Sand表获取化学元素测试数据 | |
| - 读取模板文件作为基础格式 | |
| 2. 数据处理阶段: | |
| - 遍历Dimension表中的每个Customer ID | |
| - 为每个Customer ID创建新的工作表 | |
| - 复制模板内容保持格式一致 | |
| - 填充基本信息(数量、日期等) | |
| - 从Sand表匹配并填充化学元素数据 | |
| - 填充尺寸数据 | |
| - 添加批准人信息 | |
| 3. 数据映射关系: | |
| a. 元素行号映射 (element_row_mapping): | |
| - Al -> 第9行 | |
| - Ca -> 第10行 | |
| - Cu -> 第11行 | |
| ...(依此类推) | |
| b. 元素列索引映射 (element_col_mapping): | |
| - Al -> 第5列(索引4) | |
| - Ca -> 第6列(索引5) | |
| - Cu -> 第7列(索引6) | |
| ...(依此类推) | |
| 注意事项 | |
| -------- | |
| 1. 日期处理: | |
| - 检验日期格式化为 YYYY-MM-DD | |
| - 失效日期自动计算为检验日期+730天(2年) | |
| 2. 数据验证: | |
| - 检查Customer ID是否存在于Sand表中 | |
| - 确保所有必要的数据都被正确填充 | |
| 3. 格式保持: | |
| - 通过复制模板内容保持原有格式 | |
| - 保持"批准人:"文本的一致性 | |
| 使用方法 | |
| -------- | |
| 1. 确保输入文件 (1.xls 和 2.xlsx) 在正确的位置 | |
| 2. 运行脚本:python generate_quality_inspection_reports.py | |
| 3. 输出文件将保存为 2_updated.xlsx | |
| 输出文件 | |
| -------- | |
| 2_updated.xlsx:包含所有客户的质量检验报告,每个客户一个工作表, | |
| 保持了原有的格式并填充了所有必要的数据。 | |
| """ | |
| # 示例:如何使用生成的报告 | |
| def usage_example(): | |
| print("使用示例:") | |
| print("1. 准备输入文件:") | |
| print(" - 确保有1.xls(源数据)") | |
| print(" - 确保有2.xlsx(模板)") | |
| print("\n2. 运行脚本:") | |
| print(" python generate_quality_inspection_reports.py") | |
| print("\n3. 检查输出:") | |
| print(" - 查看2_updated.xlsx") | |
| print(" - 验证每个客户的工作表是否正确生成") | |
| if __name__ == "__main__": | |
| usage_example() |