weixin_43629348 2025-06-19 08:42 采纳率: 25%
浏览 16

sap里如何以“销售部门”和“销售组”为基准,划分权限。

请教SAP一个权限设置问题

之前我们公司销售部下,已经设置了不同的销售员,仅能看到指定的客户。当时是以“销售机构/分销渠道/产品组”来划分的。但是这么划分有点太笼统。我现在想以“销售部门”和“销售组”为基准来设置权限,例如,在销售部里,A员工仅允许看到“销售部门1001”或者“销售组109”。B员工仅允许看到“销售部门2004”或者“销售组106”

这个能实现吗?

img

img

  • 写回答

5条回答 默认 最新

  • 阿里嘎多学长 2025-06-19 08:42
    关注

    阿里嘎多学长整理AIGC生成,因移动端显示问题导致当前答案未能完全显示,请使用PC端查看更加详细的解答过程

    SAP权限设置:以“销售部门”和“销售组”为基准,划分权限

    SAP提供了多种方式来实现权限设置,以下是一种常见的方法:

    1. 使用Role概念

    在SAP中,Role是权限的基本单元,可以将Role分配给用户。我们可以创建一个Role,用于销售部门和销售组的权限设置。

    1. 使用Authorization Object

    Authorization Object是SAP中权限的基本单元,可以用来控制用户对系统资源的访问。我们可以创建一个Authorization Object,用于销售部门和销售组的权限设置。

    1. 使用Condition Technique

    Condition Technique是SAP中的一种技术,可以用来控制用户对系统资源的访问。我们可以使用Condition Technique来实现销售部门和销售组的权限设置。

    以下是一个简单的示例:

    假设我们有两个销售部门:A和B,每个部门都有多个销售组。我们想要实现以下权限设置:

    • 销售员只能看到自己的销售组的客户
    • 销售员只能看到自己的销售部门的客户

    我们可以创建一个Role,名为SALES_DEPT_ROLE,并将以下Authorization Object添加到该Role中:

    • BSEG-BUKRS:控制用户对客户的访问
    • BSEG-KUNNR:控制用户对客户的访问

    然后,我们可以使用Condition Technique来实现销售部门和销售组的权限设置。例如,我们可以创建一个Condition,名为SALES_DEPT_COND,用于控制用户对客户的访问。该Condition可以根据销售部门和销售组来控制用户的访问权限。

    在SAP中,我们可以使用以下代码来实现Condition Technique:

    REPORT zsales_dept_cond.
    
    DATA: ls_bseg TYPE bseg,
          lv_dept TYPE bseg-bukrs,
          lv_group TYPE bseg-kunnr.
    
    SELECT SINGLE bukrs kunnr
      INTO (lv_dept, lv_group)
      FROM bseg
      WHERE bukrs = sy-uname.
    
    IF lv_dept IS NOT INITIAL.
      DATA(lv_cond) = 'BSEG-BUKRS = ''{ lv_dept }'' AND BSEG-KUNNR = ''{ lv_group }'''.
      PERFORM set_condition USING lv_cond.
    ENDIF.
    
    FORM set_condition USING cv_cond TYPE string.
      DATA: lv_cond TYPE string.
    
      lv_cond = cv_cond.
      CALL FUNCTION 'AUTHORIZATION_OBJECT_SET_CONDITION'
        EXPORTING
          cond_name        = 'SALES_DEPT_COND'
          cond_value       = lv_cond
        EXCEPTIONS
          cond_name_invalid = 1
          cond_value_invalid = 2
          OTHERS          = 3.
    ENDFORM.
    

    在上面的代码中,我们首先根据销售员的用户名来获取销售部门和销售组的信息,然后使用Condition Technique来控制用户对客户的访问权限。

    这些只是一个简单的示例,实际情况中可能需要更多的权限设置和Condition Technique。

    评论

报告相同问题?

问题事件

  • 创建了问题 6月19日