SAP S/4HANA CDS View的访问控制实现:DCL介绍
来自我的同事Xu Miles
Authorization Objects are business concept, they are distinguished by business scenario.
Therefore, there might be a lot of Authorization Objects using the same Authorization Field. Such as VKORG.
In Sales Planning, there're two Authorization Objects related to Sales Area, V_VBAK_VKO and V_VBRK_VKO, they represent transaction scenario Sales Document and Billing Document repectively. If we want to extract the Sales Area master data, technically we could use any Authorization Object with Authorization Field VKORG, VTWEG, SPART.
However, considering the authorization of the business user, we need to use Authorization Object V_VBAK_VKO and V_VBRK_VKO separately when end user is planning for income sales or sales volume.
To do this, we could use additional CDS view + DCL to realize.
Example on ERG/001:
CDS: ZMX_SalesArea_DCL
DCL: ZMX_SalesArea_DCL
The logic in DCL:
@EndUserText.label: 'Auto assigned mapping role for ZMX_SalesArea_DCL'
@MappingRole: true
define role ZMX_SalesArea_DCL {
grant select on ZMX_SalesArea_DCL
where (SalesPlanPurpose = '0' and (SalesOrganization, DistributionChannel, Division) =
aspect pfcg_auth (V_VBAK_VKO,
VKORG,
VTWEG,
SPART,
actvt = '03'))
OR (SalesPlanPurpose = '1' and (SalesOrganization) =
aspect pfcg_auth (V_VBRK_VKO,
VKORG,
actvt = '03'));
}
The logic in the CDS view:
define view ZMX_SalesArea_DCL
as select from
I_SalesArea
{
key SalesOrganization,
key DistributionChannel,
key Division,'0' as SalesPlanPurpose}
union all select from I_SalesArea
{
key SalesOrganization,
key DistributionChannel,
key Division,'1' as SalesPlanPurpose
};
Authorization test on QW9/910
User: MILES01
Authorization:
Test Report:
REPORT mx_test_sa_dcl.PARAMETERS:
p_purp TYPE C LENGTH 1.DATA:
lt_tab TYPE STANDARD TABLE OF i_salesarea_dcl.SELECT * FROM i_salesarea_dcl INTO TABLE @lt_tab
WHERE salesplanpurpose = @p_purp.LOOP AT lt_tab ASSIGNING FIELD-SYMBOL(<fs_row>).
WRITE:/ <fs_row>-salesorganization, <fs_row>-distributionchannel, <fs_row>-division, <fs_row>-salesplanpurpose.
ENDLOOP.WRITE:/ 'Finished.'.
The logic flow is that firstly we use SalesPlanUUID to get SalesPlanPurpose, then with SalesPlanPurpose we could get the Sales Area master data via the corresponding Authorization Objects.
SalesPlanPurpose: 0 (Incoming sales)
SalesPlanPurpose: 1(Sales Volume)
本文来自云栖社区合作伙伴“汪子熙”,了解相关信息可以关注微信公众号"汪子熙"。
SAP S/4HANA CDS View的访问控制实现:DCL介绍相关推荐
- SAP S/4HANA CDS View的访问控制实现:DCL介绍 1
来自我的同事Xu Miles Authorization Objects are business concept, they are distinguished by business scenar ...
- SAP CDS view权限控制实现原理介绍
Part1 – how to test odata service generated by CDS view Part2 – what objects are automatically gener ...
- SAP SD里CDS view对status的设计
SAP S4CRM One Order redesign的CDS view也参考了SD里的CDS view对状态字段的处理:
- SAP CDS view 单元测试框架 Test Double 介绍
系列目录 Part1 – how to test odata service generated by CDS view Part2 – what objects are automatically ...
- 使用CDS view进行S4HANA的OData开发
CDS(Core Data Service)View是S/4HANA里重要的建模方式之一.下面是S/4HANA的架构图,可以很清晰的看到CDS View在整个架构中的重要地位:S/4HANA里大部分A ...
- 在 Excel 里使用 ODBC 读取 SAP BTP 平台上 CDS view 的数据
这是 Jerry 2021 年的第 59 篇文章,也是汪子熙公众号总共第 336 篇原创文章. Jerry 之前曾经给大家分享过,如何使用各种工具和编程语言,消费 SAP API Business H ...
- 在 Excel 内使用 ODBC 消费 SAP ABAP CDS view
Consuming CDS View Entities Using ODBC-Based Client Tools 本文介绍通过基于 ODBC(Open Database Connectivity) ...
- SAP ABAP CDS view和 HANA CDS view的区别,CDS consumption view 和 BO view 的区别
这两种技术都是SAP提出的"Code pushdown"理念的具体实现.SAP ABAP CDS view位于ABAP应用服务器层,使用OPEN SQL,支持的数据库不限HANA, ...
- 使用CDS view开发SAP Marketing contact的facet追溯工具
这篇SAP社区博客里,我的一位同事介绍了SAP Marketing里contact facet数据模型的存储表: https://blogs.sap.com/2016/07/01/how-does-s ...
最新文章
- 基于XML的自动装配||SpEL测试
- 企业建立数据驱动决策该如何做?终于有大神总结全了
- 用VisualVM和JConsole监控tomcat性能
- 我是如何用Jquery实现网页缩小放大的
- linux dhcp服务软包,dpkg包管理器详解
- Kali Linux 无线渗透测试入门指南 翻译完成!
- 【数据结构和算法笔记】用c和c++分别实现二叉搜索树
- 从零开始学Android应用安全测试
- python之父去面试-Django面试题
- acme申请泛域名证书
- Juniper 防火墙JSRP高可用性HA(High Availability) chassis cluster双击冗余
- Systemverilog always_comb 过程块
- js汉语转拼音(全拼、首字母、拼音首字母)
- Python While循环与break语句_加工零件
- linux trac apache,Ubuntu下集成Apache+Trac+Git
- 一感冒就得红眼病,而且很严重怎么办
- cesium for unreal 坐标参考框架
- 关于Vue使用ueditor富文本编辑器上传图片
- php sha256签名,PHP 使用 SHA256、SHA512 等 算法的写法
- 视通科技互动录播主机,互动教学超简单!