首页 文章

区分不同SAP客户端之间的ABAP(Mandanten)

提问于
浏览
3

我们目前有一个SAP系统,正在使用两个不同的客户端002和004 . 我的任务是在ABAP中编写一个程序来创建一个关于用户分配的报告 . 该报告将主要针对两个客户进行相同的操作 . 但我必须在不同的表上选择,并在两个客户端上选择不同数量的表 . 根据客户端,调用报告的用户将登录 .
问题:有没有办法在不同客户端之间区分ABAP-Code?喜欢:

IF client = 002.
*dothis.
ELSE.
*dothatdifferentthing.
ENDIF.

提前致谢 .

2 回答

  • 9

    当前客户端位于 sy-mandt 字段中 .

    例如:

    IF sy-mandt = '002'.
    *dothis.
    ELSE.
    *dothatdifferentthing.
    ENDIF.
    
  • 5

    另一个建议 - 尝试以面向对象的方式执行此操作,将所有公共代码填充到抽象超类中,并创建两个仅携带客户端相关代码的子类 . 然后,基于SY-MANDT,实例化任一子类 . 这可能有助于减少重复代码......

相关问题