点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
我们正在开始一个项目,以员工级别预测BPC NW 10.1中的社会保障税。 当尝试使用逻辑脚本进行这些计算时,我们发现当员工达到年度最高金额时,停止计算非常困难。 我们已经找到了可以计算YTD值的示例,但是,将计算停止在最大年值上似乎非常困难,甚至是不可能的。 有人在这方面有成功吗? 如果没有,发现什么解决方案可以帮助进行此计算。
以下是我们用于计算YTD值的脚本:
* SELECT(%Y%,[YEAR],TIME,[ID] = 2020.TOTAL)//%Y%-将包含2007
* SELECT(%M01%,[ID],TIME,[YEAR] =%Y%AND [MONTHNUM] = 1 AND [CALC] = N)
* SELECT(%M02%,[ID],TIME,[YEAR] =%Y%AND [MONTHNUM] = 2 AND [CALC] = N)
* SELECT(%M03%,[ID],TIME,[YEAR] =%Y%AND [MONTHNUM] = 3 AND [CALC] = N)
* SELECT(%M04%,[ID],TIME,[YEAR] =%Y%AND [MONTHNUM] = 4 AND [CALC] = N)
* SELECT(%M05%,[ID],TIME,[YEAR] =%Y%AND [MONTHNUM] = 5 AND [CALC] = N)
* SELECT(%M06%,[ID],TIME,[YEAR] =%Y%AND [MONTHNUM] = 6 AND [CALC] = N)
* SELECT(%M07%,[ID],TIME,[YEAR] =%Y%AND [MONTHNUM] = 7 AND [CALC] = N)
* SELECT(%M08%,[ID],TIME,[YEAR] =%Y%AND [MONTHNUM] = 8 AND [CALC] = N)
* SELECT(%M09%,[ID],TIME,[YEAR] =%Y%AND [MONTHNUM] = 9 AND [CALC] = N)
* SELECT(%M10%,[ID],TIME,[YEAR] =%Y%AND [MONTHNUM] = 10 AND [CALC] = N)
* SELECT(%M11%,[ID],TIME,[YEAR] =%Y%AND [MONTHNUM] = 11 AND [CALC] = N)
* SELECT(%M12%,[ID],TIME,[YEAR] =%Y%AND [MONTHNUM] = 12 AND [CALC] = N)
* XDIM_MEMBERSET HR_ACCOUNT AS%PAY_FACTORS%= BAS(BPC_TOTAL_PAY),BAS(BPC_BONUS)
* XDIM_MEMBERSET度量= PERIODIC
* XDIM_MEMBERSET EMPLOYEE = ## EMPLOYEENUMBER ###
* XDIM_MEMBERSET TIME = BAS(2020.TOTAL)
* XDIM_MEMBERSET AUDIT_TRAIL =输入
*当HR_ACCOUNT
* IS%PAY_FACTORS%
*当TIME.MONTHNUM
* IS 1
* REC(EXPRESSION =%VALUE%,TIME =%M01%,HR_ACCOUNT = SS_TAX)
* REC(EXPRESSION =%VALUE%,TIME =%M02%,HR_ACCOUNT = SS_TAX)
* REC(EXPRESSION =%VALUE%,TIME =%M03%,HR_ACCOUNT = SS_TAX)
* REC(EXPRESSION =%VALUE%,TIME =%M04%,HR_ACCOUNT = SS_TAX)
* REC(EXPRESSION =%VALUE%,TIME =%M05%,HR_ACCOUNT = SS_TAX)
* REC(EXPRESSION =%VALUE%,TIME =%M06%,HR_ACCOUNT = SS_TAX)
* REC(EXPRESSION =%VALUE%,TIME =%M07%,HR_ACCOUNT = SS_TAX)
* REC(EXPRESSION =%VALUE%,TIME =%M08%,HR_ACCOUNT = SS_TAX)
* REC(EXPRESSION =%VALUE%,TIME =%M09%,HR_ACCOUNT = SS_TAX)
* REC(EXPRESSION =%VALUE%,TIME =%M10%,HR_ACCOUNT = SS_TAX)
* REC(EXPRESSION =%VALUE%,TIME =%M11%,HR_ACCOUNT = SS_TAX)
* REC(EXPRESSION =%VALUE%,TIME =%M12%,HR_ACCOUNT = SS_TAX)
* IS 2
* REC(EXPRESSION =%VALUE%,TIME =%M02%,HR_ACCOUNT = SS_TAX)
* REC(EXPRESSION =%VALUE%,TIME =%M03%,HR_ACCOUNT = SS_TAX)
* REC(EXPRESSION =%VALUE%,TIME =%M04%,HR_ACCOUNT = SS_TAX)
* REC(EXPRESSION =%VALUE%,TIME =%M05%,HR_ACCOUNT = SS_TAX)
* REC(EXPRESSION =%VALUE%,TIME =%M06%,HR_ACCOUNT = SS_TAX)
* REC(EXPRESSION =%VALUE%,TIME =%M07%,HR_ACCOUNT = SS_TAX)
* REC(EXPRESSION =%VALUE%,TIME =%M08%,HR_ACCOUNT = SS_TAX)
* REC(EXPRESSION =%VALUE%,TIME =%M09%,HR_ACCOUNT = SS_TAX)
* REC(EXPRESSION =%VALUE%,TIME =%M10%,HR_ACCOUNT = SS_TAX)
* REC(EXPRESSION =%VALUE%,TIME =%M11%,HR_ACCOUNT = SS_TAX)
* REC(EXPRESSION =%VALUE%,TIME =%M12%,HR_ACCOUNT = SS_TAX)
* IS 3
* REC(EXPRESSION =%VALUE%,TIME =%M03%,HR_ACCOUNT = SS_TAX)
* REC(EXPRESSION =%VALUE%,TIME =%M04%,HR_ACCOUNT = SS_TAX)
* REC(EXPRESSION =%VALUE%,TIME =%M05%,HR_ACCOUNT = SS_TAX)
* REC(EXPRESSION =%VALUE%,TIME =%M06%,HR_ACCOUNT = SS_TAX)
* REC(EXPRESSION =%VALUE%,TIME =%M07%,HR_ACCOUNT = SS_TAX)
* REC(EXPRESSION =%VALUE%,TIME =%M08%,HR_ACCOUNT = SS_TAX)
* REC(EXPRESSION =%VALUE%,TIME =%M09%,HR_ACCOUNT = SS_TAX)
* REC(EXPRESSION =%VALUE%,TIME =%M10%,HR_ACCOUNT = SS_TAX)
* REC(EXPRESSION =%VALUE%,TIME =%M11%,HR_ACCOUNT = SS_TAX)
* REC(EXPRESSION =%VALUE%,TIME =%M12%,HR_ACCOUNT = SS_TAX)
* IS 4
* REC(EXPRESSION =%VALUE%,TIME =%M04%,HR_ACCOUNT = SS_TAX)
* REC(EXPRESSION =%VALUE%,TIME =%M05%,HR_ACCOUNT = SS_TAX)
* REC(EXPRESSION =%VALUE%,TIME =%M06%,HR_ACCOUNT = SS_TAX)
* REC(EXPRESSION =%VALUE%,TIME =%M07%,HR_ACCOUNT = SS_TAX)
* REC(EXPRESSION =%VALUE%,TIME =%M08%,HR_ACCOUNT = SS_TAX)
* REC(EXPRESSION =%VALUE%,TIME =%M09%,HR_ACCOUNT = SS_TAX)
* REC(EXPRESSION =%VALUE%,TIME =%M10%,HR_ACCOUNT = SS_TAX)
* REC(EXPRESSION =%VALUE%,TIME =%M11%,HR_ACCOUNT = SS_TAX)
* REC(EXPRESSION =%VALUE%,TIME =%M12%,HR_ACCOUNT = SS_TAX)
* IS 5
* REC(EXPRESSION =%VALUE%,TIME =%M05%,HR_ACCOUNT = SS_TAX)
* REC(EXPRESSION =%VALUE%,TIME =%M06%,HR_ACCOUNT = SS_TAX)
* REC(EXPRESSION =%VALUE%,TIME =%M07%,HR_ACCOUNT = SS_TAX)
* REC(EXPRESSION =%VALUE%,TIME =%M08%,HR_ACCOUNT = SS_TAX)
* REC(EXPRESSION =%VALUE%,TIME =%M09%,HR_ACCOUNT = SS_TAX)
* REC(EXPRESSION =%VALUE%,TIME =%M10%,HR_ACCOUNT = SS_TAX)
* REC(EXPRESSION =%VALUE%,TIME =%M11%,HR_ACCOUNT = SS_TAX)
* REC(EXPRESSION =%VALUE%,TIME =%M12%,HR_ACCOUNT = SS_TAX)
* IS 6
* REC(EXPRESSION =%VALUE%,TIME =%M06%,HR_ACCOUNT = SS_TAX)
* REC(EXPRESSION =%VALUE%,TIME =%M07%,HR_ACCOUNT = SS_TAX)
* REC(EXPRESSION =%VALUE%,TIME =%M08%,HR_ACCOUNT = SS_TAX)
* REC(EXPRESSION =%VALUE%,TIME =%M09%,HR_ACCOUNT = SS_TAX)
* REC(EXPRESSION =%VALUE%,TIME =%M10%,HR_ACCOUNT = SS_TAX)
* REC(EXPRESSION =%VALUE%,TIME =%M11%,HR_ACCOUNT = SS_TAX)
* REC(EXPRESSION =%VALUE%,TIME =%M12%,HR_ACCOUNT = SS_TAX)
* IS 7
* REC(EXPRESSION =%VALUE%,TIME =%M07%,HR_ACCOUNT = SS_TAX)
* REC(EXPRESSION =%VALUE%,TIME =%M08%,HR_ACCOUNT = SS_TAX)
* REC(EXPRESSION =%VALUE%,TIME =%M09%,HR_ACCOUNT = SS_TAX)
* REC(EXPRESSION =%VALUE%,TIME =%M10%,HR_ACCOUNT = SS_TAX)
* REC(EXPRESSION =%VALUE%,TIME =%M11%,HR_ACCOUNT = SS_TAX)
* REC(EXPRESSION =%VALUE%,TIME =%M12%,HR_ACCOUNT = SS_TAX)
* IS 8
* REC(EXPRESSION =%VALUE%,TIME =%M08%,HR_ACCOUNT = SS_TAX)
* REC(EXPRESSION =%VALUE%,TIME =%M09%,HR_ACCOUNT = SS_TAX)
* REC(EXPRESSION =%VALUE%,TIME =%M10%,HR_ACCOUNT = SS_TAX)
* REC(EXPRESSION =%VALUE%,TIME =%M11%,HR_ACCOUNT = SS_TAX)
* REC(EXPRESSION =%VALUE%,TIME =%M12%,HR_ACCOUNT = SS_TAX)
* IS 9
* REC(EXPRESSION =%VALUE%,TIME =%M09%,HR_ACCOUNT = SS_TAX)
* REC(EXPRESSION =%VALUE%,TIME =%M10%,HR_ACCOUNT = SS_TAX)
* REC(EXPRESSION =%VALUE%,TIME =%M11%,HR_ACCOUNT = SS_TAX)
* REC(EXPRESSION =%VALUE%,TIME =%M12%,HR_ACCOUNT = SS_TAX)
* IS 10
* REC(EXPRESSION =%VALUE%,TIME =%M10%,HR_ACCOUNT = SS_TAX)
* REC(EXPRESSION =%VALUE%,TIME =%M11%,HR_ACCOUNT = SS_TAX)
* REC(EXPRESSION =%VALUE%,TIME =%M12%,HR_ACCOUNT = SS_TAX)
* IS 11
* REC(EXPRESSION =%VALUE%,TIME =%M11%,HR_ACCOUNT = SS_TAX)
* REC(EXPRESSION =%VALUE%,TIME =%M12%,HR_ACCOUNT = SS_TAX)
* IS 12
* REC(EXPRESSION =%VALUE%,TIME =%M12%,HR_ACCOUNT = SS_TAX)
* ENDWHEN
* ENDWHEN
对于这种情况,我建议使用CUSTOM逻辑BADi而不是脚本逻辑。 很简单,没有限制。
对不起,但是您必须使用Excel屏幕截图来解释所需的计算逻辑,而不是不能正常运行的脚本!
请阅读我的旧博客:
https://blogs.sap.com/2014/01/31/how-to-ask-questions-about-script-logic-issues /
感谢您的快速访问 多年来的回应以及您的所有帮助!
一周热门 更多>