文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

怎么在SAP Cloud for Customer自定义BO中创建访问控制

2023-06-04 07:11

关注

本篇内容主要讲解“怎么在SAP Cloud for Customer自定义BO中创建访问控制”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么在SAP Cloud for Customer自定义BO中创建访问控制”吧!

1. C4C中的访问控制有两种方式

2. 要使用访问控制,必须满足下面条件

如何创建BO我们这里不再论述, 这编文章重点讲解的是C4C中的控制的运行原理.

语法

1. RelevantForAccessControl

这个关键词的语法是

[RelevantForAccessControl] association toBusinessPartner to BusinessPartner;

2. AccessControlContext

这个关键词的语法是

[AccessControlContext (Employee)] element UID : UUID;[AccessControlContext (Employee)] association ToEmployee to AP.FO.BusinessPartner.Global:Employee using UUID ;

创建访问控制

下面我们以AccessControlContext为例,看看C4C的访问控制是如何动作的.

第一步,在我们创建的BO中添加访问控制字段

[AccessControlContext(SalesOrganization)] association toOrganisationalUnit to OrganisationalUnit using UUID;

在BeforeSave中把上面访问控制字段的值添加上.
激活并生成屏幕

第二步..打开WCView屏幕文件,打开属性面板

怎么在SAP Cloud for Customer自定义BO中创建访问控制

更改AccessContextCode属性为9001-PDI:SalesOrganisation
这步非常重要,而且必须是访问控制字段相对应的访问控制代码
下面是个人收集的访问控制字段与访问控制代码表

怎么在SAP Cloud for Customer自定义BO中创建访问控制

如果这一步设置错误,访问控制不会生效,详细我会在后面说.

第三步.更改WCView下面包括的子屏幕的访问权限,例如(QC,OWL,TI)

怎么在SAP Cloud for Customer自定义BO中创建访问控制

打开其中的Access Controlled Business Object

怎么在SAP Cloud for Customer自定义BO中创建访问控制


把Unrestricted Access设置为False
这一步也是非常重要,如果不把Unrestricted Access设置为False的话,屏幕中的字段是不会继承WCView中设置的访问控制属性的.

第四步.更改OWL页面中的Query,让他绑定带有SAP_AccessControlList的Query

怎么在SAP Cloud for Customer自定义BO中创建访问控制

QueryByElements或者自定义的Query都可以.

做完以上部署后,系统就能使访问控制生效了,之后要做的事情就是把WCView分配给角色,然后设置访问控制权限.

怎么在SAP Cloud for Customer自定义BO中创建访问控制

访问控制的工作原理

当我们在Business Object中创建完访问控制字段并激活后

怎么在SAP Cloud for Customer自定义BO中创建访问控制

系统会给该BO增加一个新的Dependent Node

怎么在SAP Cloud for Customer自定义BO中创建访问控制

AccessControlList中包含下面字段

怎么在SAP Cloud for Customer自定义BO中创建访问控制


上图来自SAP社区博客Implementing Access Control on Custom Business Objects。

怎么在SAP Cloud for Customer自定义BO中创建访问控制

其中最重要的两个字段是ACCESS_CONTEXT_CODE和OBJECT_UUID-CONTENT

当我们保存时, AccessControlContext中关联的值被填充上,然后系统会把关联中的UUID值保存到SAP_AccessControlList中的OBJECT_UUID-CONTENT, AccessControlContext括号内的对象会转化为CODE,存放到SAP_AccessControlList中的ACCESS_CONTEXT_CODE.

怎么在SAP Cloud for Customer自定义BO中创建访问控制

转化的CODE是根据上表中的值来转化的.所以上在第二部的WCView中的AccessContextCode值不能乱选.不然对不上的话,访问控制是不会生效的.

当我们在系统中为用户分配访问权限时,系统会为每个用户访问每个业务对象生成一个表

怎么在SAP Cloud for Customer自定义BO中创建访问控制

只有当用户的访问权限中的数据与BO中的SAP_AccessControlList中的OBJECT_UUID-CONTENT匹配,用户才能看到该条数据.

Tips 1

如果我们在系统中创建了多个访问控制字段,系统只会以最后一条访问控制字段

怎么在SAP Cloud for Customer自定义BO中创建访问控制

例如这里,有两个访问控制字段,一个是Employee(1010),另一个是SalesOrganisation(9001),当出现多个访问控制字段时,系统只会以最后出现的访问控制字段为主.

Tips 2

别忘了设置其它相关的屏幕(QC,TI,QAF,OWL),不然这些屏幕就不受访问控制字段影响了,会看到系统中所有数据.

Tips 3

假设变更了访问控制类型后,那么之前设置的访问控制字段是不受新的访问控制类型影响的,解决方法是进去变更之前的数据中更改任何数据,然后保存.

Tips 4

PDI USER账号是个神奇的账号,他是不会受到ACL影响的唯一账号,所以如果遇到ACL的一些问题,不防试试使用PDI USER去测试一下.

到此,相信大家对“怎么在SAP Cloud for Customer自定义BO中创建访问控制”有了更深的了解,不妨来实际操作一番吧!这里是编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯