# 关于T账套导出销货单数量异常的分析 ## 🔍 常见原因排查方向 1. **重复单据未过滤** ✔️ 检查是否存在同一订单被多次过账的情况(比如误操作导致重复审核) ✔️ 确认导出逻辑是否包含草稿/作废状态的单据 2. **统计口径差异** 👉 系统后台可能按「实际发货量」计量,而导出时取的是「计划销量」或含预留库存的特殊字段值 👉 注意单位换算问题(如按箱导出但系统存的是单件数) 3. **数据同步延迟** ⚠️ 如果刚新增过数据就立即导出,可能出现缓存未刷新导致的累加错误 💡 建议等待30秒后重新尝试,或重启服务再试 4. **关联表连接错误** 🔧 数据库层面可能存在错误的JOIN操作: - 错误关联了历史版本表(如备份表混入主数据源) - 多对一关系误写成一对多导致数据膨胀 5. **计算公式叠加效应** 某些ERP系统的汇总列会默认累加明细行的公式结果,而非原始数值本身 ## 📌 快速验证步骤 | 序号 | 操作方法 | 预期效果 | |------|------------------------------|--------------------------| | 1 | 在SQL中直接查询基础表原始值 | 确认数据库真实存储量 | | 2 | 对比单个最大差异订单的详情 | 定位具体哪笔交易出错 | | 3 | 临时关闭自动合并相同单据功能 | 测试是否因聚合算法导致偏差 | | 4 | 用Excel分别手动求和两个来源的数据 | 验证是否是显示格式造成的视觉误差 | ## 💡 典型解决方案 ✅ **优先排查方向**:先检查最近修改过的单据是否有异常审批记录 ✅ **应急处理**:添加`WHERE status='effective'`条件到导出SQL语句中排除无效单据 ✅ **长期预防**:在程序里增加双重校验机制,当导出总量超过系统库存阈值时触发告警 > ℹ️ 根据经验,这类问题约70%是由于未过滤掉已删除/作废状态的残留数据所致,建议重点核查状态机设计是否合理。如果是金蝶KIS环境,记得查看`t_SLPIDetail`表中的IsDisable标志位。


