限制对价格行在线版本的写入权限-Hybris Backoffice

2020-08-14 18:26发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)我想限制用户编辑价格行的在线版本...

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

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


我想限制用户编辑价格行的在线版本,并允许在过渡版本之前对其进行编辑,直到同步为止。同步后,仅有效结束日期应可编辑。

最初,我想到了一种实现方法,该方法可以使用 PermissionManagementService 在Load Interceptor(适用于联机版本和暂存版本)中调整权限,但是它会更改impex提供的User的原始权限。 这是有问题的,因为实际上不允许编辑价格行的用户将获得编辑权限。 为了解决这个问题,我认为我可以在Session结束时回滚到原始权限(通过将权限最初存储在Session中),方法是重写以下方法,但对此不抱有信心。

 com.hybris.backoffice.cockpitng.util.impl.DefaultPlatformCockpitSessionService.logout()

任何更好的方法还是我缺少OOTB功能,这将是更好的帮助。

1条回答
Bunny_CDM
2020-08-14 19:03

我不认为这是可能的,因为PDTRow(价格,税收和折扣行)不了解目录。 另外,有两种方法可以将PDTRow添加到产品中:

  1. 将产品分配给PriceRow。 将在PDTRow的" productId"字段中设置产品代码
  2. 仅在PDTRow上设置" productId",这是产品代码,没有直接关系。

在两种情况下,PDTRow都不是目录感知的,因此不存在暂存和联机的概念。

此外,如果您更改PDTRow上的价格,那么它会直接影响在线价格。

因此,我建议只允许人们更改被授权这样做的价格。

也许是获得所需内容的另一种方法,通常可以防止在创建后更改PriceRow(此后仍然实现使PriceRow无效的方法)

一周热门 更多>