2015年,Jerry还在SAP成都研究院CRM Fiori开发团队工作时,担任了德国一个著名的灯具制造商客户的CRM Fiori项目的dev angel. 当时客户提出了若干对CRM Fiori标准应用的增强需求,总的来说分为前台Fiori UI界面的增强(比如增添新的自定义字段)以及后台逻辑的增强。
当时还处于Fiori 1.0时代,还没有直接在浏览器上使用S/4HANA的Key User tool进行新建字段的办法,因此对于前台界面的增强,我给客户的解决方案是使用UI5 XML视图中预留的Extension point,而后台逻辑的增强,则通过UI5 JavaScript controller中的extension hook以及ABAP后台的BAdI实现。
我和客户四个月的合作非常愉快,最后项目顺利上线,我也收到了德国客户通过邮件发送的感谢信,客户还把这个项目他们做的所有增强代码打成压缩包发送给我,希望SAP能好好分析这些逻辑,评估某些需求是否具有普遍性,将来能否做到SAP标准Fiori应用里,以便更多的客户能受益。这个德国客户在项目实施中的专业程度和一丝不苟的态度,给我留下了深刻的印象。
当时客户的一个实际需求是,创建一个新的自定义字段,并能够让该字段在端到端的业务流程中启用(支持增删改查). 虽然这个需求现在看起来比较常见,但在五年前的Fiori 1.0时代,实现起来还颇费一番功夫,因为前后台都得做一些增强。
我当时把完整的增强实现步骤写成博客发在了SAP社区上,因为步骤较多,总共写了四篇文章才介绍清楚:
An example of End to End extension on CRM Fiori application - part1
An example of End to End extension on CRM Fiori application - part2
An example of End to End extension on CRM Fiori application - part3
An example of End to End extension on CRM Fiori application - part4
最近Jerry在WebIDE里偶然看到新建菜单里有个名叫Adaptation Project的菜单项:
网上搜索一番后,发现一篇介绍其用法的博客,这里Jerry把文章概要用中文描述出来分享给大家。该博客介绍了另一种不通过编程即可增强Fiori应用某些行为的方式,对其细节感兴趣的,可以点击文末的“阅读原文”链接直接阅读SAP社区的英文版博客。
这种新的增强方式是通过Fiori Adaptation Project完成的,通过一个实际的需求来介绍。
我们说SAP应用,最典型的使用方式就是以搜索界面作用入口,在搜索结果的表格控件里点击某条记录进入明细页面开始操作。
由于种种原因,并不是所以的表格控件都提供将数据导出成excel格式的功能。
如果搜索结果的表格是通过SAP Fiori Elements技术绘制而成,可以在WebIDE里使用Fiori Adaption Project将excel导出功能启用。
在WebIDE里新建一个Fiori Adaptation Project:
下一步需要选择增强哪一个SAP系统的哪一个Fiori应用。如果待增强的Fiori应用位于On-Premises系统,需要预先配置SAP Cloud Connector和SAP云平台上的Destination,否则到了这一步,在SAP UI5 ABAP Repository的下拉列表里将无法看到该系统。
On-Premises系统确定之后,在该系统找到要增强的Fiori应用,通过输入该应用的技术ID来定位。点击Next完成Fiori Adaptation Project的创建向导,这里我们给该project取名s4demo.
在WebIDE里邮件该project,选择SAPUI5 Visual Editor,打开这个所见即所得的视图编辑器,
默认是以Preview模式打开的,点击右上角的Edit按钮进入编辑模式:
在编辑模式里,选中视图上的表格控件,准备开始做属性的修改。
我们注意到这个安全模式的提示,引入这种模式的用意和Android系统以及Windows操作系统的安全模式类似。SAP UI5 Visual Editor的安全模式下,开发者只能针对控件进行受限制的属性修改。
有付出就有回报,虽然修改受到限制,但在安全模式下进行的修改是升级安全的,即将来S/4HANA系统升级后,这些修改仍然得以保留。
为了启用表格的excel导出功能,我们得关掉安全模式:
然后把Use Export to Excel的标志位从默认的false设置成true:
保存修改,在项目文件夹下生成一个名为changes的文件夹,里面记录了这次属性修改的明细。这种将属性修改通过单独的文件保存下来的思路,和SAP C4C里通过Key User Tool或者Cloud Application Studio修改UI视图后生成Change Transaction用来记录修改明细是一致的。
修改完保存之后,再次打开应用,就可以测试这个excel导出功能了。
本地测试通过后,采用和部署SAP标准Fiori应用同样的办法,将这个Adaptation Project部署到对应的S/4HANA系统上。
点击Show Details能得知到底有哪些资源被成功部署了。
成功部署的提示信息:Folder XXXX ( CUSTOMER_BASE) created in LRep.
这个LRep即Layed Repository,S/4HANA里一个分层的存储系统。所谓Layed,体现在这个存储系统引入的分层概念,即Customer Layer,Partner Layer,SAP Layer等。不同的操作者——客户,Partner和SAP标准开发人员,对这些分层存储的资源具有不同的读写权限。
在S/4HANA系统里,执行报表/UIF/GET_FILES_4_NS,可以查看到从WebIDE部署到S/4HANA LRep的这些资源:
在第一次运行使用Fiori Adaptation Project增强后的Fiori应用时,存储在LRep Customer Layer的Fiori Adaptation Project里描述的UI5应用修改信息,会和Fiori标准应用的资源做一个合并,产生最后客户在浏览器里看到的,具有Export to Excel按钮的Fiori应用。
希望本文能够帮助大家对Fiori应用的又一种增强方式有一个最基础的了解,感谢阅读。
相关推荐
**设计思维**是一种以用户为中心的创新方法论,旨在创造更符合用户需求的产品和服务。这种方法强调通过观察、理解和解决问题来驱动创新,并确保最终产品能够真正解决用户的痛点。 #### 二、用户体验的范式转变 **...
- **列表报告视图 (List Report View)**: 一种标准的数据展示方式,适用于显示和管理数据列表。 - **对象页面视图 (Object Page View)**: 用于展示单一对象的详细信息,支持多种布局选项。 - **概述页面 ...
Fiori是SAP公司推出的一种创新的用户体验(UX)设计策略,旨在提供简洁、直观且高效的业务应用程序。它以用户为中心,旨在优化工作流程,提升员工生产力,同时增强企业软件的美观性和易用性。Fiori的应用程序覆盖了...
SAP Fiori是一种创新的用户界面(UI)设计和交付架构,由SAP公司推出,旨在为企业应用程序带来消费级用户体验。SAP Fiori的目标是通过更新最广泛和频繁使用的SAP软件功能的用户界面,为用户提供即时价值,这些功能可以...
SAP Fiori是一种由SAP公司开发的用户体验(UX)设计框架,专为SAP软件应用程序提供现代化、直观且个性化的用户界面。Fiori旨在提高工作效率,通过提供任务驱动的、角色定制的应用集合,使得业务用户能快速访问关键...
SAP Fiori 是一种企业级的用户界面设计框架,主要用于优化 SAP 应用程序的用户体验。它采用现代设计原则,如简洁性、一致性、个性化和适应性,为用户提供直观且高效的工作流。FIORI_PROFESSIONAL 网站可能是专门介绍...
在IT行业中,Fiori是一种由SAP公司开发的用户界面设计原则和应用集合,它致力于提供简洁、直观且个性化的用户体验,特别是针对SAP的业务应用程序。标题"‘Fiori_IP:来自整合项目的Fiori’"暗示我们将探讨一个与Fiori...
5. **Business Process Modeling and Execution (BPMN)**: BPMN是一种流程建模标准,SAP提供工具支持其在ABAP环境中的实现。源代码可能包含BPMN模型的实例,展示如何定义和执行业务流程。 6. **SAP Fiori和UI5**: ...
UI5是SAP公司推出的一种开源JavaScript框架,主要用于构建企业级的Web应用程序,特别是SAP的Fiori用户体验(UX)设计原则的应用。Fiori是SAP的一种现代、直观且个性化的用户体验设计语言,它强调简洁、高效和任务...
S/4HANA是一种基于内存计算的商务套件,其界面层采用Fiori设计,提供角色定制、简洁且自适应的用户界面。Fiori应用可以在各种设备上运行,无论是浏览器版本还是移动应用,都能提供一致的用户体验。通过S/4HANA的架构...
OData服务提供了一种标准化的RESTful API,允许从SAP系统中以JSON或XML格式获取数据,适用于移动应用和Web应用的集成。 ### 14. BW/4HANA BW/4HANA是SAP Business Warehouse的下一代产品,它提供了强大的数据分析...
首先,SAP ABAP是一种专为SAP系统开发的应用程序编程语言。在CRM环境中,ABAP用于创建业务逻辑,处理数据,以及与后台系统交互。学习ABAP的基本语法、表单设计、函数模块、报表开发以及增强等,对于理解SAP CRM系统...
SAP Fiori提供全新的用户体验,包括启动板、应用页面和详细视图,提供一致、简洁、自适应的设计,无论在何种设备上都能提供流畅的交互。 **S/4HANA**: S/4HANA作为新一代商务套件,基于SAP HANA内存计算平台,实现...
- **SAP Fiori**:这是一种全新的用户界面设计方法,旨在提供更佳的用户体验。它基于角色、自适应且具有简洁一致的设计风格,适用于不同的设备和屏幕尺寸。 - **Fiori Launchpad**:作为单一入口,用户可以通过它...
早期的SAP系统主要依赖于GUI(图形用户界面),但随着Web技术的发展,SAP推出了Web Dynpro,这是一种专为Web应用程序设计的开发框架,它可以创建高度交互且响应迅速的界面。更进一步,SAP Fiori的出现彻底改变了SAP...
在Fiori应用中,Raz可能是特定的组件或工具,可能是为了简化开发流程或增强功能。 【描述】未提供具体的描述,但根据项目名称,我们可以推测"FioriDemo-FioriTools-Raz"可能是一个包含了示例Fiori应用、开发工具和...
Web Dynpro是一种基于SAP NetWeaver平台的应用程序开发框架,专为创建高性能、动态、交互式的Web应用程序而设计。它简化了SAP应用的开发过程,通过提供一组标准组件和控件,使开发者能够快速构建用户界面,同时保持...
SAP NetWeaver是SAP公司提供的一种开放技术平台,专为“业务启用”设计,集成了各种软件和服务。这个平台不仅支持SAP Business Suite,如ERP Central Component(ECC)和Supplier Relationship Management(SRM)等...
Web Dynpro是SAP推出的一种用于构建企业级Web应用程序的技术,尤其在ABAP环境中得到了广泛的应用。本进阶篇将深入探讨Web Dynpro ABAP的关键概念、特性以及高级用法,帮助开发者提升在该领域的专业技能。 Web ...
ABAP(Advanced Business Application Programming)是一种高级业务应用编程语言,主要用于开发在SAP(System, Applications, and Products in Data Processing)系统上的应用程序。它不仅是一门编程语言,还包含了...