财务会计凭证生成器 (finance-ledger-generator)
读取源文件
解锁后获得一次性下载链接,24小时内有效
📄 技能说明 (SKILL.md)
--- name: finance-ledger-generator description: 财务会计凭证生成技能,支持金蝶、用友、SAP、Oracle等主流财务软件的数据导入格式。提供完整的基础资料初始化、数据存储、核算规则学习、凭证模板生成等功能。触发关键词:凭证生成、会计凭证、财务导入、Excel凭证、金蝶导入、用友导入、SAP导入、科目映射、辅助核算。 compatibility: 需要 Python 3.14+,openpyxl 库用于 Excel 操作,pandas 库用于数据处理 metadata: author: WorkBuddy version: "2.0" binary_files: none --- # 财务会计凭证生成器 (finance-ledger-generator) ## 技能概述 本技能用于生成符合主流财务软件(金蝶、用友、SAP、Oracle等)导入格式的会计凭证文件。支持: - 账簿清单管理 - 科目编码与全称管理 - 核算规则自动学习与用户修正 - 客户、供应商、员工等辅助核算项管理 - 多币种汇率管理 - Excel模板文件生成 - JSON格式本地数据存储 ## 核心数据结构 ### 1. 账簿清单 (ledger_books.json) 存储账簿信息,包括账簿编码、名称、启用日期等。 ### 2. 科目档案 (account_codes.json) 存储科目信息,包括科目编码、科目名称、科目类别、是否需要辅助核算等。 ### 3. 核算规则 (accounting_rules.json) 存储自动学习的核算规则,包括: - 原始字段到目标科目的映射 - 取数规则(从源文件哪个字段取值) - 数据转换规则 ### 4. 客户清单 (customers.json) 存储客户信息,用于辅助核算。 ### 5. 供应商清单 (suppliers.json) 存储供应商信息,用于辅助核算。 ### 6. 员工清单 (employees.json) 存储员工信息,用于辅助核算。 ### 7. 汇率表 (exchange_rates.json) 存储汇率信息,支持多币种核算。 ## 初始化流程 首次使用本技能时,需要引导客户完成基础资料初始化: ### 第一步:上传账簿清单 1. 提示客户上传账簿清单文件(Excel或JSON格式) 2. 若客户无模板,提供标准模板下载 3. 解析并存储账簿数据到 `ledger_books.json` ### 第二步:上传科目编码与全称 1. 提示客户上传科目档案文件 2. 若客户使用金蝶/用友,可提供对应软件的科目模板 3. 解析并存储科目数据到 `account_codes.json` ### 第三步:学习核算规则(可选但推荐) 1. 提示客户上传历史明细账或财务核算手册 2. 自动分析历史数据,推断核算规则 3. 展示推断的规则供客户确认 4. 客户可修正不准确的规则 5. 存储最终规则到 `accounting_rules.json` ### 第四步:上传辅助核算资料 1. 客户清单(customers.json) 2. 供应商清单(suppliers.json) 3. 员工清单(employees.json) 4. 其他辅助资料 ### 第五步:配置汇率(如需多币种) 上传汇率表或手动维护汇率数据 ## 凭证生成流程 ### 输入 客户上传原始业务数据文件(Excel、CSV等),例如: - 银行回单 - 发票清单 - 报销单据 - 采购/销售数据 ### 处理步骤 1. **读取源文件** - 使用 pandas 读取上传的业务数据文件 - 识别列名和数据类型 2. **匹配核算规则** - 根据业务类型自动匹配核算规则 - 对于无法匹配的字段,标记待确认 3. **生成凭证分录** - 根据规则映射生成借方和贷方分录 - 自动补充辅助核算信息 - 应用汇率转换(如适用) 4. **生成Excel模板** - 使用 openpyxl 在运行时动态生成符合目标财务软件的Excel文件 - 支持金蝶、用友、SAP、Oracle四种格式 - 模板字段规范详见 `assets/template_format.md` 5. **输出文件** - 生成可直接导入财务软件的Excel文件 - 生成规则应用报告,列出所有映射关系 ## 数据存储结构 所有数据以 JSON 格式存储在 skill 数据目录: ``` ~/.workbuddy/skills/finance-ledger-generator/data/ ├── ledger_books.json # 账簿清单 ├── account_codes.json # 科目档案 ├── accounting_rules.json # 核算规则 ├── customers.json # 客户清单 ├── suppliers.json # 供应商清单 ├── employees.json # 员工清单 ├── exchange_rates.json # 汇率表 ├── auxiliary_data.json # 其他辅助资料 └── meta.json # 元数据(版本、上次更新时间等) ``` ## Excel模板格式 ### 凭证表头字段(通用) | 字段名 | 说明 | 是否必填 | |--------|------|----------| | 凭证字 | 如"记"、"收"、"付"等 | 是 | | 凭证号 | 凭证序号 | 是 | | 凭证日期 | 业务日期 | 是 | | 附单据数 | 原始单据数量 | 否 | ### 凭证分录字段(通用) | 字段名 | 说明 | 是否必填 | |--------|------|----------| | 摘要 | 业务描述 | 是 | | 科目编码 | 会计科目代码 | 是 | | 科目名称 | 会计科目名称 | 否 | | 借方金额 | 借方发生额 | 是* | | 贷方金额 | 贷方发生额 | 是* | | 辅助核算-客户 | 客户辅助核算 | 否 | | 辅助核算-供应商 | 供应商辅助核算 | 否 | | 辅助核算-员工 | 员工辅助核算 | 否 | | 辅助核算-项目 | 项目辅助核算 | 否 | *借方金额和贷方金额至少填写一项 ## 支持的财务软件格式 ### 金蝶K/3 Cloud - 凭证模板:K3_Voucher_Template.xlsx - 导入方式:标准Excel导入 ### 用友U8/U9 - 凭证模板:Yonyou_Voucher_Template.xlsx - 导入方式:UFO报表格式 ### SAP - 凭证模板:SAP_BAPI_Template.xlsx - 导入方式:FBV0事务码导入 ### Oracle Fusion - 凭证模板:Oracle_Journal_Template.xlsx - 导入方式:REST API或电子表格导入 ## 核算规则学习机制 ### 自动推断规则 1. 分析历史明细账数据 2. 识别交易类型与科目的对应关系 3. 学习金额字段的取数来源 4. 学习辅助核算项的匹配逻辑 ### 用户修正规则 1. 展示推断的规则列表 2. 用户可编辑任意规则 3. 支持添加新规则 4. 支持删除不需要的规则 5. 修正后的规则自动保存 ### 规则优先级 1. 用户自定义规则(最高优先级) 2. 自动学习的规则 3. 系统默认规则(最低优先级) ## 辅助核算项管理 ### 支持的辅助核算类型 - 客户核算 - 供应商核算 - 员工核算 - 项目核算 - 部门核算 - 合同核算 ### 数据来源 - 客户上传清单文件 - 手动录入 - 从历史凭证自动提取 ## 使用示例 ### 示例1:初始化基础资料 ``` 用户:帮我初始化财务凭证生成的基础资料 助手: 1. 引导上传账簿清单 2. 引导上传科目档案 3. 引导上传历史明细账学习核算规则 4. 引导上传客户/供应商/员工清单 5. 配置汇率表 ``` ### 示例2:生成凭证 ``` 用户:帮我把这张银行回单转换成金蝶凭证 助手: 1. 读取银行回单内容 2. 根据核算规则生成凭证分录 3. 匹配客户/供应商信息 4. 生成Excel格式的金蝶凭证文件 5. 提供下载链接 ``` ### 示例3:学习新规则 ``` 用户:上传了新的财务核算手册,帮我更新核算规则 助手: 1. 解析新的财务核算手册 2. 与现有规则对比 3. 标注新增和修改的规则 4. 展示规则供用户确认 5. 保存确认后的规则 ``` ## 相关文件 - 初始化脚本:`scripts/init_data.py` - 数据管理脚本:`scripts/data_manager.py` - 凭证生成脚本:`scripts/voucher_generator.py` - 规则学习脚本:`scripts/rule_learner.py` - 数据结构参考:`references/data_schema.md` - 模板格式说明:`assets/template_format.md`(运行时动态生成Excel模板)