如何预签名和禁用签名按钮,并使审计对象成为必填字段?

问题描述 投票:0回答:1

PLM QM 审核模块有许多变化,我目前正在努力解决这些变化。

第一个要求:禁用(停用)审核对象的 Result 选项卡中的 Signature 按钮,因此也是签名的先决条件(单击此按钮),以便将审核状态更改为 Complete

Result tab

第二个要求是:通过审核创建使审核对象成为强制进入。目前,系统的默认行为只是在没有为审核对象输入任何内容的情况下发出警告,并且可以进一步保存和处理审核:

Audit objects

也许有人以前已经遇到过这些问题。

检查了自定义设置/可能性以及模块的一些编码。

abap audit sap-erp
1个回答
1
投票
第一个要求

不可能在交付的应用程序中实现(当然应用程序代码本身的修改除外,但它已经远离标准功能,出于可维护性/未来兼容性的原因最好避免)。

但是,可以通过单击签名按钮来一步签署并关闭审核(将状态设置为已完成)。 SAP 注释 2694780

要激活此行为,需要将用户参数

PLM_AUDIT_SIGN_COMPL

 设置为非空值(即 
X
)。

第二个要求
据发现,这是现在的标准行为,并且过去已更改:

SAP Note 1158350

在审计对象为空的情况下允许保存审计,在此阶段仅发出警告消息,并且仅在发布审计时发出错误消息 相关代码:

类:CL_PLM_AUDIT_ASSIGNMENT

方法:CHECK_AUDITED_OBJECT

参数:IV_MSGTY 默认值 '

W
'
... " Check is only possible if audit type is known CHECK NOT me->audit_attributes-audit_type IS INITIAL. " Set message type (used only for checking whether object is provided; " non-existing object always results in error message) lv_msgty = iv_msgty. IF lv_msgty IS INITIAL. lv_msgty = cgplc_con_msg_warning. ENDIF. ... " check if all object values are given (obligatory field) " no object defined yet IF ls_plmm_audit_obj-object_value IS INITIAL. MESSAGE e025(plm_audit) WITH lr_audited_object->m_auditobject_text INTO lv_msgtext. CALL METHOD cl_cgpl_application_log=>message_add EXPORTING im_msgty = lv_msgty im_msgid = sy-msgid im_msgno = sy-msgno im_msgv1 = sy-msgv1. lv_result = 'E'. MOVE lv_result TO cv_result. ...

类型组 CGPLC Active(CGPL Planung:常量定义):
...
  cgplc_con_msg_warning  TYPE c VALUE 'W',
...

还有一个 BAdI
PLM_AUDIT_OBJECT
(审核对象的标准实现:客户值表)可用,可以在其中更改流程。

	

© www.soinside.com 2019 - 2024. All rights reserved.