1/6用友股份-LE支持服务业务本部产品方案--《对账单出现异常的解决方案》建立日期:2013-07-01修改日期:xxxx-xx-xx文档属性:客户文控编号:LE-DY-CP-2013-04562/6文档控制创建记录适用范围审阅人日期审阅签字所属部门发布范围内部员工伙伴客户发布人姓名所属部门发布时间日期作者所属部门邮件地址版本2013-07-01王宏产品支持部V1.0版本领域模块备注3/6目录对账单出现异常的解决方案................................................................................4一、问题描述.......................................................................................................4二、问题分析及解决方案....................................................................................44/6对账单出现异常的解决方案一、问题描述已前月份已对过账,但是过了几个月后,发现以前月份的余额调节表不平了;只能把这几个月的对账记录全撤销,重新来过.这是一个令人头痛的问题。现在,开发部开发人员给出了一种不需反对账,直接把以前月份异常记录转换为未对账状态的功能,详细如下。二、问题分析及解决方案--问题产生的原因:导入或者下载的对账单中请注意对账单日期范围,防止后下载对账单的将以前下载的对账单覆盖为“异常对账单”,如:--假设2011-05-15早上先导入或下载了对账单A2011-05-15300.00和对账单B2011-05-15350.00但是加入后来又下载或者了一次同一时间段内的对账单C2011-05-15100.00和对账单D2011-05-15200.00(注意,这里没有之前下载的A和B),那么系统会认为A和B是之前错误下载的对账单,本次下载后A和B将变为“异常对账单”导致;5/6因此导入或下载对账单时,对账单文件中必须包含文件中最小对账单日期和最大对账单日期之间的所有对账单,包括系统里已存在的同时间段内的对账单。--以下sql脚本请务必先在测试库上验证通过后在到正式库上按顺序实行使用!--1、确认是以下对账账户存在问题?SELECTC.PK_CONTRASTACCOUNT,C.CONTRASTACCOUNTNAMEFROMGL_CONTRASTACCOUNTCWHEREC.CONTRASTACCOUNTNAME='杭州银行'/*对账账户名称*/ANDC.PK_CORPIN(SELECTPK_CORPFROMBD_CORPCOWHERECO.UNITCODE='1010'/*公司编码*/UNIONALLSELECTPK_GLORGBOOKFROMBD_GLORGBOOKGBWHEREGB.GLORGBOOKCODE='1010-0002'/*主体账簿编码*/);--2、备份银行对账单异常数据至备份表GL_BANKRECEIPT_110721BAKCREATETABLEGL_BANKRECEIPT_110721BAKASSELECT*FROMGL_BANKRECEIPTBWHEREB.STYLEFLAG='B'ANDB.PK_CONTRASTACCOUNT='1010A810000000001BVX'/*上面语句1查出对账账户pk*/ANDEXISTS(SELECT1FROMEBANK_DZDEWHEREE.PK_EBANK_DZD=B.PK_BANKRECEIPTANDNVL(E.STYLEFLAG,'A')='B');--3、修正异常银行对账单数据UPDATEGL_BANKRECEIPTB6/6SETB.STYLEFLAG='A'WHEREB.STYLEFLAG='B'ANDB.PK_CONTRASTACCOUNT='1010A810000000001BVX'/*上面语句1查出对账账户pk*/ANDEXISTS(SELECT1FROMEBANK_DZDEWHEREE.PK_EBANK_DZD=B.PK_BANKRECEIPTANDNVL(E.STYLEFLAG,'A')='B');COMMIT;--提交--4、备份网银对账单异常数据至EBANK_DZD_110721BAKCREATETABLEEBANK_DZD_110721BAKASSELECT*FROMEBANK_DZDEWHEREE.STYLEFLAG='B'ANDEXISTS(SELECTPK_BANKRECEIPTFROMGL_BANKRECEIPTBWHEREB.PK_CONTRASTACCOUNT='1010A810000000001BVX'/*上面语句1查出对账账户pk*/);--5、修正异常银行对账单数据UPDATEEBANK_DZDESETE.STYLEFLAG='A'WHEREE.STYLEFLAG='B'ANDEXISTS(SELECTPK_BANKRECEIPTFROMGL_BANKRECEIPTBWHEREB.PK_CONTRASTACCOUNT='1010A810000000001BVX'/*上面语句1查出对账账户pk*/);COMMIT;--提交