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

发布时间:2022-01-19 14:01:53 作者:柒染
来源:亿速云 阅读:179

这篇文章跟大家分析一下“SAP GUI里的传统事务码为何能通过Fiori Launchpad启动”。内容详细易懂,对“SAP GUI里的传统事务码为何能通过Fiori Launchpad启动”感兴趣的朋友可以跟着小编的思路慢慢深入来阅读一下,希望阅读后能够对大家有所帮助。下面跟着小编一起深入学习“SAP GUI里的传统事务码为何能通过Fiori Launchpad启动”的知识吧。

我们可以把SAP GUI里的传统事务码放到SAP Launchpad里启动,并在浏览器里运行。

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

这是SE80在浏览器里运行的界面:

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://<hostname>: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里S/4HANA的物料主数据创建事务码MM01的界面做对比:

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启动

在Fiori Launchpad里根据该ID打开对应的catalog,发现有好几个和Material相关的跳转对象,其类型都为SAP GUI里的Transaction:

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

我们之前发现的url片段,sap-ui-tech-hint=GUI,就配置在这里:

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

跳转的目的事务码ID MM01,配置在此处。同时Device Types里只支持桌面,这没什么问题,因为SAP GUI通过浏览器渲染出来的界面,不像SAP UI5那样具有响应式布局的功能,因此只能运行在桌面浏览器里。

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

在运行时,一旦SAP UI5框架代码解析到sap-ui-tech-hint参数的值为GUI,就执行对应的渲染逻辑。

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

在Chrome开发者工具的Sources标签页里,能看到gui/sap/its这个路径片段。

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

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

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

SAP Help Portal

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

如果我们想体验ITS,也很容易。SICF事务码,输入webgui,执行:

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

发现这个节点正好位于本文正在讨论的its节点下:

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

右键单击webgui,选择Test Service:

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

自动弹出了浏览器窗口,显示的页面同使用SAP GUI登录系统后显示的初始页面一致。

接下来可以像使用SAP GUI那样,在浏览器里输入事务码并执行了。比如SE38进入ABAP编辑器:

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

关于SAP GUI里的传统事务码为何能通过Fiori Launchpad启动就分享到这里啦,希望上述内容能够让大家有所提升。如果想要学习更多知识,请大家多多留意小编的更新。谢谢大家关注一下亿速云网站!

推荐阅读:
  1. SAP API开发方法有哪些
  2. 怎么将自开发的SAP UI5应用以tile的方式配置到SAP Fiori Launchpad

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

sap gui fiori launchpad

上一篇:如何分析SAP S/4HANA系统Fiori UI上Adapt UI按钮显示与否的控制逻辑

下一篇:html5中有哪些常用框架

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》