将参数传递给BADI-BPC

2020-09-18 05:04发布

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

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


你好:

我需要通过DM程序包将参数传递给BADI:

维度参数:可以是一个,多个,成员

文本参数。

我在DM程序包中的代码是:

PROMPT(SELECTINPUT ,,,"%CATEGORY_DIM%")
PROMPT(TEXT,%Meses%," Mes",)
PROMPT(TEXT,%VERSION1%," Version",)< br> INFO(%EQU%,=)
INFO(%TAB%,;)
任务(/CPMB/DEFAULT_FORMULAS_LOGIC,TAB,%TAB%)
TASK(/CPMB/DEFAULT_FORMULAS_LOGIC,EQU,% EQU%
任务(/CPMB/DEFAULT_FORMULAS_LOGIC,SUSER,%USER%)
任务(/CPMB/DEFAULT_FORMULAS_LOGIC,SAPPSET,%APPSET%)
任务(/CPMB/DEFAULT_FORMULAS_LOGIC,SAPP,%APP%)
任务(/CPMB/DEFAULT_FORMULAS_LOGIC,SELECTION,%SELECTION%)
任务(/CPMB/DEFAULT_FORMULAS_LOGIC,REPLACEPARAM,VERSION1%EQU %% VERSION1%)
任务(/CPMB/DEFAULT_FORMULAS_LOGIC,REPLACEPARAM EQU %% Meses%)
任务(/CPMB/DEFAULT_FORMULAS_LOGIC、LOGICFILENAME、DIST_BADI.LGF)

我的脚本逻辑是:

* START_BADI PLANSF
查询=开
写=开
VERS = $ VERSION1 $
MES = $ Meses $
SGMT =%SEGMENTO_SET%//类别尺寸名称。
* END_BADI

请,您能帮我找到错误吗?

我在哪里可以看到BADI日志? 在BPC中,我只有这个:

在类别维度中发送1个成员

(SEGMENTO_SET):

发送5个成员和类别维度(SEGMENTO_SET)

预先感谢

Luciana

13.jpg (45.2 kB)

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

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


你好:

我需要通过DM程序包将参数传递给BADI:

维度参数:可以是一个,多个,成员

文本参数。

我在DM程序包中的代码是:

PROMPT(SELECTINPUT ,,,"%CATEGORY_DIM%")
PROMPT(TEXT,%Meses%," Mes",)
PROMPT(TEXT,%VERSION1%," Version",)< br> INFO(%EQU%,=)
INFO(%TAB%,;)
任务(/CPMB/DEFAULT_FORMULAS_LOGIC,TAB,%TAB%)
TASK(/CPMB/DEFAULT_FORMULAS_LOGIC,EQU,% EQU%
任务(/CPMB/DEFAULT_FORMULAS_LOGIC,SUSER,%USER%)
任务(/CPMB/DEFAULT_FORMULAS_LOGIC,SAPPSET,%APPSET%)
任务(/CPMB/DEFAULT_FORMULAS_LOGIC,SAPP,%APP%)
任务(/CPMB/DEFAULT_FORMULAS_LOGIC,SELECTION,%SELECTION%)
任务(/CPMB/DEFAULT_FORMULAS_LOGIC,REPLACEPARAM,VERSION1%EQU %% VERSION1%)
任务(/CPMB/DEFAULT_FORMULAS_LOGIC,REPLACEPARAM EQU %% Meses%)
任务(/CPMB/DEFAULT_FORMULAS_LOGIC、LOGICFILENAME、DIST_BADI.LGF)

我的脚本逻辑是:

* START_BADI PLANSF
查询=开
写=开
VERS = $ VERSION1 $
MES = $ Meses $
SGMT =%SEGMENTO_SET%//类别尺寸名称。
* END_BADI

请,您能帮我找到错误吗?

我在哪里可以看到BADI日志? 在BPC中,我只有这个:

在类别维度中发送1个成员

(SEGMENTO_SET):

发送5个成员和类别维度(SEGMENTO_SET)

预先感谢

Luciana

13.jpg (45.2 kB)
付费偷看设置
发送
5条回答
Doze时光
1楼 · 2020-09-18 05:36.采纳回答

自定义逻辑badi必须在ABAP调试器中进行调试:)在您的第一个屏幕截图中,我看到了ABAP代码生成的错误。

第二则消息很奇怪,我发现该行没有问题:

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

通常最好合并以下几行(阅读帮助!):

任务(/CPMB/DEFAULT_FORMULAS_LOGIC,REPLACEPARAM,VERSION1%EQU %% VERSION1%)
 任务(/CPMB/DEFAULT_FORMULAS_LOGIC,REPLACEPARAM,Meses%EQU %% Meses%)

进入:

任务(/CPMB/DEFAULT_FORMULAS_LOGIC,REPLACEPARAM,VERSION1%EQU %% VERSION1 %% TAB%Meses%EQU %% Meses%)
路亽曱_Ryan
2楼-- · 2020-09-18 05:26

我已接受。

请帮助我。

小灯塔
3楼-- · 2020-09-18 05:32

对不起,但是您有没有被接受的答案的上一个问题!

小灯塔
4楼-- · 2020-09-18 05:46

瓦迪姆,我想我应该说得更清楚些。

这两个图像是似乎无关的错误,因此我向她建议使用UJKT来区分从PROMPT接收参数和从SCRIPT调用BADI的问题。

要调试BADI,有几种方法,其中一种可以通过在BADI中放置一个断点来使用UJKT。

还是谢谢你。

宇峰Kouji
5楼-- · 2020-09-18 05:50

你好露西亚,

您可以尝试通过UJKT交易呼叫BADI。

我假设Script Logic和Badi之间的参数顺序是相同的。

一周热门 更多>