这段代码的语义是,当且仅当试图消费 Z_C_SPFLI 的用户,其用户角色包含了源代码中指定的授权对象 zspfli_aut 时,ABAP 框架才允许该用户,按照 Authorization Object 指定的读取限制条件,进行数据的读取操作。 使用aspect pfcg_auth 关键字定义 CDS View 的访问控制对象,优点是能够允许开发者利用已有的权限控制机制,...
首先,了解什么是 CDS View Access control 在 SAP ABAP 开发中的作用十分重要。CDS(Core Data Services) View 是 SAP S/4HANA 环境下定义数据模型的一项功能,通过它,开发人员能够定义并管理跨数据库的复杂视图。然而,仅仅通过创建 CDS View 并不足够,确保这些视图数据的安全访问同样关键。通过 CDS View Access co...
SAP ABAP CDS View 是 SAP 实现Code Push Down(也称 Code to Data) 的一种技术手段,即将部分取数逻辑,从应用服务器推送到数据库层,从而充分发挥 SAP HANA 强大的数据处理能力。 值得一提的是,虽然如上图所示,大多数时候提到 CDS View 时,都伴随着 HANA 数据库,然而 CDS View 并未和 HANA 深度绑定;ABAP ...
此时使用 ABAP OPEN SQL 或者直接在 ABAP Development Tool 里预览该视图,能够显示 SPFLI 数据库表的全部内容,因为此时没有定义任何的权限控制逻辑。 在ABAP Development Tool 里右键新建一个权限控制对象。 在创建向导里,选择 defineRoleWithPFCGAspect 的模版。这里能看到 ABAP CDS View 的权限控制对象,其定义手段是...
CDS View Access Control 的作用与重要性 首先,了解什么是 CDS View Access control 在 SAP ABAP 开发中的作用十分重要。CDS(Core Data Services) View 是 SAP S/4HANA 环境下定义数据模型的一项功能,通过它,开发人员能够定义并管理跨数据库的复杂视图。然而,仅仅通过创建 CDS View 并不足够,确保这些视图数据的...
SAP ABAP CDS view里的注解在ABAP后台是如何被解析的? 我们在ABAP Development Tool里编写SAP CDS view,为视图维护这些以@开头的注解,同Java Spring里广泛应用的annotation一样,都是一种为development object维护元数据的方式。 如上图所示,我维护了五个不同的注解,一旦保存,这个cds view的源代码被发送到ABAP后台,...
在ABAP Development Tool 里激活这个 Access Control 对象之后,原本 CDS View 的语法警告消息消失了。取而代之的是另一条提示消息: The entity Z_C_SPFLI is usedinDCLdocumentZAC_SPFLI_AUTH. 意思是如今视图 Z_C_SPFLI 的权限控制,已经被 ZAC_SPFLI_AUTH 接管了。
cl_salv_gui_table_ida=>create_for_cds_view( iv_cds_view_name = 'ZFAT_INTERFACE' )->fullscreen( )->display( ).这个CDS view显示的数据,是当前ABAP系统里所有的接口(SE24里查看的interface)和接口上定义的方法个数。下图是在SAPGUI里以ALV方式输出该CDS view的数据:CDS view实现源码如下:为什么要搞...
在SAP 的 ABAP 编程环境中,CDS(Core Data Services)视图是一个强大的工具,可以让开发者以更高效、更简洁的方式操作数据库。在 CDS 视图的源代码中,$projection是一个特殊的关键字,它被用来引用当前的投影列表。也就是说,$projection引用的是当前 CDS 视图定义中所包含的所有字段。
加上这个注解的CDS view,一旦激活后就会在ABAP Netweaver自动生成一个OData服务,在事务码/IWFND/MAINT_SERVICE里将其搜索出来并添加,就能够以OData服务的方式,消费这个view暴露出来的数据了。 当然@OData.publish这个注解为什么有这种神奇的魔力,在Jerry之前的博客里有详细介绍。