点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
尊敬的专家,
我们面临淘汰中具有时间依赖性的层次结构的问题。 我将KEYDATE包含在DM软件包中,以使用户有机会选择用于IC消除的层次版本。 我还调整了要考虑的KEYDATE的相关过程链。 此步骤正常工作,并且将传递KEYDATE。 DM包的结果行:
SELECTION_KEYDATE = 20190101
尽管如此,执行消除程序US_ELIM的被调用脚本逻辑根本不考虑KEYDATE。 它始终使用当前系统日期作为KEYDATE。 我找到了一个SAP注释(2254535),其中指出KEYDATE必须包含在要考虑的脚本逻辑中。 它还说脚本逻辑期望KEYDATE的格式为:
KEYDATE = YYYYMMDD
所以我在脚本逻辑中输入了以下代码:
* RUN_PROGRAM US_ELIM CATEGORY =%CATEGORY_SET% 货币= EUR,CHF TID_RA =%TIME_SET% OTHER = [PRCTR =%PRCTR_SET%] 关键日期= 20190101 * ENDRUN_PROGRAM
以上程序按预期运行,并且已正确消除。
问题是我无法在脚本逻辑中使KEYDATE动态化:
KEYDATE =%KEYDATE%
执行此操作后,系统会立即忽略KEYDATE设置,而是使用当前的KEYDATE。 对于SAP注释以及KEYDATE的预期格式,这是可以理解的。 但是我需要在脚本逻辑中使KEYDATE动态化,以便使用户能够在DM包中进行设置。
你们中有人遇到过这样的问题,并且知道如何解决吗?
先谢谢您
Karsten
如果此脚本运行正常:
您可以在高级DM脚本中使用REPLACEPARAM传递KeyDate:
然后在脚本中可以使用$ KD $变量:
无法测试(我在当前系统中未启用TDH),但可以正常工作。
顺便说一句,它将仅将KeyDate传递给US_ELIM,如果此脚本中有其他逻辑,则还需要TASK KEYDATE。
嗨,瓦迪姆,
您的方法很好-非常有用。
有趣的是,我已经尝试了在DM脚本中使用标准系统变量" Selection_Keydate"实现这种方式。 所以我的脚本看起来像:
然后,我在脚本逻辑中提到:
这种方法根本行不通。 但是,如上所述,使用自定义变量%KD%的方法效果很好。 奇怪的行为。
现在,我只剩下一个问题了。 使用您的DM脚本,我会看到两个提示输入KEYDATE的提示。 请查看下面的屏幕。
第一次选择蒙版:
第二选择框:
有没有一种方法可以将选择减少到一个KEYDATE输入? 另一个奇怪的行为是,您不能在选择窗口中将KEYDATE保留为标准。 完成此操作后,由于尚未定义KD,因此DM程序包将失败。
先谢谢您
Karsten
一周热门 更多>