Shanghai Blog Posts 博客
发表博客,分享产品知识,技能,心得体会
cancel
Showing results for 
Search instead for 
Did you mean: 
背影很迷人
Discoverer

SAP Build Work Zone是BTP上最新的企业门户平台服务,通过Work Zone,企业可以更好的配置企业应用统一入口。与SAP Portal类似,Work Zone底层也是基于SAP Fiori Launchpad,所以Work Zone的插件开发,利用的就是Fiori Luanchpad的插件开发技术。

与On premise系统中的SAP Fiori Launchpad一样,通过插件的开发,开发人员可以扩展SAP Fiori Launchpad的基本功能,可以在SAP Fiorilaunchpad中添加自定义代码,在页面上添加新的元素等。

Fiori Luanchpad中的插件(Shell plugin)开发使用SAPUI5开发技术,SAP Business Application Studio作为开发平台。本文会展示如何开发、打包、部署Shell Plugin插件以及如何并在Work Zone中配置。

准备工作:请在SAP BTP中创建以下服务,并分配用户权限。

  • SAP Business Application Studio
  • SAP Build Workzone/ SAP Portal/ SAP BTP Fiori Launchpad

1. SAP BAS开发环境准备

打开SAP BTP中的BAS服务,创建SAP Fiori的开发空间。

image.png

 

_0-1713253846901.png

 

2.BAS中开发插件

Shell Plugin应用本质上是一个MTA中的Freestyle的Fiori应用。所以与Fiori应用开发一样,需要创建MTA工程,添加Managed Approuter等。未来可以在MTA中添加CAP、Nodejs或者JAVA等后端程序,并连接SAP HANA Cloud, SAP Event Mesh等服务实现复杂需求。本文仅展示如何使用模板创建Fiori应用,不会涉及到后端程序。

具体步骤如下:

选择 "New Project From Template"并选择"SAP Fiori Application"模板_1-1713254964815.png

_2-1713255172952.png

选择Basic模板,并填入所有参数_3-1713255397163.png

Data Source:None

_4-1713255509156.png

设置Viewname(本文中的开发不涉及的到view和controller,所有的开发都在componentjs中进行)

_5-1713255673500.png

设置应用基本信息,并勾选Add deployment configuration以及Add FLP configuration。

_7-1713255782163.png

部署target选择CF环境。

_8-1713255839135.png

设置 Semantic Object为Shell,Action为plugin

_9-1713255892503.png

完成设置,创建mta工程成功,webapp为Fiori应用所在文件夹,mta.yaml文件为mta工程的描述文件。

_10-1713256293230.png修改Fiori应用Manifest文件,添加Shell Plugin参数:修改类型为component,添加hideLauncher,添加flp类型,请参考文档:adding-shell-plugin 

_11-1713256569344.png

_12-1713256596665.png

添加代码,添加自定义menu等。自定义代码需要添加在component.js中,本文自定义代码实现两个功能:

代码可参考SAP官方github SAP-samples 

  1. 当用户打开workzone时,弹出对话框显示自定义消息
  2. 在Fiori launchpad的表头中添加自定义button。

获取ushell的render对象

_0-1713320775482.png

在component.js的init方法中添加自定义button 以及dialog。

_1-1713320873982.png

代码开发完成后,将mta工程打包并发布到BTP CF环境中。

在mta.yaml文件上右键打开菜单,选择Build MTA Project

_2-1713320930097.png

打包完成后,选择mta_archives中的mta文件右键打开菜单选择 Deploy MTA archive,将工程部署到BTP中

_3-1713321052773.png

部署结束后,在BTP中可以看到创建的instance以及Shell plugin 程序

_7-1713323806686.png

_6-1713323710348.png

Workzone配置插件

打开workzone的site配置页面

_8-1713323911268.png

 

_9-1713323965064.png

channel manager页面刷新 HTML5 apps

_10-1713324003323.png

content manager页面中的content explorer,选择HTML5 app 

_17-1713326147278.png

 

_18-1713326183013.png

 

在content explorer中可以看到刚部署的Shell plugin 应用,注意确认应用type为shell plugin,选择然后点击add添加应用

_13-1713324230312.png

回到content manager,并将开发的应用添加到预定义好的everyone角色中。

_14-1713324338689.png

workzone配置完成,现在可以打开workzone测试!

打开workzone的site 可以看到,我们添加的dialog已经显示出来,并且在左上角添加了我们的自定义button。

_15-1713324446279.png

打开F12,代码已经加载成功。

_16-1713324544948.png

 

恭喜你,插件开发成功!

 

2 Comments
AlexDong
Product and Topic Expert
Product and Topic Expert

感谢分享!很全面细致!

tinaren
Advisor
Advisor

感谢分享

Top kudoed authors