打开“单据-维护”时提示“行:1;字段:日期 比较值不能为空”原创
金蝶云社区-Liu
Liu
6人赞赏了该文章 153次浏览 未经作者许可,禁止转载编辑于2024年05月07日 10:55:32

当打开一张单据的维护界面(又叫序时簿或列表)时,提示

“行:1;字段:日期 比较值不能为空”


原因:过滤界面中勾选了“下次以本方案自动进入”,但是设置的过滤条件不正确,所以在打开维护界面的时候打不开,出现这个提示。

举例如下图,条件日期后面没有填写比较值,但是勾选了“下次以本方案自动进入”,可能还勾选了“选择确定时自动保存方案”这样错误的方案会被保存下来。

1715048169871.png


解决方案:

方案一:如果已经打开了该单据的序时簿界面,可以直接打开过滤条件界面,将错误修改掉。


方案二:从数据库解决。

情况1:单据是老单

        ----查找用户ID

        declare @FUserID int

        set @FUserID=(select FUserID from t_user where FName='用户名')

        

        -----查找单据ID

        declare @FID int

        set @FID=(select FID from ICClassType where FName_CHS='单据名称')

        

        -----在表中查找该方案

        select * from ICSchemeProfile where FUserID=@FUserID and FSchemeName='默认方案' and FTranType=@FID

        

        -----从表中删除该方案

        Delete from ICSchemeProfile where FUserID=@FUserID and FSchemeName='默认方案' and FTranType=@FID

        

情况2:单据是新单

        ----查找用户ID

        declare @FUserID int

        set @FUserID=(select FUserID from t_user where FName='用户名')

        

        -----查找单据ID

        declare @FID int

        set @FID=(select FID from ICClassType where FName_CHS='单据名称')

        

        -----在表中查询新单的过滤值(该表中FSection的值由),FValue=1表示勾选了“下次以本方案自动进入”;FValue=0代表没勾选“下次以本方案自动进入”。

        select * from ICClassUserProfile where FKey='AutoFilterIn' and CONVERT(nvarchar(255),FValue)<>'0' and FUserID=@FUserID and FSection like '%'+@FID+'%'

        

        -----修改过滤条件值,将FValue=1改成FValue=0,即取消勾选“下次以本方案自动进入”。

        update ICClassUserProfile set FValue='0' where FKey='AutoFilterIn' and FSection ='FilterSet'+@FID and FUserID=@FUserID



注意:建议先备份账套,在测试账套中测试没问题后再在正式账套中执行。

        


    


赞 6