财务说月结的时候遇到这么个报错,让我帮忙看一下。

百度一番之后最终我是这么处理的。

貌似报这错的原因是由于CKMLPP表里,当月的记录里STATUS有不是‘01’或者‘70’的记录。(财务部门同事说是上个月月结的时候操作有问题导致的)

我是这么处理的。

表1

update    CKMLPP
set        CKMLPP.status = '70'
from    CKMLHD    inner join
        CKMLPP
        on    CKMLHD.KALNR = CKMLPP.KALNR
where    CKMLPP.bdatj = '2022'    and    --会计年

        CKMLPP.poper = '011'    and   --会计月
        CKMLPP.status in ('40', '50')  --这里我是用错误的标识去确定的范围

在GUI里能看到的报错是物料有关的。但CKMLPP里并没有记录物料的,需要与CKMLHD关联,到CKMLHD里取物料。

方法是根据网上的支言片语摸索着做的。

STATUS是这样的:

表2
00 未定义的
01 新对象
05 期间不含未清库存
10 未清期间
20 已完成的价格更改
30 输入的数量和值
31 输入的值
40 已确定价格(单层)
50 已确定价格 (多层)
60 关闭已冲销输入
70 结帐输入已完成

其中“01”和“70”状态是不会报错的。

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐