点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
我不得不在Fiori上批准自定义工作流程。 所有设置均已完成,应用程序正在运行。 在应用程序中,我们有两个选项,批准和不批准。
在工作流中,批准步骤是活动,它具有四个结果。 这些结果之一是默认结果,而其他三个输出是通过 INSTMNTPLN 标准对象的 DECIDE 方法的例外定义的。
这些是例外:
在该方法中,当通过SAP GUI正常执行工作流时,这些异常将通过宏EXIT_RETURN抛出。
问题在于,在FIORI中,我无法在BADI中使用此宏
/IWWRK/ES_WF_WI_BEFORE_UPD_IB (建议在FIORI中实施的BADI)。
因此,对于用户通过FIORI批准WorkItem的情况,由于遵循"执行步骤"的流程,因此流程通常遵循。 当用户拒绝时,我应该将流程转移到异常1001,而BADI无法做到这一点。
有人知道在这种情况下如何进行吗?
(19.9 kB)
嗨
我同意Mike的观点,尽管某些SAP工作流是通过这种方式设计的(或者在控制选项卡上可以拒绝Flag过程的标准功能会引发异常),但是这是一个糟糕的设计
但是请注意 2378748 –"我的"不支持带有批准步骤的工作流程,但有例外情况 收件箱会正式通知您,myInbox中的异常无效。
欢呼
Stephane
Stéphane,谢谢您向我展示SAP Note 2378748!
正如我向Mike解释的那样,我必须重新设计WF。
谢谢!
:)
这是错误的设计。 异常表示错误(通常是技术错误,或者是意外情况或罕见情况),不应将其用于对标准业务流程进行建模。
在此向用户显示两个按钮,并使用两种不同的处理类型处理结果。 不好,正是您所遇到的原因。
这是SAP标准对象,但它是1997年创建并在R/3 3.1g中发布的非常老的对象,因此是有史以来创建的第一个工作流位。 我猜想当时的设计考虑和Fiori互操作性并不是问题。 :-)
我会抓住机会,在OO中重写函数,或者至少重新设计WF以使用标准决策任务。
嗨,迈克! 再次感谢。
感谢您的回答以及您给我的所有选择。
当您说" 将原始对象附加为临时对象时,我总是同意您的看法,如果需要,始终可以打开完整视图。" 事实是WF非常大,并且在这一点上,如果我替换步骤(如您在第一个选项中所述),Workflow Builder将删除所有后续步骤。
在我之后 阅读Stéphane的答案,我很高兴知道有一个SAP注意,该注释建议您无法使用Fiori控制异常。 因此,我发现我的解决方案在WF中重新设计了一个流程。 我在WF容器中创建了一个新属性,并在REJECT情况下将值设置为这些属性。 在WF中,我检查APPROVAL流中REJECT的新属性。 看起来不太好,但这是最好的选择。
谢谢!
一周热门 更多>