Exploring Launchpad Plugins

Objectives
After completing this lesson, you will be able to:

After completing this lesson, you will be able to:

  • Demonstrate how to design, develop and deploy Launchpad Plugins to SAP Build Work Zone

Key Concepts how to Design, Develop and Deploy Launchpad Plugins to SAP Build Work Zone

The previous lesson explained the design and development of UI Integration Cards. It's the key technique to bring business information to SAP Build Work Zone.

But what if it is required to add a notification bell showing alerts or news from an SAP or third-party system right in the header bar, or add links to corporate security policies in the user menu or user settings? This is where launchpad plugins come into the picture!

Technically, a launchpad plugin represents an HTML5 application loaded and rendered together with the Launchpad component of SAP Build Work Zone. It allows you to add your own buttons to the right or left side of the header bar, sub-navigation bar, user menu items, and user settings.

Watch the following video to learn more about the design and development of Launchpad plugins.

  • The Project can be created from scratch using the Start from template option on the home screen. If the home screen was closed, this option can be also triggered from the menu FileNew Project from Template.

    This option is the best and recommended for all new developments of launchpad plugins.

  • There might be the case that the launchpad plugin is already developed and stored in a corporate source code repository, for example, Microsoft Azure DevOps, GitHub, GitLab, and so on. In this case, the source code can be cloned using the Clone from Git option available on the home screen. If the home screen was closed, the git clone operation can be also executed from terminal: TerminalNew Terminal.

Let's create a Project from the template:

While creating the launchpad plugin involves the use of the template wizard for SAPUI5 applications, it is necessary to maintain the bare minimum of mandatory parameters:

  • No destination to backend system required
  • No FLP configuration required
  • No advanced options required

It is important to choose Cloud Foundry as the deployment option for the project – it will be used in the context of SAP BTP and executed within SAP Build Work Zone. Besides that, it is highly recommended to choose MTA (Multitarget Application) – it will simplify deployment of the launchpad plugin to SAP BTP subaccounts.

When the project is created, it is considered as an SAPUI5 application (due to the template used). It is important to make changes in the file manifest.json.

Note
The details of how to create the launchpad plugin is also outlined on the SAP Help Portal for SAP Launchpad service. While the documentation is published for SAP Launchpad service, this part is also fully applicable to SAP Build Work Zone and SAP SuccessFactors Work Zone.

On the code level, the interaction with header bar, user menu, and settings is done through shell renderer instance (represented as class sap.ushell.renderers.fiori2.Renderer in SAPUI5 framework). The list of all available methods is published on the documentation portal for SAPUI5. For instance, the method addHeaderItem allows you to add a button to the header bar.

While the development experience of UI Integration Cards includes a real-time preview pane (without the need to deploy UI Integration Cards to SAP Build Work Zone), such functionality is unavailable for launchpad plugins.

When the design and development is completed, it's time to build the MTA project and then deploy the generated MTA archive to the SAP BTP subaccount with SAP Build Work Zone. The MTA archive can be generated from the context menu of the file mta.yaml. When the MTA archive is generated, it is available in the subdirectory mta_archives. From there, a developer can trigger deployment. This is the first option to deploy the MTA archive with the launchpad plugin to SAP Build Work Zone.

In contrast to UI Integration Cards, Launchpad Plugins and HTML5 Applications are deployed right to the SAP BTP subaccount. It is not necessary to set up a service instance of SAP Build Work Zone or SAP SuccessFactors Work Zone for deployment purposes in this case.

Note
Since deployment is done to the SAP BTP subaccount, the developer needs the respective authorizations on the level of the subaccount (and not SAP Build Work Zone). Otherwise, the deployment will fail.

The second option to deploy the MTA archive with launchpad plugins is to use the Command Line Interface (CLI) for Cloud Foundry. This option works well for CI/CD scenario as well as when it is required to have a segregation of duties between developers and administrators.

Note
Keep in mind that there is no UI in SAP BTP cockpit to deploy MTA archives manually. MTA archives can be deployed from SAP Business Application Studio or using CLI for Cloud Foundry only.

When a launchpad plugin is deployed to the SAP BTP subaccount, it appears in the HTML5 Applications menu accordingly:

Being HTML5 applications, launchpad plugins have the same characteristics:

  • The source code can be downloaded directly from SAP BTP cockpit.
  • The logs (for troubleshooting purposes) can be accessed from SAP BTP cockpit.

The last step is to add and set up the launchpad plugin in SAP Build Work Zone. This is done through the Content Manager and involves the following steps:

Save progress to your learning plan by logging in or creating an account