[易飞]关于应付账款明细帐余额余总账不平解决方案

[摘要]2020年3月财务部反馈应付账款明细账与应付余额,与总账不平衡。严重质疑是IT部于2018年11月底升级服务器&数据切割造成的。要求IT必须解决且负全责!

[回顾]因服务器服役年限到期且数据量“较大”,财务部月结计算速度过慢,决定2018年11月24号进行服务器迁移同时数据切割(2013年12月31号)。考虑到可能存在的风险总账与应收子系统不处理。只处理应付子系统与分录子系统,同时让财务确认。

[确认问题]

  1. 还原数据后仍然存在异常,即使重新应付之后还是存在差异
  2. 数据切割前数据本身也存在差异,且与现有最新数据一致
  3. 抽样针对切割前没有交易,如17年后才有交易对象,差异也存在
  4. 财务部一直未对应付账款明细帐或余额表 与总账核对,应收除外。之前也存在差异,但是一直未要求此部分账务一致性。
  5. 账龄分析表与总账一致但与应付账款明细帐余额表不一致部分,差异原因还在分析中.
    综合以上基本确定和数据切割无关系。

财务部硬核答复:

(1)一一反击

在这里插入图片描述

(2)2019年4月毕马威审计时应付账龄分析与总账是一致的。

[恢复数据]

新建测试账套TEST&切割前账套[ZE2018]:
在这里插入图片描述
ACP:

USE [TEST]
--TEST:测试账套 2018ZE:切割前账套数据
---采购发票
--DELETE FROM ACPTA WHERE TA003<='20131231'
--DELETE FROM ACPTB WHERE TB001+TB002 NOT IN (SELECT TA001+TA002 FROM ACPTA)
INSERT INTO TEST.dbo.ACPTA
SELECT * FROM  [2018ZE].dbo.ACPTA WHERE TA003<='20131231' AND TA001+TA002 NOT IN ('7102131215038','7102131115036') 
INSERT INTO TEST.dbo.ACPTB
SELECT * FROM [2018ZE].dbo.ACPTB WHERE TB001+TB002  IN (SELECT TA001+TA002 FROM [2018ZE].dbo.ACPTA WHERE TA003<='20131231' AND TA001+TA002 NOT IN ('7102131215038','7102131115036'))

-----供应商每月统计
--DELETE FROM ACPTE WHERE TE002<='201311'
--DELETE FROM ACPTF WHERE TF002<='201311'
INSERT INTO TEST.dbo.ACPTE
SELECT * FROM  [2018ZE].dbo.ACPTE WHERE TE002<='201311'
INSERT INTO TEST.dbo.ACPTF
SELECT * FROM  [2018ZE].dbo.ACPTF WHERE TF002<='201311'
-----其他应付
--DELETE FROM ACPTI WHERE TI003 <='20131231'
--DELETE FROM ACPTJ WHERE TJ001+TJ002 NOT IN (SELECT TI001+TI002 FROM ACPTI)
INSERT INTO TEST.dbo.ACPTI
SELECT * FROM  [2018ZE].dbo.ACPTI WHERE TI003<='201311'

INSERT INTO TEST.dbo.ACPTJ
SELECT * FROM  [2018ZE].dbo.ACPTJ WHERE TJ001+TJ002  IN (SELECT TI001+TI002 FROM [2018ZE].dbo.ACPTI WHERE TI003<='201311')
-----付款单
--DELETE FROM ACPTK WHERE TK003<='20131231'
--DELETE FROM ACPTL WHERE TL001+TL002 NOT IN (SELECT TK001+TK002 FROM ACPTK)
INSERT INTO TEST.dbo.ACPTK
SELECT * FROM  [2018ZE].dbo.ACPTK WHERE TK003<='20131231'
INSERT INTO TEST.dbo.ACPTL
SELECT * FROM [2018ZE].dbo.ACPTL WHERE TL001+TL002  IN (SELECT TK001+TK002 FROM [2018ZE].dbo.ACPTK WHERE TK003<='20131231')
-----费用结算
--DELETE FROM ACPTM WHERE TM003<='20131231'
--DELETE FROM ACPTN WHERE TN001+TN002 NOT IN (SELECT TM001+TM002 FROM ACPTM)
--DELETE FROM ACPTO WHERE TO001+TO002 NOT IN (SELECT TM001+TM002 FROM ACPTM)
INSERT INTO TEST.dbo.ACPTM
SELECT * FROM  [2018ZE].dbo.ACPTM WHERE  TM003<='20131231'
INSERT INTO TEST.dbo.ACPTN
SELECT * FROM [2018ZE].dbo.ACPTN WHERE TN001+TN002  IN (SELECT TM001+TM002 FROM [2018ZE].dbo.ACPTM WHERE  TM003<='20131231')
INSERT INTO TEST.dbo.ACPTO
SELECT * FROM  [2018ZE].dbo.ACPTO WHERE TO001+TO002  IN (SELECT TM001+TM002 FROM [2018ZE].dbo.ACPTM WHERE  TM003<='20131231' )

-----暂估
--DELETE FROM ACPTP WHERE TP003<='20131231'
--DELETE FROM ACPTQ WHERE TQ001+TQ002 NOT IN (SELECT TP001+TP002 FROM ACPTP)
INSERT INTO TEST.dbo.ACPTP
SELECT * FROM  [2018ZE].dbo.ACPTP WHERE  TP003<='20131231'
INSERT INTO TEST.dbo.ACPTQ
SELECT * FROM [2018ZE].dbo.ACPTQ WHERE TQ001+TQ002  IN (SELECT TP001+TP002 FROM [2018ZE].dbo.ACPTP WHERE  TP003<='20131231')
-----应付异动
--DELETE FROM ACPLB WHERE LB020<='20131231'
INSERT INTO TEST.dbo.ACPLB
SELECT * FROM  [2018ZE].dbo.ACPLB WHERE LB020<='20131231' AND LB002+LB003 NOT IN ('7102131215038','7102131115036')
-----核销
--DELETE FROM ACPLC WHERE LC029<='20131231'
INSERT INTO TEST.dbo.ACPLC
SELECT * FROM  [2018ZE].dbo.ACPLC WHERE LC029<='20131231'
-----调汇
--DELETE FROM ACPLD WHERE LD003<='20131231'
--DELETE FROM ACPLE WHERE LE001+LE002 NOT IN (SELECT LD001+LD002 FROM ACPLD)
INSERT INTO TEST.dbo.ACPLD
SELECT * FROM  [2018ZE].dbo.ACPLD WHERE LD003<='20131231'
INSERT INTO TEST.dbo.ACPLE
SELECT * FROM [2018ZE].dbo.ACPLE WHERE LE001+LE002  IN (SELECT LD001+LD002 FROM [2018ZE].dbo.ACPLD WHERE LD003<='20131231')

select object_name(id) as tablename,reserved----查询各个表大小
 from sys.sysindexes
 where indid in (0,1)
 order by reserved desc

AJS:

-----分录底稿
--DELETE FROM AJSTA WHERE TA006<='20131231' 
--DELETE FROM AJSTB WHERE TB001+TB002 NOT IN (SELECT TA001+TA002 FROM AJSTA)
--DELETE FROM AJSLA WHERE LA001+LA002 NOT IN (SELECT TA001+TA002 FROM AJSTA)
--DELETE FROM AJSLB WHERE LB001+LB002 NOT IN (SELECT TA001+TA002 FROM AJSTA)

INSERT INTO TEST.dbo.AJSTA
SELECT * FROM  [ZE2018].dbo.AJSTA WHERE TA006<='20131231' 
INSERT INTO TEST.dbo.AJSTB
SELECT * FROM [ZE2018].dbo.AJSTB WHERE TB001+TB002  IN (SELECT TA001+TA002 FROM [ZE2018].dbo.AJSTA WHERE TA006<='20131231' )
INSERT INTO TEST.dbo.AJSLA
SELECT * FROM [ZE2018].dbo.AJSLA WHERE LA001+LA002  IN (SELECT TA001+TA002 FROM [ZE2018].dbo.AJSTA WHERE TA006<='20131231'  )
INSERT INTO TEST.dbo.AJSLB
SELECT * FROM  [ZE2018].dbo.AJSLB WHERE LB001+LB002  IN (SELECT TA001+TA002 FROM [ZE2018].dbo.AJSTA WHERE TA006<='20131231' )

----DELETE FROM AJSLA WHERE LC001+LC002 NOT IN (SELECT TA001+TA002 FROM AJSTA)


还原数据后校验

财务比对差异还是存在大量差异几乎没有变化?
考虑到应付账款余额表应该是取应付对象月档数据,建议:
(1)重计每月统计账款。结果没有效果?
抽样异常供应商查看月档:
在这里插入图片描述
在这里插入图片描述
(2)重新生成应付对象账款交易
在这里插入图片描述
重计后月档从开账到现在基本每月都有记录无论当期是否有交易。(如果当期供应商被禁用可能造成缺失),因为历史交易太多,重计时间教长。

找到问题点:所有供应商全部重计,服务器后台作业处理:
在这里插入图片描述
在这里插入图片描述

[重计后确认]

重新计算完毕后,让财务进行应付明细账款/余额表与总账再次确认差异。
差异部分减少50%,剩余大概70笔异常,80%供应商为禁止交易。
报告财务负责人:风险暂时解除。

[正式处理前注意事项]

  1. 让财务确认测试账套还原且重计算之后,总账数据是否有异动。(务必保证不变)
  2. 正式还原前数据前,务必做好数据备份,以防万一。
  3. 数据切割可能存在还原异常问题,先查询是否切割时间点前还存在单据(还真有)
  4. 数据还原后同步进行生成应付对象账款交易,我司在2020年1月启用项目号管理。还需要执行更新项目号批次作业。
  5. 重计后让财务确认总账数据是否一致。(务必在现场,防止后续扯皮)

[建议财务处理]

  1. 查明原因自行在前端处理:(千万别答应后台处理)
  2. 总体原则:抓大放小:差异在0.02元以内,暂时忽略或者直接账。
    2.1 若确定明细帐正确, 总账异常,则直接切凭证。
    2.2 若确定应付子系统异常,总账正确
    一般调子系统就只能说是,增加金额做蓝字发票,减少金额做红字发票
    发票来源其他,录入进去后审核就生效了,审核时间点就是调整的时间点,后续需要做的操作是后台修改该发票的生成分录码为Y,修改核销状态为3:已核销
    2.3 若无法查明原因,请示领导。结合供应商是否允许交易以及差异金额大小。单独处理!
  3. 每月务必及时对总账与子系统明细帐,及时发现问题及时解决问题。

总结:

  1. 数据切割原则上不做,即使要做切割采用重新开账方式进行,若必须切割,则只切割物流体系相关单据,财务数据原则上一律不动,若必须,签字画押。
  2. 数据备份:本次查找切割前备份数据,居然被人从服务器上删除。万幸当时留意下本机保存一份。
  3. 建立测试环境:数据库后台作业存在风险,任何人都可能犯错。

写在最后:
加班财务同事溜了,周五约会?

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 鲸 设计师: meimeiellie
应支付99.00元
点击重新获取
扫码支付

支付成功即可阅读