在DEFAULT_FORMULAS软件包中选择(从)和选择(至)变量是否可能?

2020-09-18 09:41发布

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

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


大家好,

我正在尝试设置一个DEFAULT_FORMULAS数据管理器软件包,其中我想为两个维中的每个维定义两个变量。 一个变量应该选择一个源成员,另一个变量是通过LOGICFILE执行的复制过程的目标成员,该复制过程是在DMP的高级脚本中引用的。(我不使用/CPMB/COPY-DMP,因为进一步的逻辑应该 申请)

问题1:是否可以在DEFAULT_FORMULAS DMP上下文中为同一维定义"选择自"和"选择至"变量?

问题2:是否也可以在其他维度上这样做? (在同一DMP中)

问题3:能否请您分享一些语法? 那将有很大帮助!

由衷的问候

克劳斯

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

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


大家好,

我正在尝试设置一个DEFAULT_FORMULAS数据管理器软件包,其中我想为两个维中的每个维定义两个变量。 一个变量应该选择一个源成员,另一个变量是通过LOGICFILE执行的复制过程的目标成员,该复制过程是在DMP的高级脚本中引用的。(我不使用/CPMB/COPY-DMP,因为进一步的逻辑应该 申请)

问题1:是否可以在DEFAULT_FORMULAS DMP上下文中为同一维定义"选择自"和"选择至"变量?

问题2:是否也可以在其他维度上这样做? (在同一DMP中)

问题3:能否请您分享一些语法? 那将有很大帮助!

由衷的问候

克劳斯

付费偷看设置
发送
5条回答
空代码
1楼 · 2020-09-18 09:47.采纳回答

标准方法:

使用SELECTINPUT输入某些特定尺寸的变量:

PROMPT(SELECTINPUT,%SOME_VAR%,,"选择维成员:","%XXXXX_DIM%")

然后将此变量传递给$ VAR $以在脚本中使用:

INFO(%EQU%,=)
INFO(%TAB%,;)
任务(/CPMB/DEFAULT_FORMULAS_LOGIC,TAB,%TAB%)
TASK(/CPMB/DEFAULT_FORMULAS_LOGIC,EQU, %EQU%)
任务(/CPMB/DEFAULT_FORMULAS_LOGIC,MEMBERSELECTION,VAR%EQU %% SOME_VAR%)

然后在脚本中可以使用$ VAR $变量,该变量包含用户在SELECTINPUT提示符下选择的成员

P.S。 请阅读帮助:

https://help.sap.com/查看器/46f83019d80d4a0787baa7e49f3f95af/2.6.1.0/en-US/f9c652116faf1014878bae8cb0e91070.html

clasier
2楼-- · 2020-09-18 09:43

请接受正确答案。

代楠1984
3楼-- · 2020-09-18 09:54

问题1:是

问题2:是

问题3:请显示您的脚本文件以了解您要实现的目标!

您可以使用MEMBERSELECTION将选择传递给某些$ VAR $

4楼-- · 2020-09-18 09:59

嗨,瓦迪姆,

再次感谢您的关注...

请在下面找到我的代码...

* SELECT(%YEAR%,[YEAR],VWR_KATEGORIE,[ID] = IST)
* SELECT(%AKT_MONAT%,[AKT_MONAT],VWR_KATEGORIE,[ID] =%VWR_KATEGORIE_TO_SET%)

* XDIM_MEMBERSET VWR_KONTO = <所有>
* XDIM_MEMBERSET VWR_FUNKTIONSBER =
* XDIM_MEMBERSET VWR_KATEGORIE =%VWR_KATEGORIE_FROM_SET%
* XDIM_MEMBERSET_TIME = BAS(%Y) VWR_DATENQUELLE = <全部>
* XDIM_MEMBERSET VWR_PLANUNGSZYKL =%VWR_PLANUNGSZYKL_FROM_SET%
* XDIM_MEMBERSET VWR_BEWEGUNGSART =
* XDIM_MEMBERSET VWR_WAEHRUNG = EUR

*时间
* IS <>%YEAR%。%AKT_MONAT%
* REC(因子= 1,VWR_KATEGORIE =%VWR_KATEGORIE_TO_SET%,VWR_PLANUNGSZYKL =%VWR_PLANUNGSZYKL_TO_SET%)
* ENDWHEN

* COMMIT

简而言之,代码应复制所有 从源预测版本(%VWR_KATEGORIE_FROM_SET%)转换为目标预测版本(%VWR_KATEGORIE_TO_SET)的实际月份(%YEAR%。%AKT_MONAT%)。 另外,还应根据用户的选择(%VWR_PLANUNGSZYKL_FROM_SET%和%VWR_PLANUNGSZYKL_TO_SET%)填充"计划周期"(例如" PZ.2018")。

我面临的问题是我不知道如何在DEFAULT_FORMULAS数据管理器包的高级脚本中声明变量...

亲切问候

克劳斯

hongfeng1314
5楼-- · 2020-09-18 10:10

非常感谢瓦迪姆,

但是,无论出于何种原因(或者我最好说出我不知道的"错误"),您的方法都不会对我有用。

我的DEFAULT_FORMULAS数据管理器软件包的高级脚本如下:

PROMPT(SELECTINPUT,%VWR_KATEGORIE_FROM%," BittewählenSie die Quell Kategorie"," VWR_KATEGORIE")

PROMPT(SELECTINPUT,%VWR_KATEGORIE_TO%," BittewählenSie die Ziel Kategorie"," VWR_KATEGORIE")

PROMPT(SELECTINPUT,%VWR_PLANUNGSZYKLUS_FROM%," BittewählenSie den Quell Planungszyklus"," VWR_PLANUNGSZYKL")

PROMPT(SELECTINPUT,%VWR_PLANUNGSZYKL_TO%," BittewählenSie den Ziel Planungszyklus"," VWR_PLANUNGSZYKL")

INFO(%EQU%,=)

INFO(%TAB%,;)

任务(/CPMB/DEFAULT_FORMULAS_LOGIC,TAB,%TAB%)

任务(/CPMB/DEFAULT_FORMULAS_LOGIC,EQU,%EQU%)

任务(/CPMB/DEFAULT_FORMULAS_LOGIC,成员选择,$ VWR_KATEGORIE_FROM $%EQU %% VWR_KATEGORIE_FROM%)

任务(/CPMB/DEFAULT_FORMULAS_LOGIC,成员选择,$ VWR_KATEGORIE_TO $%EQU %% VWR_KATEGORIE_TO%)

任务(/CPMB/DEFAULT_FORMULAS_LOGIC,成员选择,$ VWR_PLANUNGSZYKL_FROM $%EQU %% VWR_PLANUNGSZYKL_FROM%)

任务(/CPMB/DEFAULT_FORMULAS_LOGIC,成员选择,$ VWR_PLANUNGSZYKL_TO $%EQU %% VWR_PLANUNGSZYKL_TO%)

任务(/CPMB/DEFAULT_FORMULAS_LOGIC,LOGICFILENAME,BASIS_FINANZPLAN_VS.LGF)

根据高级脚本,"逻辑文件"现在显示如下:

* SELECT(%YEAR%,[YEAR],VWR_KATEGORIE,[ID] = IST)
* SELECT(%AKT_MONAT%,[AKT_MONAT],VWR_KATEGORIE,[ID] = $ VWR_KATEGORIE_TO $)

* XDIM_MEMBERSET VWR_KONTO = <所有>
* XDIM_MEMBERSET VWR_FUNKTIONSBER =
* XDIM_MEMBERSET VWR_KATEGORIE = $ VWR_KATEGORIE_FROM $
* XDIM_MEMBERSET TIME = BAS(%YEAR)。 VWR_DATENQUELLE = <全部>
* XDIM_MEMBERSET VWR_PLANUNGSZYKL = $ VWR_PLANUNGSZYKL_FROM $
* XDIM_MEMBERSET VWR_BEWEGUNGSART =
* XDIM_MEMBERSET VWR_WAEHRUNG = EUR

*时间
* IS>%YEAR%。%AKT_MONAT%
* REC(因子= 1,VWR_KATEGORIE = $ VWR_KATEGORIE_TO $,VWR_PLANUNGSZYKL = $ VWR_PLANUNGSZYKL_TO $)
* ENDWHEN

* COMMIT

在"数据管理器软件包"的"高级脚本"的"任务"部分中,我用$符号引用了变量。 带有或不带有$符号的这两种方式都不起作用...

在两种情况下我都遇到的错误如下:

CPMB/MODIFY在0秒内完成

/CPMB/DEFAULT_FORMULAS_LOGIC在0秒内完成

/CPMB/CLEAR在0秒内完成

[选择]

--------------------------------------------------- ---------------

VWR_KATEGORIE_FROM =/ENVIRONMENT_VWR/VWR_Finanz/PRIVATEPUBLICATIONS/DREESBACH/TempFiles/FROM.TMP @@@ SAVE @@@@@@@ EXPAND @@@@@ | DIMENSION:VWR_KATEGORIE | VS.03_09

VWR_KATEGORIE_TO =/ENVIRONMENT_VWR/VWR_Finanz/PRIVATEPUBLICATIONS/DREESBACH/TempFiles/FROM.TMP @@@ SAVE @@@@@@@@ EXPAND @@@ | DIMENSION:VWR_KATEGORIE | VS.04_08

VWR_PLANUNGSZYKLUS_FROM =/ENVIRONMENT_VWR/VWR_Finanz/PRIVATEPUBLICATIONS/DREESBACH/TempFiles/FROM.TMP @@@ SAVE @@@@@@@@ EXPAND @@@ | DIMENSION:VWR_PLANUNGSZYKL | PZ.2018

VWR_PLANUNGSZYKL_TO =/ENVIRONMENT_VWR/VWR_Finanz/PRIVATEPUBLICATIONS/DREESBACH/TempFiles/FROM.TMP @@@ SAVE @@@@@@@ EXPAND @@@@@ | DIMENSION:VWR_PLANUNGSZYKL | PZ.2018

[消息]

--------------------------------------------------- ---------------

在系统中发现错误

型号:VWR_Finanz。 套件状态:ERROR

您会知道为什么它不起作用吗?

欢呼

克劳斯

一周热门 更多>