SAP Fiori移动产品的HANA迁移之路(整体解决方案)
前言
SAP Fiori是SAP移动产品唯一开发框架, 同时也是SAP公司在跨产品线上对用户界面进行改进的一个重要举措,随着SAP S/4HANA逐步成为企业的神经枢纽和现代化数字的核心,SAP Fiori 2.0 也必将成为SAP S/4HANA产品系列中用户体验上最大的革新,其以用户为中心的设计理念更多的聚焦在如何提高企业员工的工作效率、工作方式,凭借最优的成本创造最大的价值。
SAP Fiori自发布起,本着用户角色定位为核心,以提高生产率,更快更直接访问相关信息和应用程序为宗旨,几年的发展历程,已经被众多SAP企业级用户所信赖。
整来上来讲,其应用类型大致分为三类:
1. Transactional (主要聚焦于事务交互性应用)
2. Fact Sheets(主要负责展示核心和新闻类数据,可以通过其他应用打开查看)
3. Analytical(负责生成分析类的各种报表展示)
如下图为开发后的标准Fiori Launchpad以及PurchaseContract-approve示例:
响应式设计的移动应用,针对手机,平板,桌面系统做了无缝对接,贴合用户使用,跨平台查看,高效,随心!
接下来,我主要针对SAP产品移动化,以及Fiori平台迁移的相关经验进行分析和讲解,有过于武断的地方,欢迎斧正。
传统Fiori构建
传统的SAP Fiori开发工作主要集中于Eclipse+SAPUI5 Plugin, BSP和SAP GUI, Gateway,其开发配置一环扣一环,对于从来没有接触过Sap相关产品的同学,不得不下一番功夫研究一下,以后轻车熟路就容易很多,古人言到:“只要功夫深铁杵磨成针“!
其中Gateway 遵循ODATA协议,负责为SAP前端提供数据支持(Rest服务)。
1. 运行结构图
2. 工具使用
对于各个工具的角色定位有所不同,但是相互间的配合还是很好的,给开发带来很大的便利,如下:
Eclipse(JavaWeb版本): 主要负责开发SAPUI5应用。
BSP: 用于部署开发后的移动移动应用,类似于静态服务器。
SAP GUI: 负责配置部署Launchpad 和初始化BSP,上传下载代码。
3. 常用的transaction
1. LPD_CUST: 配置launchpad信息。
2. SE80: 查看BSP上所有应用信息
3. SE38:上传下载代码。
4. SM30 -> /UI2/V_SEMOBJ: 定义entry实例。
5. PFCG :定义用户访问权限。
对于不同的gateway服务,定义launchpad的url会不一样,大概的结构如下:
https://host.domain:port/sap/bc/ui5_ui5/sap/arsrvc_upb_admn/main.html?sap-client=Client?scope=CUST
这里附上一张定义新的Launchpad截图:
为什么要迁移
现在是一个云、大数据盛行的时代,各种产品都在云上开花结果,云更是各大企业追捧的热点,SAP S/4HANA Enterprise Management 1511版成功之后,SAP于16年10月31日发布了SAP S/4HANA 1610。
SAP S/4HANA 1610不仅带来了跨业务线的全新功能以及显著简化,还增加了完整的SAP S/4HANA Finance,以及SAP Fiori 2.0用户体验。
SAP HANA平台对于开发,调试,部署定义给了完整的解决方案。
1. 开发工具提升
SAP HANA提供了WEB IDE解决方案,可以在线云开发,自动同步代码,不用担心死机或者数据丢失,对于SAPUI5丰富的UI组件支持拖拽功能,更加的傻瓜智能,无须担心电脑环境问题,只要有网络和浏览器。
与此同时,WEB IDE支持Git, BSP, HANA代码管理工具,方便开发者于其他用户或者开发工具进行代码同步,更加支持Corodva等移动平台的打包工作,让我们的APP运行在主流的移动设备上,SAP提供了丰富的移动插件,可以直接使用:
2. 快速在线调试
WEB IDE拥有在线的调试工具,可以实时访问我们开发的应用,不需要额外部署即可看到我们的应用,并且支持响应式测试,可以自由切换设备尺寸。
3. 一键部署到不同平台
部署工作对于HANA WEB IDE是很轻松愉快的事情,一键即可部署到相应平台测试,方便快捷,提高了工作效率。
迁移解决方案
对于很多Fiori 企业级用户来将,迁移势在必行,高效率的运行环境,快速的产品迭代,都将为企业带来巨大的利益。
那么在具体的迁移解决方案又是怎样的呢?我们具体来看一下:
1. 查看FIORI工程信息及源码
首先我们需要登录SAP GUI, 查看现有的版本信息,具体的transaction:
1. LPD_CUST: 查看现有版本基本信息。主要是ID信息以及对应APP的BSP名字。
2. SE80: 找到相应APP,并查看资源的完整,并能够访问。
3. SE38: 下载所有资源工程文件。
以上操作,不要对原有文件做任何更改,只需要copy即可,方便日后查看。
2. 定义新的Launchpad
登陆HCP后,可以在services中看到一个选项“Portal Service ”,点击进去后打开Site Directory,如下图所示,我们看到Admin Space就是HANA提供给开发者的工作平台。
点击加号,创建一个新的Site(就是我们所谓的Launchpad):
3. 自定义Launchpad样式
在HANA上我们可以自定义我们的Launchpad样式,并且可以保存模板,非常方便,对应服务如下:
这里主要有两个service, UI Theme Designer负责设计样式,Theme Manage负责管理我们的样式,并且支配某个Site应用的Theme(应用和取消操作),这里我需要注意在自定义样式的应用中,升级SAP FIORI 2.0以后会存在部分问题,因为2.0对UI主题做了升级化处理。
4. 定义neo-app.json:
这个配置文件是WEBIDE特有的文件,主要配置一些访问库的版本信息,访问服务的代理URL等等,如果没有这个文件,工程在HANA上无法运行,所以我们需要对已有的app此文件。
{
"routes": [
{
"path": "/resources",
"target": {
"type": "service",
"name": "sapui5",
"entryPath": "/resources"
},
"description": "SAPUI5 Resources"
},
{
"path": "/test-resources",
"target": {
"type": "service",
"name": "sapui5",
"entryPath": "/test-resources"
},
"description": "SAPUI5 Test Resources"
}
]
}
5. 导入工程文件并部署
我们需要将原有工程打包成zip包, 导入工程后,右键部署到Launchpad即可:
在部署到Launchpad上,同样需要对Tile进行相关的配置, 比如当前APP Tile的类型,图标样式等等。
相对来讲,在HANA的这些配置容易很多,没有过于复杂的选项,引导操作也相当人性化,给开发部署工作带来很多乐趣,而且图形化的界面,能更好的理解和使用。
迁移注意事项
迁移过程中,并不会一帆风顺,总会遇到些小问题,不放弃,肯坚持,终究会“山重水复疑无路, 柳暗花明又一村”,享受其无穷乐趣。
为此,我主要总结了以下几点,仅供参考:
1. 注意迁移后的SAPUI5 Library版本问题, 不同版本之间会存在一些样式以及小的功能问题,比如某个属性不支持等等。
2. 如果依然要采用后台gateway做服务支持,我们需要额外配置cloud connector作为代理服务支持,如果是HANA作为新服务支持,此步骤可以略过。
3. 如果你是自定义主题,当HANA升级过程中,会存在一些样式问题,建议在创建主题的时候,勾选自适配按钮,保证升级后的HANA也能够使用我们的主题样式。
总结
总体来讲,SAP HANA上应用FIORI,无论是对开发者还是企业,都将受益匪浅,移动的步伐在一步步迈进,SAP FIORI在企业级市场正如日中天,宏图大展,企业UI的变革已经到来,未来的趋势不可阻挡,时代的强音响彻天霏。
目前,对于SAP S/4HANA, SAP Fiori 2.0用户体验的提升,会更上一层楼,其类似于Windows 8的用户界面大尺寸方形图标、链接、搜索功能,用户更可以通过个性化入口访问他们所需要的应用,更多特性,细节会在后续“SAP Fiori 2.0次时代用户体验”一文中阐述,敬请期待!