建立年度帐报错问题及处理方式

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

错误示例一、

分析及跟踪:年度结转时,出现如上错误,一般此类提示,我们可以大致判断出是数据库在传输表Rpt_fltDEF到下年度帐套时,出现了一列在新年度的帐套中未定义该列导致。进而我们可以初步判断和回想,可能是因为我们上年依据客户的个性化要求,修改了数据库中的某些表如Rpt_fltDEF中增加列iPage,从而导致了去年的数据库结构,与根据模板库新建立的新年度数据表结构不符,所以在传递某些参数如Rpt_fltDEF的iPage列时,无法传递里面的内容到新年度帐套时,才出现这样的错误!所以接下来我们只要把模板库里的结构也修改为和我在上年度该帐套中所做的同样的操作的话,就能保证我们根据系统模板库新建立的新年度数据库的结构也和我们上年度数据库结构一致,进而可以把上年度所做的个性化的修改全部继承过来。

接下来我们就一步一步的来了解这个错误的原因和找到这个错误的解决方法:

1、根据我们上面的判断,认为是上年度数据库结构与模板库结构不一致,我们可以通过SQL SERVER2000的企业管理器来了解和修改数据库的表Rpt_fltDEF的结构,看他与其他正常建立年度帐和结转的帐套的区别到底是哪里。

我们可以打开“开始”→“程序”→“Microsoft SQL Server”→“企业管理器”,然后点开它左边树状的结构图,直到找到我们的目标数据库,本例为UFDATA_011_2005,然后点它里面的表,在右边的框体中,就能看到这个帐套所有数据库的表,找到我们的目标表Rpt_fltDEF,然后在它上面点击鼠标右键,选择“设计表”,如下图:

2、弹出来的窗体如下,我们可以看到这个表最后有两列,分别是iPage和iRefSelect,

我这里把他们点黑了,以便大家参考,如下图:

3、我们通过窗体中的窗口,转到其他的正常帐套(010)的表Rpt_fltDEF的同样的表结构设计界面,可以看到,是下图的结果,并没有那两列:

4、此时我们再返回我们的011帐套的表Rpt_fltDEF的设计界面删除多余的两列iPage和iRefselect,并保存,效果如下图(如果确认这两列确实影响不大的话,而且我们以后的年度也不会用到,那么到次改问题就可以结束了,如果并非如此,不要做此操作,请直接做第五步操作):

5、通过SQL SERVER2000的企业管理器来修改建帐的模板库,首先我们在企业管理器窗体的左侧“数据库”项目上点鼠标右键,然后选择“所有任务” “还原数据库”,操作界面如下:

6、选择我们的模板数据库的备份文件..\tong2005\Admin\ufmodel.bak,操作如下图:

7、确定好之后,修改数据库名字为Ufmodel,如下图:(也可以为其他名字,只要保证不覆盖当前机器有用的数据库即可)

8、打开选项页签,做一定修改如下图:(你也可以修改为其他路径,只要保证不覆盖原来的有用文件即可)

9、确认无误后,点“确定”,SQL SERVER将开始模板数据库的还原,如下图:

10、同样的方法,找到UFMODEL的表Rpt_fltDEF,对其进行设计,如下图:

11、我们在打开的Rpt_fltDEF表的设计界面中,增加列iPage和iRefSelect,并保存直,如下图:

12、再把修改好的UFOMDEL数据库进行备份,操作如下图:

13、请选择好备份的路径和文件名字,如下图:

14、路径和文件名字选择好之后,点确认,即可看到SQL SERVER的备份画面,如下图:

15、由于之前我已经把原来的ufmodel.bak重新命名,所以只要确保我们新备份的这个模板库在..\tong2005\Admin文件夹下即可,如下图:

16、重新登陆系统管理,建立年度帐成功,如下图:

小结:此问题不仅仅是解决这一个修改表Rpt_fltDEF导致的年度结转问题,对于其他在上年度为了满足客户个性化需求,而修改过数据库结构的,都可以通过修改模板数据库的方法,来实现修改的个性化的部分的顺利年度结转,如在原来的数据库中增加触发器等,都需要修改模板数据库,把这个触发器增加到模板数据库中,这样才能避免以后每个年度帐都去修改客户的数据库结构,而且也能减少一些错误的发生。

相关文档
最新文档