为什么SAP GUI里的传统事务码能通过Fiori Launchpad启动

今天是农历鼠年大年初六,本文是鼠年第6篇文章,也是汪子熙公众号第205篇原创文章。

大家这几天宅得怎么样了?

为什么SAP GUI里的传统事务码能通过Fiori Launchpad启动

为什么SAP GUI里的传统事务码能通过Fiori Launchpad启动

为响应government号召,尽量少出门,反正也闲着没事,今天我们就来聊聊这一切是怎么实现的。


Jerry最初注意到这种将SAP GUI里的事务码运行在浏览器里的做法,是在日常工作的测试时,发现Fiori Launchpad里这个Create Material的tile.


回忆一下,原生的Fiori应用,无论我们在页面内进行何种点击操作,都不会跳转到一个全新的页面去,即不会打开一个新的浏览器窗口,或者一个新的标签页——Fiori原生应用,所有的用户操作都在一个页面内完成,页面的切换通过SAP UI5的router组件完成,这是一个典型的Single Page Application的特征。


为什么SAP GUI里的传统事务码能通过Fiori Launchpad启动

反之,当我点击了上图Create Material tile之后,启动的应用是在另一个新的Chrome标签页里打开并操作的,请大家注意上图红色新开启的标签页。


这就说明,这个Create Material tile背后的应用不是基于SAP UI5开发的Fiori原生应用。


那么它又是用什么技术开发的呢?仔细观察url:


https://:44311/sap/bc/ui5_ui5/ui2/ushell/shells/abap/FioriLaunchpad.html?sap-client=928&sap-language=EN#Material-create?sap-ui-tech-hint=GUI


发现了这个片段:sap-ui-tech-hint=GUI


这暗示我们,该应用的UI是基于SAP GUI绘制的。


我们在浏览器里打开该应用:

为什么SAP GUI里的传统事务码能通过Fiori Launchpad启动

为什么SAP GUI里的传统事务码能通过Fiori Launchpad启动

发现除了外观风格外,二者的字段名称,位置,布局完全一致。结合种种我们观察到的结果,显然这个Create Material tile指向的应用是基于SAP GUI里MM01事务码包裹而成的。


在浏览器里打开该tile,在Chrome开发者工具中把tile所属的Fiori Catalog ID记录下来:SAP_CMD_BC_PR_MAINT

为什么SAP GUI里的传统事务码能通过Fiori Launchpad启动

为什么SAP GUI里的传统事务码能通过Fiori Launchpad启动

为什么SAP GUI里的传统事务码能通过Fiori Launchpad启动

ITS即Internet Trasaction Server,SAP Netweaver里一项非常古老的技术,这个技术提供的组件能解析使用SAP GUI技术开发出的screen的元数据并渲染成HTML,从而能够让SAP GUI的事务码运行在浏览器里。


关于SAP ITS in SAP NetWeaver Application Server的更多介绍,参考SAP帮助文档:


https://help.sap.com/saphelp_nw70/helpdata/en/46/668d4b72255de4e10000000a1553f6/frameset.htm


为什么SAP GUI里的传统事务码能通过Fiori Launchpad启动

为什么SAP GUI里的传统事务码能通过Fiori Launchpad启动

为什么SAP GUI里的传统事务码能通过Fiori Launchpad启动

为什么SAP GUI里的传统事务码能通过Fiori Launchpad启动

为什么SAP GUI里的传统事务码能通过Fiori Launchpad启动

为什么SAP GUI里的传统事务码能通过Fiori Launchpad启动

为什么SAP GUI里的传统事务码能通过Fiori Launchpad启动

《终结者》里最经典的机器人型号T-800,内置金属骨架,外表覆盖生物组织以及仿生皮肤,由于外表和人类几乎一模一样,所以能轻松渗透到人类群体。然而人类忠实的伙伴,狗,可以轻松分辨出T-800和普通人类。


希望本文Jerry介绍的这些内容也能帮助大家轻松分辨Fiori原生应用和采用SAP ITS技术渲染的伪Fiori应用。感谢阅读。


更多阅读


Jerry的通过CDS view + Smart Template 开发Fiori应用的blog合集


SAP Fiori应用的三种部署方式


Jerry的Fiori原创文章合集


SAP成都C4C小李探花:浅谈Fiori Design Guidelines


SAP Fiori + Vue = ?


Fiori Fundamentals和SAP UI5 Web Components


30分钟用Restful ABAP Programming模型开发一个支持增删改查的Fiori应用


SAP Fiori应用索引大全


介绍一种Fiori标准应用的增强方式


揭开SAP Fiori编程模型规范里注解的神秘面纱 - @ObjectModel.readOnly工作原理解析


为什么SAP GUI里的传统事务码能通过Fiori Launchpad启动并运行在浏览器里


上一篇:MySQL字符编码设置


下一篇:3GPP加速标准制定时间表 AT&T宣布计划2018年底推出5G移动服务