在销售凭证的审批工作流中,您可以按用户或角色分配审批人。
根据您的设置,系统对审批人的判定如下:
审批人是管理销售凭证工作流应用程序中的指定用户。
审批人是在管理团队和职责应用程序中被分配到特定团队成员功能(例如,“销售凭证审批人-级别1”)的用户。
- 选项3:按角色(需要预定义的自定义职责规则和职责上下文)
审批者是为销售凭证中的特定合作伙伴功能动态确定的用户。
本博客主要关注选项3,并描述如何基于合作伙伴功能动态确定审批人(以销售报价和合作伙伴功能VE的审批人工作流为例)。
过程概述
A. 在自定义逻辑应用中定义一个BAdI实现。
B. 在管理职责规则应用中创建自定义职责规则。
C. 在管理职责上下文应用程序中创建一个自定义的职责上下文。
D. 在管理销售凭证工作流应用程序中定义一个销售报价工作流。
分步指南
A. 定义BAdI实现(自定义逻辑应用)
- 为业务上下文“职责规则”创建一个BAdI实现(BAdI过滤值:YY1_Partner)。
2.
编写满足业务需求的自定义逻辑。
在本例中,自定义逻辑将销售员工指定为审批人。 如果凭证中存在合作伙伴功能VE(销售员 工),系统将获取其用户ID,并将该用户分配为审批人。
B. 创建自定义职责规则(管理职责规则应用)
- 创建自定义职责规则“YY1_PARTNER”。
注意:规则标识必须与步骤A中定义的BAdI过滤值相同。
2. 指定规则参数的数据源(类型:表,CDS视图:I_SALESDOCUMENTPARTNER)
。
在审批人确定期间,BAdI实现将调用该参数并访问凭证抬头中包含合作伙伴函数数据的表。
C. 创建自定义职责上下文(管理职责上下文应用)
- 扩展销售报价工作流的标准职责上下文(“WS02000447”)。
2. 创建代理规则。
a. 将代理规则映射到职责规则“YY1_PARTNER”(在步骤B中定义)。
b. 指定规则参数的高级数据源
在这个例子中,CDS视图I_SalesQuotation的“PARTNER”关联被用作数据源。
在审批人确定 期间,BAdI实现将调用销售报价抬头中的参数并访问合作伙伴函数数据。
D. 创建销售报价工作流程(管理销售凭证工作流程应用)
当为您的工作流指定收件人时,选择按角色分配,并将代理规则(在步骤C中定义)设置为角色。
结果
在新的销售报价的抬头数据中,存在合作伙伴函数VE(销售员工),相关用户为“Example InternalSalesRep”。
已为销售报价触发审批工作流。
在审批细节中,审批人被确定为“Example InternalSalesRep”(基于合作伙伴功能VE)。
用户“Example InternalSalesRep”在我的收件箱应用程序中收到一个工作流任务。
参考链接:
如何在系统中设置审批工作流
自定义逻辑
创建自定义职责规则
扩展职责上下文