尝试在脚本逻辑中使用RUNALLOCATION避免FOR/NEXT循环

2020-08-25 09:52发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)你好专家。 系统版本: C...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


你好专家。

系统版本:

CPMBPC8010018SAPK-80118INCPMBPCCPM业务计划和合并

SAP_BW7310013SAPKW73113SAP业务仓库

当前引擎为JAVASCRIPT。

使用以下参数调用DM软件包:MYPHASE = LA10/MYYEAR = 2019/MANAGERIAL = UK2010

在我们的BUDGET模型中,我们有12个维度,在本期中,我们只需要了解PRODUCT 1(屏幕截图)的层次结构即可。 我们的需要是(在预测过程中,预测在这里称为" LA10")对" BRANDTYPE_I"产品(_I表示"输入"以允许对假"父母"进行输入)的存储量分配。

下一级产品(CPL_I)的分配键是BUDGET版本中可用产品(帐户T1100)的重量。

我们确实有一段有效的代码,但是性能却很差。 我很确定这是由于* FOR循环造成的。

我尝试使用* DIM_NONAGGR关键字设置某些内容,但在这种情况下,WHAT和WHERE的成员数量不同。

请告知。 预先感谢。

(也许使用WHEN/ENDWHEN语法进行逐步处理,在技术帐户上计算和存储分配百分比,依此类推...?)

//从品牌类型分配到CPL

 * SELECT(%PROD_BTI%,ID,PRODUCT,LEVEL = BRANDTYPE_I)
 * SELECT(%PROD_BT%,ID,PRODUCT,LEVEL = BRANDTYPE)
 * SELECT(%PROD_CPLI%,ID,PRODUCT,LEVEL = CPL_I)
 *选择(%COUNTRYSET%,ID,COUNTRY,CALC = N)

 * XDIM_MEMBERSET AUDITTRAIL =输入
 * XDIM_MEMBERSET货币= EUROGROUP
 * XDIM_MEMBERSET MANAGERIAL =%MANAGERIAL_SET%
 * XDIM_MEMBERSET METRICS =值
 * XDIM_MEMBERSET PHASE = $ MYPHASE $
 * XDIM_MEMBERSET TIME = $ MYYEAR $ .01,$ MYYEAR $ .02,$ MYYEAR $ .03,$ MYYEAR $ .04,$ MYYEAR $ .05,$ MYYEAR $ .06,$ MYYEAR $ .07,$ MYYEAR $。  08,$ MYYEAR $ .09,$ MYYEAR $ .10,$ MYYEAR $ .11,$ MYYEAR $ .12
 * XDIM_MEMBERSET SOURCING = SOURCINGND
 * XDIM_MEMBERSET ENTITY = E999
 * XDIM_MEMBERSET FLOW =关闭
 * XDIM_MEMBERSET ACCOUNT = BAS(R3000)//R2450
 * XDIM_MEMBERSET COUNTRY =%COUNTRYSET%//GB

 * FOR%loop_BT%=%PROD_BT%//000LABA

 *分配
 *因素=使用/总计
 * DIM_NONAGGR帐户= BAS(R3000);  WHERE = <<<; 使用= T1100; 总计= T1100
 * DIM AUDITTRAIL WHAT = INPUT; 哪里=计算; 使用=已上传; 总计= <<<
 * DIM PHASE WHAT = $ MYPHASE $;  WHERE = <<<; 使用= <<<; 总计= <<<
 * DIM产品=%loop_BT%_I; 在哪里= BAS(%loop_BT%); 使用= <<<; 总计= <<<
 * DIM货币= EUROGROUP;  WHERE = <<<; 使用= LC; 总计= <<<
 *分配
 *下一个
 *承诺

 

(16.2 kB)
5条回答
nice_wp
2020-08-25 10:13

我能理解您的问题!

1K BRANDTYPE_I会生成一个巨大的lgx文件,并且运行速度非常慢....

如果可以通过某种方式选择1 brandtype_i = 1cpl_i并对其进行单独处理,则可以提高性能

一周热门 更多>