通过自定义逻辑批准访问角色请求

2020-09-08 03:12发布

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

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


专家们,

我正在通过调用标准方法UPDATE&SAVE在自定义程序中实现批准功能。

这些方法在标准Web Dynpro组件GRAC_UIBB_ACCREQ_APPROVAL方法APPROVE中调用。 想法是在自定义程序中实现MIMIC的标准功能。

它没有给我任何错误,但是请求状态没有改变。 我还通过更新方法传递了要在审核日志中更新的详细信息,但在请求审核日志选项卡中未更新它。

lo_session = cl_grfn_api_session => open_daily()。

lo_access_request_api?= lo_session-> get(

iv_object_id = l_reqid)。

lo_access_request_api-> if_grac_api_access_request〜update(

is_request_data = ls_req_data

it_requser = ls_request_data-requser

it_reqlineitm = ls_request_data-reqlineitm

it_reqsys = lt_reqsys

it_audit_trail = lt_audit_log)。

lo_session-> save()。

有人可以让我知道是否可以通过在自定义代码中调用这些标准方法来实现批准功能?

谢谢。

PK

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

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


专家们,

我正在通过调用标准方法UPDATE&SAVE在自定义程序中实现批准功能。

这些方法在标准Web Dynpro组件GRAC_UIBB_ACCREQ_APPROVAL方法APPROVE中调用。 想法是在自定义程序中实现MIMIC的标准功能。

它没有给我任何错误,但是请求状态没有改变。 我还通过更新方法传递了要在审核日志中更新的详细信息,但在请求审核日志选项卡中未更新它。

lo_session = cl_grfn_api_session => open_daily()。

lo_access_request_api?= lo_session-> get(

iv_object_id = l_reqid)。

lo_access_request_api-> if_grac_api_access_request〜update(

is_request_data = ls_req_data

it_requser = ls_request_data-requser

it_reqlineitm = ls_request_data-reqlineitm

it_reqsys = lt_reqsys

it_audit_trail = lt_audit_log)。

lo_session-> save()。

有人可以让我知道是否可以通过在自定义代码中调用这些标准方法来实现批准功能?

谢谢。

PK

付费偷看设置
发送
3条回答
SAP浪
1楼-- · 2020-09-08 04:02

Pranshu,

请查看文档,其中概述了此空间中所需的最低限度信息,并添加了更多详细信息,包括但不限于您正在使用的发行版和SP以及要实现的业务案例。 标准批准功能有什么问题?

在GRC空间中的讨论线程中提供的最少信息

此致

Gretchen

当学会了学习
2楼-- · 2020-09-08 03:49

嗨-您的问题已解决吗? 我们有相同的要求。 您能否分享步骤/代码。

天桥码农
3楼-- · 2020-09-08 03:53

嗨格蕾琴,

感谢准则。

我们在系统中使用以下组件:

组件

发布

SP级

支持包

说明

GRCFND_A

V1100

0011

SAPK-V1111INGRCFNDA

GRC基金会ABAP

GRCPINW

V1100_731

0011

SAPK-11511INGRCPINW

SAP GRC NetWeaver插件

按照标准流程,当管理员通过按"提交"按钮批准访问请求时-调用标准webdynpro组件GRAC_UIBB_ACCREQ_APPROVAL的批准方法,该方法依次调用方法Update&Save。 我们希望通过我们的自定义逻辑来实现此功能。

数据lo_api类型为cl_grac_api_access_request的引用。

lo_api?= wd_this-> mo_session-> get(iv_object_id = wd_this-> mv_object_id)。

lo_api-> if_grac_api_access_request〜update(is_request_data = ls_req_data

it_requser = ls_request_data-requser

it_reqlineitm = ls_request_data-reqlineitm

* it_provlineitm = ls_request_data-provlineitm

* it_reqowner = ls_request_data-reqowner

it_reqsys = lt_reqsys

it_request_omobjects = ls_request_data-hromobjects

it_ext_risk = ls_request_data-ext_risk

it_audit_trail = wd_this-> mt_audit_log

it_usergroups = lt_user_groups_api

it_userparam = lt_user_param_api)。

wd_this-> mo_session-> save()。

为什么需要自定义批准功能?

  • 对于每个角色,都需要满足一些先决条件,例如 用户应该已经完成​​了该特定角色的强制性学习。
  • 通过标准批准功能,管理者只能在请求者完成所有相关培训后批准请求多个角色的访问请求。
  • 我们的客户希望获得更大的灵活性,例如如果请求者已经完成一个角色的培训,则比他应该获得对该角色的访问权限更重要,而无论他是否尚未完成请求中其他角色的强制培训。
  • 我们创建了一个自定义表,该表将保存请求中每个角色的培训完成状态。 对于所有已完成状态,我们已在自定义程序中实现了配置逻辑,该逻辑运行良好,并正在所请求的系统中创建具有所需角色的用户。
  • 接下来,如果请求中的所有角色均已分配给用户,我们希望通过我们的程序来完成/更改/完成请求状态。

我们遇到了以下类似的某些帖子,其中这些标准功能已在自定义程序中实现。 我们已经在同一行进行了编码,但无法正常工作。 如果有人可以通过我们的自定义逻辑就如何实现此标准批准功能提出建议/建议,那将是很棒的。

在GRC 10中通过电子邮件和委派进行认可

谢谢。

PK

一周热门 更多>