如何确定对BP执行更改操作的位置?

2020-09-30 05:57发布

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

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


专家们,

在我们的环境中,我们可以在CRM GUI,CRM WEB UI,CRM PORTAL中对BP进行更改。 如何识别ABAP编码中的变化?

谢谢。

杰里。

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

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


专家们,

在我们的环境中,我们可以在CRM GUI,CRM WEB UI,CRM PORTAL中对BP进行更改。 如何识别ABAP编码中的变化?

谢谢。

杰里。

付费偷看设置
发送
2条回答
我是小鹏鹏啊
1楼 · 2020-09-30 06:31.采纳回答

我在SAP FM CRM_PROCTYP_FROM_OBJTYP_SEL_CB中找到了输入通道确定逻辑,

如下所示的代码:

数据lr_profile类型参考if_crm_ui_profile。

数据lv_profile_type TYPE crmt_ui_profile_type。

lr_profile?= cl_crm_ui_profile => get_instance()。

lv_profile_type = lr_profile-> get_profile_type()。

案例lv_profile_type。

" C"时。 " CRM Web UI

lv_channel ='GUI'。

" B"时。 " IC Web客户端

lv_channel ='ICW'。

他人时。 "按需定义...

*首先,检查通道是GUI还是IAC。

通话功能'CCM_INFO_GETKEY'

导出object_name ='PROFILES'

键名='CICPROF'

导入值= lv_prof_value

例外

getinfo_failed = 1

其他=2。

如果lv_prof_value是INITIAL。

lv_channel ='GUI'。

ELSE。

lv_channel ='IAC'。

ENDIF。 结束。

我可以在出站BDOC上下文中使用它来确定用户的输入通道吗?

谢谢。

Jerry。

亦是此间程序员
2楼-- · 2020-09-30 06:37

嗨,Jerry,

我认为最好将此代码放在应用程序层中,然后根据结果设置一个标志。 您可以在Bdoc中将标志与其他值一起传递,以影响Bdocs中的程序流程。

我建议使用上述方法的唯一原因是,确保COMMIT WORK不应清除任何保存通道值的SAP缓冲区。 我认为旧的价值观应该存在。 但是仍然可以通过将代码放入Bdoc并测试方案来再次检查逻辑。

希望这会有所帮助。

谢谢

Samantak。

一周热门 更多>