SAP启用物料分类账(ML)之后,每月都需要执行实际成本核算(CKMLCP),如果某一月没有执行,则后续月份都不能执行CKMLCP。
例如当前是8月初,正在对7月份进行结账,但是6月没有执行CKMLCP。对7月执行CKMLCP时系统会提示错误,需要先对6月执行CKMLCP。然而对6月执行CKMLCP到“单级处理确定”时,系统提示错误消息“不能在期间 006 / 2019 中执行价格确定”。此时既不能对6月执行CKMLCP,又不能对7月执行CKMLCP,形成了死循环,该如何处理呢?
这种情况下,需要对6月强制执行CKMLCP。使用如下命令,
MUST_SETTLE: 执行“单级处理确定”
MUST_MULTI: 执行“多级处理确定”
MUST_COGS: 执行“消耗重估”
MUST_WIP: 执行“在产品重新评估”
MUST_CLOSE: 执行“过账清算”
当执行“单级处理确定”时,不能点击红圈中的图标执行,需要点击“参数”进入参数设置界面,并输入命令MUST_SETTLE强制执行。
如上图,在命令框中输入MUST_SETTLE,回车即可强制执行“单级处理确定”, 运行结果如下图。
返回到CKMLCP主界面,刷新状态后,可以发现“单级确定处理”执行成功。
接下来,依次点开“参数”,执行“多级处理确定”、“消耗重估”、“在产品重新评估”和“过账清算”。方法同执行“单级处理确定”,输入对应的命令即可。
说 明: 执行ML实际成本核算(CKMLCP)时,一般要检查差异科目余额是否为0(或者是否与CKMVFM中的一致)。如果差异科目余额很大,极有可能是执行“过账清算”时没有取消测试运行的标志。这种情况下可能会出现某月CKMLCP没有过账清算,导致后续月份无法运行CKMLCP。此时需要将上一会计期间打开,然后对上月强制执行CKMLCP。这样做可能导致报表数据发生变化,例如利润表发生变化。因此,月结时一定要做好每一步的检查工作,本步骤无误后再进行下一步操作。