当前位置:主页 > 虚拟服务器 > 数据安全 >

香港cdn_阿里云_bi大数据平台

香港cdn_阿里云_bi大数据平台

大家好,

这个博客是关于使用SAP ABAP编程模型为SAP Fiori创建一个具有事务功能(草稿)的Fiori应用程序,在保存到db之前提供端到端的功能。

我不想复制帮助内容。创建此项的原因如下:

https://help.sap.com/viewer/cc0c305d2fab47bd808adcad3ca7ee9d/1809.000/en-US/3b77569ca8ee4226bdab4fcebd6f6ea6.html

https://help.sap.com/viewer/cc0c305d2fab47bd808adcad3ca7ee9d/7.52.2/en-US/3b77569ca8ee4226bdab4fcebd6f6ea6.html

我建议你们去看看Diego Borja的博客草稿为自定义/标准表格启用Fiori应用程序。

https://blogs.sap.com/2018/06/24/abap-programming-model-for-fiori-transactional-apps-with-draft-capabilities-using-standard-tables/

面向对CDS观点有基本了解的人群,OOABAP和Fiori,帮助您在这个新框架中启动开发。

来自帮助:

SAP Fiori的ABAP编程模型定义了在SAP S/4HANA中高效端到端开发本质上SAP HANA优化的Fiori应用程序的体系结构。它支持所有类型的Fiori应用程序的开发,商业大数据分析,如事务、搜索、分析和规划应用程序,并基于经客户验证的技术和框架,如用于定义语义丰富的数据模型的核心数据服务(CDS)、OData协议、,基于ABAP的自定义逻辑应用程序服务和基于SAPUI5的用户界面。

有关此新编程模型的更多信息,请查看SAP帮助。

使用用于Fiori的ABAP编程模型,您可以开发两种应用程序

如果应用程序是在没有草稿的情况下开发的,有很多限制和问题:

链接:

https://help.sap.com/viewer/cc0c305d2fab47bd808adcad3ca7ee9d/1809.000/en-US/971e03cd952a47458e57f87fc566a8f3.html

https://ui5.sap.com/#/topic/a90c55840b144f2ebc2d836adbc1a54f

(可从7.51 SP02获得)

如果我们开发具有草稿功能的应用程序,那么我们将拥有以上所有功能和更多功能很棒的功能。

那么这个"草稿"是什么。。?正如"草稿"这个名字所暗示的,它不是最终版本,只是一个临时版本https://experience.sap.com/fiori-design-web/draft-handling/

https://help.sap.com/viewer/cc0c305d2fab47bd808adcad3ca7ee9d/1809.000/en-US/d36820f082c84085b6634be4576e351a.html

当我们在启用草稿的Fiori应用程序中创建或编辑条目时,在draft表(在CDS视图中配置)中创建一个条目。当我们在输入中输入任何数据时,将发出一个请求并将数据保存到草稿表中。因此,大数据网站,即使在刷新浏览器之后,我们在编辑模式下刷新Fiori应用程序之前输入的数据也会被检索回来。

在开发新的Fiori应用程序时,大数据网,我们将使用这种所谓的"草稿"功能得到什么。

让我们看看它是如何工作的:

上面的图片来自SAP UI5文档,链接如下。它有一个非常好的信息草稿的特点https://ui5.sap.com/#/topic/ed9aa41c563a44b18701529c8327db4d

活动数据:原始数据

草稿数据:临时数据(活动数据的副本,新的更改),最终保存后删除。

以这里的BP为例。

首先,如果我们打开一个已有的BP,点击编辑,它将为实际版本创建草稿版本,从这里开始,您在那里所做的所有更改都将保存在草稿版本中。如果我们打开业务伙伴的角色并在其中更改一些数据,则角色数据将保存在角色草稿表中。因此,点击保存后,它将把草稿版本的所有数据保存到活动版本并删除草稿条目。

这个草稿表不是实际的表,电力物联网,它是原始表的副本,我们将在CDS视图中定义它。顺便说一句,我们不需要手动创建此表,SAP将在生成CDS视图时自动创建此表。

如何使用此框架开发具有草稿功能的应用程序的概述:

坦率地说,对于我们来说,草稿和非草稿在开发方面没有太大的区别,它主要由SAP负责,但主要的区别在于功能。

现在让我们看一下它的开发部分。

这个例子将与帮助中提供的非常相似,请先检查我提供的帮助链接,然后再看这个。唯一的变化是不用GUID作为键字段,我将使用普通字符字段。

在进入开发部分之前,让我们看看它的一个小演示。

让我们创建两个新的自定义表。(我们可以使用您现有的自定义表或标准表)。

销售订单标题

销售订单项目

我们创建基本CDS视图来从实际的数据库表中获取数据,我们通常将逻辑放在这些视图中,例如进行一些转换或计算或文本更改或写入一些连接,并在需要时获取任何数据。但在我们的例子中,我们不会做任何事情,因为这只是一个基本的应用程序。

销售订单标题

销售订单项目

启用草稿功能和跨国处理。

销售订单标题

有关objectmodel的更多信息,请查看链接下:

https://help.sap.com/viewer/cc0c305d2fab47bd808adcad3ca7ee9d/1809.000/en-US/d36820f082c84085b6634be4576e351a.html

ObjectModel注解为CDS视图提供了草稿和事务功能。

以上两个说明CDS视图启用了事务处理,这个特定的CDS视图是根视图(顶部)级别视图)。

以上两个将说明CDS视图具有草稿功能,我们将只建议一个草稿表名称。当视图激活时,草稿表将自动生成。

semanticKey告诉SAP框架键是什么,它主要用于使用GUID作为键字段开发的CDS视图。使用此SAP将了解实际键是什么而不是GUID。

列表模板UI5应用程序也使用此键在列表报表应用程序的列下显示"草稿"状态,它根据语义标识该列。所以这最好是给所有的CDS视图。

以上是对值的帮助

这将使视图告诉列是只读的。

这将创建从销售订单标题到业务对象中的销售订单项目的关联。

销售订单项目

这里我们只需要提一下draftpersistence表,我们做了不需要提及draftEnabled和transactionalprocessingabled,因为父视图获取此子视图数据并在BO中使用它。

其他内容与上面相同,我们只需要提到与父级和根级的关联。

所以在创建关联并将所有对象模型添加到标题和项目CD视图并激活它们之后,这将创建BOPF BO和草稿表。

如何检查创建的BO?只需将鼠标悬停在header CDS视图上,其中"transactionalProcessingEnabled"设置为true。

现在单击业务对象,它将导航到BO。

现在单击"转到根节点"并打开生成的Draft类。

  • 关注微信

猜你喜欢

微信公众号