找不到工作项(PFAC)的代理

2020-08-24 01:08发布

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

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

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


嗨。

我创建了一个PFAC规则,该规则具有一个功能模块,该功能模块将代理附加到actor_tab中。

我将标准的一般决策任务复制到新任务,并在我的工作流程任务中对其进行了配置。

现在,我在PFAC调用的函数内向SAP用户强加了append命令,当我在PFAC事务中对其进行测试时,它可以正常工作。

但是在触发工作流时,它会在日志中显示错误消息,提示找不到代理。

但是该工作项的状态为READY。

昨天,工作流可以正常工作并确定座席,并且已配置为执行该标准的常规决策任务。

当我配置新的一项决策任务时,它停止工作(因为在SBWP中,必须在工作项主体中使用变量)。

我已将其更改为一般任务,但即使这样,它也不能确定代理商。

尝试SWU_OBUF,SWI1_RULE(重新确定),但是它不再起作用。

(59.0 kB)
6条回答
huskylover
2020-08-24 01:28

嗨。

我们的工作流基于ZTABLE,用于通过werks等配置批准者。

因此,此表中werks为SAP用户提供的功能性插入信息。

使用销售订单(来自BUS2032 BO),我们搜索正确的用户以批准该销售单据。

我复制了一个标准函数来挖掘该函数(该论坛提供了一些示例,用于复制要使用的函数)

此处的参与者选项卡会自动(通过PFAC和函数)传递回工作流任务。

所以。 不需要将ACTOR_TAB绑定到WF。

只需将您用于搜索的字段(如果有的话)从WF绑定。

但是我需要销售订单

我的工作流中有一个名为nivel_atual的全局变量(批准的当前级别)

在工作流中,我将1分别添加到该级别中 批准。

图片和下面的代码。

功能z_sd_search_aprov_sales_order。
 *" ------------------------------------------------  ----------------------
 *" *"本地接口:
 *"表格
 *" ACTOR_TAB结构SWHACTOR
 *" AC_CONTAINER结构SWCONT
 *"例外情况
 *" NOBODY_FOUND
 *" ------------------------------------------------  ---------------------- 
包含

数据: *当前批准级别(wf流程将其计数到最后一个级别) lv_nivel_atual TYPE char2,例如" 01、02、03"例如 lv_workflow WS90000010
 * wf id用于工作流ID的ZZ配置表中
 lv_workflow类型zsdconfig-id_workflow 
 lv_ordem_venda TYPE vbak-vbeln。


swc_get_element ac_container'工作流程'lv_workflow。 swc_get_element ac_container'nivel_atual'lv_nivel_atual。 swc_get_element ac_container'sales_document'lv_ordem_venda。 "销售单据
选择单* 来自vbak INTO ls_vbak vbeln = lv_ordem_venda。
如果sy-subrc = 0。 选择 * 从vbap 进入表lt_vbap 其中vbeln = lv_ordem_venda。 如果sy-subrc = 0。 ENDIF。
单选* 从kna1 INTO ls_kna1 在哪里kunnr = ls_vbak-knkli。 如果sy-subrc = 0。 ENDIF。
ENDIF。
" ...(批准者用户树液名称的Ztables中的某些搜索键入US) "用于当前级别 " WF流量通过容器发送当前水平 "基于销售订单问题,等等。 在Zapprovers的当前级别
循环中,为此处的工作项批准者填写ACTOR_TAB。
将" US"移至actor_tab-otype。 将ztable-usuario移动到actor_tab-objid。 APPEND actor_tab。
endloop。
SORT actor_tab BY objid。 从actor_tab删除相邻的重复项,并比较所有字段。
如果actor_tab []是INITIAL。 提高没人能找到。 ENDIF。
ENDFUNCTION。

一周热门 更多>