2.8 KiB
2.8 KiB
RHjWw3ERoi49SCkWJnGc470CnVb
Source: https://ocnmca6f1o0p.feishu.cn/wiki/RHjWw3ERoi49SCkWJnGc470CnVb
一、工作内容概述
二、实施过程
(一)流水取数源接入
- 对接流水汇总数据接口,支持按游戏、按账期灵活查询流水数据。
- 实现断点续传能力:任务提交后如果程序重启或中途中断,可以自动从上次位置继续,不用重新等待。
- 建立任务状态管理:记录每次取数任务的提交时间、完成情况,方便追溯和排查问题。
- 增加容错处理:遇到DGC系统繁忙时自动等待重试,遇到网络抖动时自动恢复,提高取数稳定性。
- 集成到查询界面:可在界面上直接选择游戏、填写账期发起取数,无需手动拼接参数。
(二)汇兑损益取数与底表生成
- 解决金蝶多账簿报表数据获取问题,找到了能返回完整字段的正确请求方式。
- 编写测试脚本反复验证不同账簿、不同币种的数据准确性。
- 优化取数流程,从原先的分批轮询改为一次性全量获取,缩短等待时间。
- 按财务要求的底稿格式导出Excel,保留原有样式和格式。
(三)非经营性收益取数与底表生成
- 完成非经营性收益任务配置,按业务口径从金蝶提取非经营性收益数据。
- 制作非经营性收益报表Excel模板,字段和格式对齐财务底稿要求。
- 同样采用一次性获取策略,保证取数效率和稳定性。
(四)三表合并导出
- 将费用明细、汇兑损益、非经营性收益三张表合并导出到一个Excel文件。
- 参照"成本费用预估&合并底稿"标准模板,实现一键生成能力。
- 修复了底表导出时账期显示错误的问题,统一按年度导出。
三、遇到难点与解决思路
(一)流水取数任务的断点续传
流水取数是异步接口,提交任务后需等待一段时间才能拿到结果。中途程序重启或网络中断会导致任务丢失,需要重新提交等待。 **解决思路: **为每个取数请求生成唯一标识并保存任务凭证。再次执行相同请求时,优先用已有凭证继续查询,失效后再自动提交新任务,既避免重复提交,又实现断点续传。
(二)金蝶多账簿报表字段缺失
汇兑损益从金蝶"多账簿科目余额表"取数时,常规请求返回字段不完整,缺少期末原币、期末本位币等关键数据,无法满足底稿要求。 解决思路: 通过抓包分析金蝶前端实际请求,找到需要指定"返回所有字段"和"强制JSON格式"两个关键参数。调整后数据完整,经多账簿、多币种验证无误后正式应用。