运行错误”3021”BOF或EOF

 知识库     |      2018-03-28 03:26

运行错误"3021"BOF或EOF中有一个是真,或者当前的记录已被删除,所需的操作要求一个当前的记录"。

 

1、问题描述:

   填制凭证选择科目1131的时候,需要输入客户往来,但是选择客户往来"0001"的时候出现:"运行错误"3021"BOF或EOF中有一个是真,或者当前的记录已被删除,所需的操作要求一个当前的记录"。


原因分析:

    因为客户档案中有专营业务员,但是这些专营业务员在职员档案中并不存在,取消客户档案中的专营业务员和分管部门即可。


解决方法:

    在查询分析器中执行如下语句:update customer set ccuspperson=null  where ccuscode='0001'。


然后再用select * from  customer  where ccuspperson not in(select cpersoncode from person) 查询

 

一下看是否还存在这样的记录。
 

2、 问题描述:

    登录用友通,提示:“运行时错误3021,bof or eof中有一个是真,或当前记录已被删除,所需操作要求有一个当前的记录”。


原因1:会计期间设置表ua_period中缺少记录;
原因2:账套年度设置表ua_account_sub中缺少记录;
原因3:账套参数设置表AccInformation记录不全。执行如下语句即可

       假定999演示整套正常,报错账套号001
insert into AccInformation select * from UFDATA_999_2006..AccInformation where cName not in
(select cName from UFDATA_001_007..AccInformation)


3、问题描述:总账模块转账生成的时候,提示“运行时错误3021"


   原因:转账设置中涉及的科目的末级标志不正确。

 

   解决方法:到数据库表code中查看bend字段,1为末级,0为非末级。


4、问题描述:工资变动时点计算提示“运行时错误‘3021’:BOF或EOF中有一个是“真”,或者当前的记录已被删除,所需的操作要求一个当前的记录。”


原因:是工资公式有问题.

 

解决:

    到数据库中,把工资公式删除,重新设置公式后再计算即可。

    SQL语句为: delete   from  wa_formula