大家好,
在这里,云计算与大数据,我们将解释如何使用BOPF consumed OData服务创建定制的SAP UI5应用程序。
前提条件–请访问我们以前的博客文章,智能工厂解决方案,了解功能概述和后端创建。
使用BOPF框架开发具有草稿功能的定制应用程序–第2部分
在这个应用程序中,我们已经实现了基本功能如用户可以读取/创建/编辑/删除销售订单标题数据以及持久的锁定和起草功能。
让我们开始开发SAP UI5自定义应用程序:
1.第一步是在SAP Cloud Connector中创建目标。
登录到SAP Cloud Connector。点击SAP Cloud Connector中的"云到内部部署",为SAP系统创建一个条目。
2.下一步是在SAP云平台中创建目的地。
登录到SAP云平台(Neo试用帐户)->目的地->点击"新目的地"->创建一个新条目并检查连接。连接应该是可访问的。
3.然后打开SAP WEB IDE Full Stack
,点击"文件"->"新建"->"模板中的项目"->"SAP UI5应用程序"模板->"下一步"
注意:点击"服务选项卡",如果未启用SAP WEB IDE Full Stack服务,则启用该服务。
输入项目名称和命名空间->点击"下一步",然后选择"查看"键入XML并输入视图名称(主页)->单击"完成"。
之后您可以在文件部分看到新创建的项目。
4.然后右键单击项目并添加OData服务,如下图所示。
在"服务目录"中选择系统并搜索OData服务(ZC\u saleordershead\u CDS)->下一步->完成
现在,下一步是屏幕/视图设计
在我们的首页/第一视图中,我们添加了一个智能表来显示销售订单表头的详细信息,在表头本身,我们添加了创建和删除按钮。在单击表的行项目时,我们提供了编辑功能。单选按钮用于启用删除按钮,买云服务器,即单击单选按钮,删除按钮将启用。
主页屏幕
1。主页:视图1。查看.xml
注意:请参阅代码中的注释,以便更好地理解视图功能。
对于编辑和创建功能,我们在此处加载片段。
2.编辑屏幕:编辑.fragment.xml
注意:ShareModel包含编辑片段中正在进行的更改。
3。创建屏幕:创建.fragment.xml
注意:CreateModel包含在create fragment中所做的更改
接下来,我们添加了一个格式化程序文件来设置销售订单的不同类型的草稿状态。
4。格式化程序.js
此处statusText是设置销售订单的暂存状态的功能,
暂存状态类型:
暂存此对象包含用户的未保存更改此对象被用户锁定
样式表
主视图控制器:View1。控制器.js
使用的函数:
onCreate函数
onCreate函数通过View1点击创建按钮调用。查看.xml.onCreate打开Create fragment as对话框。中输入字段的验证创建.fragment.xml
onRegister函数
onRegister函数通过Create fragment在单击Create按钮时被调用。在后端保存更改时,中移物联网有限公司,整体状态、业务伙伴Id、销售文档类型是必需的。调用POST ZC\u saleOrdersheadPreparion来创建草稿数据。调用POST ZC\u saleOrdersheadactivation将草稿转换为活动数据。
按下函数
单击表的行项目时调用函数get。在这里,我们将根据是否创建的草稿设置"取消"和"放弃"按钮。编辑.fragment.xml作为对话框打开。检查salesorder是否未锁定,然后返回错误。检查salesorder是否有未保存的更改,然后发出警告。否则打开编辑.fragment.xml作为对话框打开
onSubmit函数
onSubmit函数通过编辑片段点击保存按钮调用。在保存功能(即业务伙伴ID、总体状态、销售文档类型)中验证必填字段。单击"保存"按钮时未执行任何更改时出现错误"请执行一些要保存的更改"。调用POST ZC\u saleOrdersheadPreparion来创建草稿数据。调用POST ZC\u salesforderseadactivation将草稿转换为活动数据。
onchangecreate函数
onchangecreate在中的特定输入字段中的每个活动更改上触发创建.fragment.xml
输入字段:
整体状态业务伙伴id销售单据类型销售组织销售组成本中心卖方材料工厂
在这里执行post和merge操作。
post ZC\U销售订单合并ZC\U SalesOrdersHead(salesorder='salesorderno',DraftUUID=guid'xyz',IsActiveEntity=false
xyz为draftguid.
此处,如果未创建草稿,则创建新草稿并将livechanges合并到新创建的草稿。
如果草稿已存在,将livechanges合并到现有草稿中。
onDelete函数
单击View1中的Delete按钮将调用Delete函数。删除ZC\u salesfordershead(salesforder='salesforderno',DraftUUID=guid'xyz',调用IsActiveEntity=false;
此处,xyz是draftguid.
onchangeedit函数
onchangeedit在中的特定输入字段中的每个实时更改都被调用编辑.fragment.xml.
调用POST ZC\u saleordersheadedit
MERGE ZC\u saleordershead(salesorder='salesorderno',DraftUUID=guid'xyz',调用IsActiveEntity=false;