SAP Fiori Elements List Report 表格新增列扩展方式的工作原理试读版

极客寻梦
• 阅读 284

本教程前一篇步骤,笔者已经向大家详细介绍了如何通过 Extension 的方式,在 SAP Fiori Tools 提供的向导,自动生成的 Fiori Elements List Report 应用里,添加新的表格列的步骤,效果如下图所示。

SAP Fiori Elements List Report 表格新增列扩展方式的工作原理试读版

我们使用这篇教程里介绍的名叫 UI5 Inspector 的 Chrome 扩展,来查看扩展后渲染出的 Fiori Elements 页面:

SAP Fiori Elements List Report 表格新增列扩展方式的工作原理试读版

可以发现,我们通过扩展方式新增的列 Extension Column1,已经同整个表格"完美融合"在了一起。

在 UI5 Inspector 里:

  • Fiori Elements 应用自动生成的表格列的 id 格式如下:

jerryfiorielement02::sap.suite.ui.generic.template.ListReport.view.ListReport::SEPMRA_C_PD_Product--listReport-MainProductCategory

  • 我们扩展的自定义列的 id:

jerryfiorielement02::sap.suite.ui.generic.template.ListReport.view.ListReport::SEPMRA_C_PD_Product--FioriTools::ext2-column1

通过比较发现,列 id 的前缀完全一致,区别只是 -- 后面的后缀。我们通过向导扩展的自定义列,id 后缀为 FioriTools::ext2-column1,其中 FioriTools 代表这个列通过 Fiori Tools 这个 Visual Studio Code 扩展生成,ext2-column1 是我们在本地工程 fragment 实现文件里手动指定的值。

本文余下部分介绍下面这两个问题的答案:

  1. 下图 webapp 文件夹中 manifest.json 文件内维护的扩展定义,运行时是如何被 Fiori Elements 框架解析的?
  2. 扩展向导生成的 ext 文件夹和里面两个 XML 格式的 Fragment 文件,运行时是如何被 Fiori Elements 框架解析,加载和渲染的?

SAP Fiori Elements List Report 表格新增列扩展方式的工作原理试读版

下面是详细解答。

点赞
收藏
评论区
推荐文章
blmius blmius
4年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
Wesley13 Wesley13
3年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_
美凌格栋栋酱 美凌格栋栋酱
7个月前
Oracle 分组与拼接字符串同时使用
SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(
皕杰报表之UUID
​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为
Easter79 Easter79
3年前
swap空间的增减方法
(1)增大swap空间去激活swap交换区:swapoff v /dev/vg00/lvswap扩展交换lv:lvextend L 10G /dev/vg00/lvswap重新生成swap交换区:mkswap /dev/vg00/lvswap激活新生成的交换区:swapon v /dev/vg00/lvswap
Jacquelyn38 Jacquelyn38
4年前
2020年前端实用代码段,为你的工作保驾护航
有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )
Wesley13 Wesley13
3年前
mysql设置时区
mysql设置时区mysql\_query("SETtime\_zone'8:00'")ordie('时区设置失败,请联系管理员!');中国在东8区所以加8方法二:selectcount(user\_id)asdevice,CONVERT\_TZ(FROM\_UNIXTIME(reg\_time),'08:00','0
Stella981 Stella981
3年前
Django中Admin中的一些参数配置
设置在列表中显示的字段,id为django模型默认的主键list_display('id','name','sex','profession','email','qq','phone','status','create_time')设置在列表可编辑字段list_editable
Wesley13 Wesley13
3年前
34.TCP取样器
阅读文本大概需要3分钟。1、TCP取样器的作用   TCP取样器作用就是通过TCP/IP协议来连接服务器,然后发送数据和接收数据。2、TCP取样器详解!(https://oscimg.oschina.net/oscnet/32a9b19ba1db00f321d22a0f33bcfb68a0d.png)TCPClien
Wesley13 Wesley13
3年前
mysql出现Waiting for table metadata lock的解决方法
查询某一个表时,一直没有显示数据,于是就showprocesslist;!(https://oscimg.oschina.net/oscnet/07f86cfca979bba85837f1b6352eb00ec33.jpg)发现有表已经被锁了,关掉了之前的查询语句可以看到!(https://oscimg.oschina.net/oscn
Python进阶者 Python进阶者
1年前
Excel中这日期老是出来00:00:00,怎么用Pandas把这个去除
大家好,我是皮皮。一、前言前几天在Python白银交流群【上海新年人】问了一个Pandas数据筛选的问题。问题如下:这日期老是出来00:00:00,怎么把这个去除。二、实现过程后来【论草莓如何成为冻干莓】给了一个思路和代码如下:pd.toexcel之前把这