Quantcast
Channel: SAP Fiori
Viewing all 257 articles
Browse latest View live

Build Chart and Table representation via Analytics Path Framework

$
0
0


In Fiori we can easily generate Chart and Table representation with the help of Analytics Path Framework.

It is only necessary for application developer to prepare data source for the visualization, that is, the CDS view development. The left rendering work is done by APF.

 

In some of my previous blog I have already introduced the step how you can build a Fiori application with the help of Smart Template + CDS view within a couple of minutes. In this blog the CDS view is again leverage to render some fancy chart.

 

Step1 create necessary CDS view and automatically generate OData service

 

To make concept easily understood, I have created a simple ABAP database table:

clipboard1.png

It has only two entries which will be rendered as column chart by APF later.

 

Then I have created a cube view by pasting the following source code:

@EndUserText.label: 'Jerry cube view'
@Analytics.dataCategory: #CUBE
@VDM.viewType: #COMPOSITE
@AccessControl.authorizationCheck:#CHECK
@AbapCatalog.sqlViewName: 'zprdcube'
define view Z_C_Prod_Cube as select from zprd_query{   key zprd_query.prod_id,  zprd_query.prod_text,  @DefaultAggregation: #MAX  zprd_query.quantity
}  

And then create a query view ( annotation @Analytics.query: true ) and automatically publish it as OData service ( annotation @OData.publish: true)

 

@EndUserText.label: 'Jerry query verification'
@VDM.viewType: #CONSUMPTION
@Analytics.query: true
@AccessControl.authorizationCheck:#NOT_ALLOWED
@AbapCatalog.sqlViewName: 'zprdquery'
@OData.publish: true
define view Z_C_Product as select from Z_C_Prod_Cube {  key Z_C_Prod_Cube.prod_id,  Z_C_Prod_Cube.prod_text,  @DefaultAggregation: #MAX  Z_C_Prod_Cube.quantity
}    

Step2 Modelling in APF Modeler

 

Now go to APF configuration Modeler:

clipboard2.png


create a new application with Semantic Object with default value "FioriApplication":

clipboard3.png

clipboard4.png

Create a new configuration:

clipboard5.png

For Smart Filter Bar, specify the OData service published by CDS view we just create:

clipboard6.png

Then create a new category, which will be used by end user as a entry point to use APF:


clipboard7.png

Select the created category and create a new step based on it:

clipboard1.png

Choose a meaningful name for the step, and specify properties which will be used to render the chart.

clipboard2.png

The last step is to create a Column chart as representation for the step just created.

clipboard3.png

And then create a table representation which acts as drill down display, that is, when I click a certain product in column chart, I would like to have its detail information displayed by this table chart. Once saved, click Execute button to load the created application.

clipboard4.png

Step3 analysis in APF

 

From launched application url we can find that the application is loaded based on the configuration we created in step 2.

click button "Add Analysis Step"

clipboard5.png


Choose created category:

clipboard6.png

and choose step:

clipboard7.png

then choose column presentation:

clipboard8.png

Then column chart is rendered based on the content in query view. Hover mouse on chart and detail information is displayed via tooltip.

clipboard9.png

Now click the chart part for Z02,

clipboard10.png

This time choose "Table Representation":

clipboard11.png

then the detail information for Z02 is displayed in table style:

clipboard12.png

Other types of Chart

Line Chart:

clipboard1.png

Bar Chart:

clipboard2.png

Pie Chart:

clipboard3.png


Access the OData service exposed by your CDS view via Smart Business Tile in S4HANA system

$
0
0


In my previous blog Build Chart and Table representation via Analytics Path Framework

I introduced the step how to render the data coming from CDS view in various chart types via Analytics Path Framework, which are actually a set of Fiori application. In this blog, I will demonstrate the steps how to configure the modeled application into a Smart business KPI tile in S4HANA system, so that customer can conveniently use the analytics application by clicking tile in Fiori launchpad.

 

The CDS views created in previous blog are reused here.

 

Approach1: consume OData service via Generic APF runtime application


With this approach, it is not necessary for you to create your own Fiori application. Instead, your modeled configuration is launched by APF generic runtime application.


1. Create a new KPI definition:

clipboard1.png

maintain the four mandatory attributes below. For Semantic Object/Action for KPI itself, keep them empty.

clipboard2.png

Then create a new evaluation based on this KPI:

clipboard3.png

Don't forget to activate your evaluation. Once done, you should have the following artifacts: one KPI and one evaluation:

clipboard4.png

2. Select evaluation and click button "Configure Tile":

clipboard5.png

Here you can create a new Smart Business tile:

 

For three mandatory attributes, you must specify the hard coded values as highlighted below:

clipboard6.png

Assign this tile to a given catalog. And for Application Parameter, choose parameter name as sap-apf-configuration-id and value as convention <application guid>.<configuration guid>.

clipboard7.png

How to get application guid and configuration guid? Just open your application in APF Configuration modeller:

clipboard8.png

clipboard9.png

3. Once tile creation is done, add the tile to catalog group via personalization:

clipboard10.png

Save the change, now you should see the Smart business tile in launchpad.

clipboard11.png

Enter the tile, you can now see rendered chart as expected:

clipboard12.png

Approach2: Configure the tile navigation via Semantic object + action

 

For this approach, you should have a working UI5 application deployed on BSP repository. In my example it could be found in frontend system's BSP repository with name DEMO_SD_SVA_S1 via tcode SE80.

clipboard1.png

1. Open Fiori launchpad design, create a new target Mapping for a given catalog:

clipboard2.png

2. Specify Semantic Object + action as below.

 

For url, the format is /sap/bc/ui5_ui5/sap/<bsp name>

For Parameter, the name is sap-apf-configuration-id and the value is <application guid>.<configuration guid>.

clipboard3.png

3. Create a new evaluation and click button "Configure Tile":

clipboard4.png

Here in navigation property maintenance area, select Drill down as Others and specify Semantic object and action as the same value you have entered in step 2. Save this tile configuration.

clipboard4.png

4. Now you should be able to search the tile created in step3 and add it to your launchpad via personalization.

clipboard5.png

clipboard6.png

One solution for can not load launchpad Tile

$
0
0

This is a short blog for issues when launchpad can't load tiles.

 

Issues typically see following screenshot:

Capture.JPG

 

If you can exclude the authorization issue, please try following:

     1. Logon Gateway system where launchpad deployed, enter Tcode: se38

     2. Execute the program “/UI2/INVALIDATE_GLOBAL_CACHES" in execution mode

 

Then issue solved.

 

This issue often happens after any system status change (like resetting Fiori services / updating/upgrading Gateway systems) .

 

 

Hope it helps!

GW+RFC vs Backend for Service Development

$
0
0

I keep hearing questions about the choice of system for the service development. I thought it's useful to share my views with the community and receive inputs from other experts. Based on my experience i have put together below comparison between backend based service development vs GW+RFC based service development.

 

 

 

Backend

Gateway/RFC

Modeling

Data Dictionary objects can be used for creating the model, and thus making the development quicker and type conflict error free

No access to DD objects, and hence modeling has to be done from the scratch. Type conflict issues has to be taken care while doing the development

SAP’s Approach

Majority of the services developed by SAP uses the backend as the service development environment.

Very few services, are developed using the gateway-RFC approach as business scenario demands multiple backend systems – MY Inbox App

Service

Provisioning

Services can directly consumed by HCP/SMP or other consumption enabled systems

Can be consumed, however adds additional interface point and can affect the performance

Features

Top and Skip functionalities are performance effective as they are applied to the DB query

Top and Skip is applied on to the RFC output and thus not utilizing the full benefit of the feature

Guideline

Existing classes/code (Assistance Classes from webdynpro ) can be reused directly

Moving away from Class/Methods approach to FM based approach. Though there are already data provider classes available (Assistance classes) from Webdynpro, they can't be used directly as the development approach demands RFCs

 

To conclude, backend is the system to choose for service development unless there are multiple backend systems involved in the data consumption.

 

Thanks,

Prasanna

SAP Fiori My Inbox 2.0 SP02: Features

$
0
0

We released a new Service Package SP02 for the 2.0 version of the SAP Fiori application "My Inbox" in May 2016.

You could find the details in this note 221151.

 

List of features added in this SP:

  • Custom Attributes in List View
  • Options to integrate different applications UIs into My Inbox

 

Let's look at these features in detail:

 

Custom Attributes in List View

 

With this feature, custom attributes with certain pre-defined names can be displayed in the Master List.

 

Following can be achieved with this feature as shown in the image:

  1. Replace Task title
  2. Display a KPI indicator (Number)
  3. Display a KPI unit
  4. Display one additional custom attribute

 

How does this feature work

 

  • There are maximum of 4 custom attributes that can be shown in the List View.
  • These attributes which are visible in List, is also displayed in the Detail View header data.
  • These attributes should have following pre-defined names
    • CustomTaskTitle
    • CustomNumberValue
    • CustomNumberUnitValue
    • CustomObjectAttributeValue
  • These pre-defined names are mapped to the locations in the list view as displayed in the following screen-shot.
  • Attributes which are shown in the list are not displayed in the description tab of the detail view for the selected task.

 

A1.png

 

This feature is disabled in My Inbox by default.To enable it, the administrator needs to configure an additional parameter in the Tile configuration for My Inbox. The parameter is showAdditionalAttributes=true needs to be provided while launching the app as shown in the image below:

 

A2.png

 

UI Integration Options in My Inbox

 

It is now possible to navigate to other application types configured via an intent. (Web Dynpro, Transaction etc) including the SAPUI5 Fiori applications. Refer the note 2305401 for more details.

 

Following three different Intent based App navigations are supported in My Inbox:

 

Embed in Detail View on Task Selection

 

The application is rendered into the detail view of My Inbox on selecting a task in master list. The header and toolbar in the detail screen is provided by My Inbox as shown below. The user can perform all the default actions provided by My Inbox on the selected task.

A3.jpg

A target mapping for the target SAPUI5 Fiori application should exist in the Launchpad designer with the value of the parameter openMode set to embedIntoDetails as follows:

 

A4.png

 

Embed in detail view on 'Open Task' action

 

The application is rendered into the detail view of My Inbox on performing the ‘Open Task’ action for the selected task in My Inbox. My Inbox does not render any header or footer in this scenario and they should be provided by the integrated application.The application can choose to have its own set of actions in the footer bar.

 

opentaskaction.jpg

 

A target mapping for the target SAPUI5 application should exist in the Launchpad designer with the value of the parameter openMode set to replaceDetails as follows:

 

opentTaskIntentConfig.png

 

External

 

Cross Application navigation to an external application is triggered on choosing the ‘Open Task’ button from My Inbox detail view as shown below. In this scenario the user is navigated away from My Inbox to the configured SAPUI5 application. It is recommended that the integrated SAPUI5 Fiori Application provides a ‘back’ button, which can be used to navigate back to My Inbox.

 

external.jpg

 

A target mapping for the other SAPUI5 application should exist in the Launchpad with the value of the parameter openMode set to external as follows:

 

externalIntentConfig.png

Translating standard SAP Fiori apps into your own language

$
0
0

Introduction

SAP is rapidly developing a great number of SAP Fiori Tiles. Users are delighted about the functionality, but unfortunately not all languages are supported.

For example, Dutch language is not provided for the standard Tiles.

Schermafbeelding 2016-05-27 om 11.41.38.png

 

Still, customers would like to have their Tiles available in their own language. How to handle?

There are actually 3 steps:

  1. 1.     Tile title
  2. 2.     Tile text elements
  3. 3.     Messages

 

I’ll explain the steps using the standard SAP Tile Customer Invoices.

Step 1 - Tile title

The Tile title is actually defined in the tile catalog. To translate the tile, you need to start the Launchpad Customizing. The URL is http://<yourserver>/sap/bc/ui5_ui5/sap/arsrvc_upb_admn/main.html?scope=CUST

 

You need to logon in the language to which you want to translate.

 

  1. 1.     Create new catalog by using existing standard catalog and dragging it to left bottom.

Schermafbeelding 2016-05-27 om 12.40.52.png

In the pop-up screen enter the name of the new catalog:

Schermafbeelding 2016-05-27 om 12.40.59.png

 

  1. 2.     Rename all tiles to your description (Dutch in this case)

 

Enter Title and Subtitle. Don’t forget to save.

Result:

Schermafbeelding 2016-05-27 om 12.45.11.png

 

  1. 3.     Create new catalog group

First click om Groups on top left. Then click on button ‘+’ on bottom.

Schermafbeelding 2016-05-27 om 12.46.23.png

Create a new group with a clear description and ID and save it.

 

 

  1. 4.     Add tiles by clicking on ‘+’  in tiles

First select the catalog to choose from. This is the catalog you created in the first two steps.

 

All tiles are presented. Click on the ‘+’ under each tile you want to add to your group.

Schermafbeelding 2016-05-27 om 12.47.21.png

 

When you’re done, go back to the group screen.

 

Now your new Fiori Catalog Group is created.

 

  1. 5.     Create new PFCG role for your new Fiori Catalog Group and add this to your user

 

In Gateway, create new single role in transaction PFCG.

 

Schermafbeelding 2016-05-27 om 12.49.58.png

Enter the name of your role and a description.

Schermafbeelding 2016-05-27 om 12.51.02.png

Click on tab Menu.Click on button and choose SAP Fiori Tile Group

 

Add your newly created Tile Group from step 4.

Schermafbeelding 2016-05-27 om 12.51.41.png

Click on button  and choose SAP Fiori Tile Catalog. Add your newly created Tile Catalog from step 1.

 

Schermafbeelding 2016-05-27 om 12.53.00.png

Save your new role and add this to your user.

 

Logon to your Fiori Launchpad again. Your new group will be available now on your homepage.

Schermafbeelding 2016-05-27 om 12.54.02.png

 

Your tiles now all have your own description (in your own language).

 

However, your tile itself is still not in Dutch:

Schermafbeelding 2016-05-27 om 12.57.43.png

 

Step 2 - Tile Labels

There may be more ways to translate tiles, but I’ll be using the solution by enhancing the BSP application and adding a new properties file for your own language to the BSP application.

 

To find the name of the BSP application, you can go to the SAP Fiori Reference Library.

 

In the Implementation Information, you can find the name of the BSP application under header Configuration and then SAPUI5 Application.

 

  1. 1.     Start transaction SE80 in your Gateway system.

Schermafbeelding 2016-05-27 om 13.00.10.png

Under the folder Page Fragments, open the folder i18n.

  1. 2.     Copy existing properties file to a new file for your own language

 

Select one file and right click on it and select option Copy

Schermafbeelding 2016-05-27 om 13.01.05.png

 

Enter the new name under Page. The format is:

i18n/i18n_<iso code for your language>.properties

 

In our case this is i18n/i18n_nl.properties

 

System will now ask for an object key. Request this via SSCR keys via http://support.sap.com/sscr

 

Schermafbeelding 2016-05-29 om 11.22.55.png

Now edit all texts to your own needs. Save and activate the changes.

 

The texts will still not appear in your own language. You need to clean up your cache first.

  1. A.    On gateway execute program /UI2/INVALIDATE_GLOBAL_CACHES
  2. B.    On Gateway clear cache via transaction SMICM à Goto à HTTP-PlugIn à Server Cache à Invalidate Globally
  3. C.     Restart your browser

Now your Tile is translated.

Schermafbeelding 2016-05-27 om 14.24.46.png

 

Step 3 - Tile Messages

We’re almost there. Now we still need to translate some messages that pop-up dynamically.

These message are located in a message class on your backend system. In this case, it is SAP ERP.

 

  1. 1.     Start transaction SE91 and enter message class

For our Tile, the message class is CM_SRA021_INVOICE.

 

  Schermafbeelding 2016-05-27 om 11.48.07.png

 

  1. 2.     Select the messages and translate each individual text via Goto ->Translation

 

Schermafbeelding 2016-05-27 om 11.48.41.png

 

After the translation is done, refresh your browser. Now the message is also displayed in Dutch.

 

Schermafbeelding 2016-05-29 om 10.57.37.png

Extending People Profile app - issues and solutions

$
0
0

Hi,

 

recently I was extending the Fiori People Profile app and came across several issues which I haven't had before with other apps, so I have  decided to share my experience with you...maybe it will be useful for some of you

 

Issue 1: After creating an extension project in Web IDE and running the extended app, I was getting a blank page with the following error.

Uncaught Error: failed to load 'sap/hcm/lib/common/library.js' from resources/sap/hcm/lib/common/library.js: 404 - Not Found

Solution : Putting the following code in the Component.js file of the extended app solved the issue:

(function() {
 jQuery.sap.registerModulePath("sap.hcm.lib.common", "/sap/bc/ui5_ui5/sap/hcm_common/sap/hcm/lib/common/");
 }());

Issue 2: When creating controller extensions with Extensibility Panel in WEB IDE, the controller name was  showing still the original controller name. Usually the name of the extended controller is automatically changed to the custom controller name.

Below is the example of the extended QualificationsExpandedControllerCustom.js...as you can see the name is still QualificationExpandedController.

extended controller issue.JPG

 

Solution: The Controller name should be changed to the custom controller name :

people prof ext issue.JPG

 

Issue 3: After creating the extension forQualificationsExpandedController from Extensibility Panel in WEB IDE (replacing the controller with the copy of the original controller)and running the app without doing any changes, I could see that the qualification list was doubled up…

 

Solution: Commenting  the onInit() function and leaving only the buildUI:function() solved the issue.

 

Issue 4: After deploying the app from WEB IDE to SAPUI5 ABAP repository, the app was not working from Fiori Launchpad. I was getting an error that the Component.js was not found.  The problem was that the URL in Component.js was the following:

 

url: jQuery.sap.getModulePath("hcm.people.profile.hcmpeopleprofileExtension") + "/../../HCM_PEP_PROFILE"


(I don't know why it was changed to this...never had that with other apps...)


Solution : Changing the above mentioned url in Component.js to url: “/sap/bc/ui5_ui5/sap/HCM_PEP_PROFILE” solved the issue.


 

I hope this will be helpful

Manage Fiori or OpenUI5 i18n process with this helper tool

$
0
0

Introduction

 

Hi UI5 developers,

 

I would like to introduce a helper tool we wrote for ui5 i18n(internationalization) process.

 

Being open source is an undisputable advantage in web development. I'm glad SAP went open source with ui5 technology and we are here to contribute back. I would like to thank Medepia IT Consulting for enabling this work.

 

In short, it solves one major and three minor problems below and we find it useful as projects get bigger.

  1. There can be an i18n key in .view.xml which is not defined for a language(or all).
  2. There is no easy way to see where a property is used.
  3. There can be unnecessary properties that are unused in views.
  4. Property files can get disorganised.

 

This tool creates .help.properties file for each .properties file. Benefits are:

  1. There are entries at the top of the file for missing properties for each language.
  2. Usage location is written under each property.
  3. Unused properties are shown at the top of the file.
  4. Properties are grouped based on usage locations.

 

This tool doesn't modify original property file for safety. We thought that it is better to let users change content manually.

 

At the time of writing, the tool doesn't read controller or javascript view files for i18n strings. Maybe in the future we can bring this feature based on our needs and your feedback.(pull request anyone?)

 

Example

Here is an example *.properties file(click for bigger image)

medepia-ui5-i18n-helper-1.png

Here is the result *.help.properties file(click for bigger image)

medepia-ui5-i18n-helper-2.png

 

Usage

Prerequisites: Node.js should be installed which comes with npm(link: Node.js)

 

Open cmd.exe or linux shell, install package:

npm install -g ui5-i18n-helper

 

Then go to project directory and execute helper tool with command:

ui5i18n

 

And that is all! Your *.help.properties files should be created next to *.properties files. You can run this command repeatedly as you change project files.

 

Thanks for reading!


Consumption of oData services from non-ABAP systems in Fiori applications which are deployed in ABAP Gateway

$
0
0

As of current release of Gateway (7.40 and 7.50),  Gateway doesn't support registering service proxies for oData services developed other than ABAP stack.  But we may need to access the oData services which are developed in non-ABAP systems or any other third party systems.  In one of my insurance project which has a complex landscape comprising ABAP based systems, Java and other third-party systems and also integration with SucessFactors running in cloud.   I am detailing what is used in standard SAP shipment already with two options for the non-ABAP use cases.

 

  1. Rest Tunneling
  2. Direct expose of oData service

Rest Tunneling is nothing but a forwarder which receives request in GW Hub and forwards the request to non-ABAP system through ABAP REST Client. This approach is used in SAP JAM integration in Fiori Launchpad.

 

SAP Insurance and Quotation Management (FS-QUO in short) is a Java based system and it is exposed through Web dispatcher directly .. SAPUI5 applications makes direct oData service call to FS-QUO as shown below.

 

 

blog.png

  

How to use SAP HCP, mobile service for SAP Fiori - part 1

$
0
0

Welcome to this 4-part series on How to use SAP HCP, mobile service for SAP Fiori.

 

In this blog post, we'll look at SAP HANA Cloud Platform, mobile service for SAP Fiori (aka Fiori mobile service or simply Fiori mobile), one of several newly introduced SAP HANA Cloud Platform (HCP) services.  SAP HCP mobile service for SAP Fiori is an end to end solution provided to customers with the goal of allowing them to quickly and simply deliver an optimized experience to users on mobile devices.  This new component of HCP is delivered to the market as part of SAP Fiori, cloud service, premium edition.

 

This blog post will cover the end-to-end scenario to create a Fiori app, deploying it to a Fiori Launchpad running as part of SAP HCP Cloud Portal.  Afterwards, we'll show how Fiori mobile can extract the app contents from the portal and create a customized hybrid application to a mobile user.  This application will have a consumer-grade UX, but will also include all the security, management and performance controls required for the mobile enterprise.

 

Part 1: An Introduction to SAP HANA Cloud Platform, mobile service for SAP Fiori

 

SAP has historically supported the mobilization of Fiori through a variety of technologies - SAP Web IDE for application development, the Hybrid Application Toolkit for hybrid app generation, the packager for embedding the UX into the app at deploy time, The Kapsel SDK for mobile features, HCPms for data management and Mobile Secure for app deployment and lifecycle management.  Those products are used by many customers today successfully.  In order to support the mobilization of Fiori apps at scale, SAP has introduced SAP HCP, mobile service for SAP Fiori.  Fiori mobile service leverages the components I just mentioned in an integrated, continuous flow that enables a rapid mobilization process.

 

Fiori mobile service provides the following key capabilities:

 

  • Build/Packaging service transforms your SAP Fiori web app into a native/hybrid app, necessary to leverage native device features.
  • App deployment service enables app lifecycle management and an enterprise app store app for deployment, ratings and reviews.
  • Data service provides infrastructure support for advanced mobile features such as push and offline.

 

Each of these features will be demonstrated as part of this comprehensive blog series.

 

Pre-requisites:

 

  1. A free Hana Cloud Portal trial account
  2. An Android device or emulator for testing

 

Step-by-step guide:

 

In order to make it convenient for you, we've split the above steps in 4 parts:

 

PartDescription
Part 1 - (this) Introduction

Register for HCP trial account and configuring components

  1. Enable Fiori Mobile service
  2. Create SAP Fiori Launchpad
Part 2 - App Dev

Create a sample Fiori App in SAP Web IDE

  1. Add a destination for OData service (backend for the Fiori app)
  2. Create a sample Fiori application in SAP Web IDE
  3. Prepare the application for packaging
  4. Deploy app to HCP and to the SAP Fiori Launchpad
Part 3 - Fiori Mobile configurationFiori Mobile Configuration
  1. Create an app subscription in HCP
  2. Create Android Signing Profile
  3. Create your Avanced Configuration File
  4. Use Fiori mobile build process (application wizard, application workflow, etc.)
  5. Executing the app on the device
Part 4 - Feature Management (coming soon)

Add Push Notifcation

Add Offline Support

 

Step 1:

 

The first thing you'll need is a free developer account on SAP HANA Cloud Platform.

 

1. Browse to sign up for a free account for the SAP HANA Cloud Platform.

2. Activate your account (via e-mail activation link you received)

3. Once you have activated your account, simply launch the HCP Cockpit

4. Now go to Services tab, locate and click on Fiori Mobile service

hcp_fms_disabled.png

5. Click Enable to enable Fiori Mobile service (the service provisioning may take up to fifteen minutes or more)

hcp_fms_enable.png

6. Let's go back to HCP Cockpit and go to SAP HANA Cloud Portal service (as we'll add a default Fiori Launchpad)

hcp_shcp_service.png

7. Click "Go to Service" to open Fiori Launchpad Cockpit

hcp_shcp_cockpit.png

8. Site Directory

  1. Click + button to add Fiori Launchpad

hcp_shcp_site_dir.png

9. Create Site

  1. Site Name -
  2. Template Source - select SAP
  3. Select SAP Fiori Launchpad Fiori Launchpad template
  4. Click Create

hcp_shcp_flp_creation.png

Upon creating the SAP Fiori Launchpad, you'll be logged into SAP Fiori Configuration Cockpit; simply close the browser tab and return to Admin Space

 

10. Click the drop-down arrow and click Publish site

hcp_shcp_flp_publish.png

NOTE: You'll be prompted with Alert to publish site... click Publish

 

11. If the site is not set to default automatically (there will be a globe w/ checkmark on upper right-corner), simply click drop-down arrow again, and set FLP to "Set as default"

hcp_shcp_flp_default.png

NOTE: The default launchpad is also created automatically by clicking on the Application URL link located on flpportal application configuration page (HCP Cockpit > Subscriptions > flpportal > Overview)

 

hcp_sub_flpportal_appurl.png

 

This concludes part 1 of this blog... On to part 2, creating a sample Fiori app

 

Credits

  • Mobile/UX - Johannes Alberti, Steve Lutarewych, Britt Womelsdorf, Mark Wright
  • Technology RIG - Dhimant Patel

How to use SAP HCP, mobile service for SAP Fiori - part 2

$
0
0

This blog post is continuation of a 4-part series on How to use SAP HCP, mobile service for SAP Fiori.

 

Part 2: Create a sample Fiori App in SAP Web IDE


In this second part, we'll create a sample Fiori app that we'll build upon and add other functionalities like push, offline, etc.  You may use an existing working Fiori app, however, please ensure you complete tasks #12 and #13.

 

In this post, we'll create a sample Fiori app in SAP Web IDE:

  1. Add a destination for OData service (this backend will populate data for the sample app)
  2. Create a sample Fiori Project from Template in SAP Web IDE
  3. Prepare Fiori app for mobile packaging
  4. Deploy app to HCP and to the SAP Fiori Launchpad from SAP Web IDE

 

Step-by-step guide:


1. In order to have some data in our app, let's create an HCP Destination for OData service.  Go to Destinations tab and click New Destinations tab

webide_destination.png

 

2. Add the following destination information

webide_destination2.png

3. Now we're ready to create a new project in SAP Web IDE.  Go to HCP Services and locate SAP Web IDE service

webide_service.png

4. At the Overview tab, you'll find SAP Web IDE URL, click to open (perhaps bookmark it for quicker access)

webide_url.png

5. Click New Project from Template to start creating our Fiori application

webide_create_app.png

6. Select Project Template

  1. Select SAP Fiori Master-Detail Application
  2. Click Next

webide_app1.png

7. Basic Information

  1. Provide Project Name
  2. Click Next

webide_app2.png

8. Data Connection - Provide Service Information

  1. Destination - Northwind
  2. URL - /V2/northwind/northwind.svc (press > arrow)
  3. Click Next

webide_app3.png

9. Template Customization - Fill out all required information noted with asterisk (*); rest of the fields are optional

 

Application Settings

  • Type* - Standalone App
  • Title* - Product Listing
  • Namesapce* - com.sap.fiori.Insert_AppName (this is referred to as app ID and will be used in Fiori Mobile Advance Configuration File (ACF))
  • Description - optional

webide_app4.png

Data Binding - Object

  • Object Collection* - Products
  • Object Collection ID* - ProductID
  • Object Title* - ProductName
  • Object Numeric Attribute - UnitPrice (optional)
  • Object Unit of Measure - none

webide_app4a.png

 

Data Binding - Line Item

  • Line Item Collection - Order_Details
  • Line Item Collection ID - OrderID
  • Line Item Title - Quantity
  • Line Item Numeric Attribute - none
  • Line Item Unit of Measure - none

webide_app4b.png

10. Run the app

  1. Open App Project folder
  2. Expand webapp folder and select index.html
  3. Click Run button from navigation menu

webide_app5.png

11. Your application preview mode will be opened in a new browser tab

webide_app6.png

 

12. Ready app for mobile deployment - Initially, the app will not be able to consume data on a mobile device.  The reason being only destinations with "/sap" in URI are being proxied by Fiori Mobile.  Therefore, you will need to append "/sap" in front of "/destinations..." in project.json, neo-app.json, and manifest.json files for your application.  Of course, this change will mean that your app will not successfully cosume data on a browser.

 

Here is what your code will look like:

 

before: uri: "/destinations/northwind/V2/northwind/northwind.svc/",

after: uri: "/sap/destinations/northwind/V2/northwind/northwind.svc/",

 

The simplest way is to use search function (right navigation search button):

  • Click Replace and put "/destionations" in Find and "/sap/destinations" in Replace (you'll be able to see list of files as well)
  • Search in - use drop-down to select your project
  • Click Replace All

webide_app7.png

 

13. Deploy app to HCP

  1. Right-click project folder
  2. Select Deploy
  3. Select Deploy to SAP HANA Cloud Platform

webide_deploy1.png

14. Login to SAP HANA Cloud Platform

webide_deploy2.png

15. Update Application Details (if necessary); click Deploy

webide_deploy3.png

16. Upon successful deployment; Click Register to SAP Fiori Launchpad

webide_reg1.png

17. General Information - fill out required information and click Next

webide_reg2.png

18. Tile Configuration - fill out required information and click Next

webide_reg3.png

19. Assignment - fill out required information and click Next

webide_reg4.png

20. Confirmation

webide_reg5.png

21. Successfully Registered

  1. Optionally, Open SAP Fiori Launchpad (to preview your app); remember app may not run properly due to destination changes made earlier

webide_reg6.png

 

This concludes part 2 of this blog... On to part 3, configure Fiori Mobile and test app on your mobile device.

How to use SAP HCP, mobile service for SAP Fiori - part 3

$
0
0

This blog post is continuation of a 4-part series on How to use SAP HCP, mobile service for SAP Fiori.

 

Part 3: Configure Fiori Mobile and build Fiori app


In this third part, we'll configure Fiori Mobile and test our app on a live device.  You'll learn how to...

  1. Subcribe your Fiori app in HCP
  2. Create Android Signing Profile
  3. Create your Avanced Configuration File
  4. Use Fiori mobile build process (application wizard, application workflow, etc.)
  5. Executing the app on the device

 

Pre-req:

 

1. Subscribe Fiori app in SAP HANA Cloud Platform - At the moment, packaged SAP Fiori apps can only be created if subscribed as an HTML5 application in HCP.

  1. Open SAP HANA Cloud Platform Cockpit
  2. Click Subscriptions + add New Subscription
    1. Provider Account - click drop-down and select your account (e.g. P12345trial)
    2. Application - select your application (e.g. productlisting)
    3. Subscription Name - append "sub" at end of pre-populated appname (e.g. productlistingsub); note that this subcription name is your cloudComponentId in Fiori Mobile Advanced Configuration File
  3. Click Save

hcp_app_sub1.png

 

Step-by-step guide:

 

1. Open Fiori Mobile Admin Console

  1. Open HCP Cockpit
  2. Browse to Services > select Fiori Mobile
  3. Click Go to Admin Console

fms_url.png

2. Add Android Signing Profile

NOTE: If you using Apple Signing Profile, you will need to have an iOS Developer Account and must upload your Signing Certificate, private key pass-phrase, and provisioning profile.

  1. Open Account tab > Signing Profile
  2. Add New Profile (or use existing profile if you have one)
    1. You can create a signing profile if you have JAVA installed on your computer.  You can either use Windows Command or Android Studio (if installed) to generate the keystore file.  In the example below, I'll use Windows Command:
      1. Open Windows Command Prompt and type the next line (feel free to values of alias, keypass, keystore, storepass and personal info)
      2. keytool -genkeypair -alias myappalias123 -keypass myappkey123 -keystore productlisting.keystore -storepass myapppass123 -dname "CN=Bill Joy, OU=IT O=ACME, L=Palo Alto, S=CA, C=US" -sigalg MD5withRSA -keyalg RSA -keysize 2048 -validity 99
  3. Select Android
  4. Click OK

fms_signing.png

3. Fiori mobile

  1. Select Fiori Cloud Edition and click Ping (typically status will let you know if server is available)

fms_fm1.png

4. On Ping Result window, click OK

5. Add Fiori Mobile Application

  1. Click Applications tab
  2. Manage Apps
  3. New Application
  4. Select Application Type - Fiori Mobile

fms_newapp.png

6. Click Get Started to start the App Wizard

fms_app2.png

7. Select your Fiori app scenario > select (default) - local launchpad (click Next)

  • Scenario 1 - "I want to create..." All HTML/JavaScript resources are packaged into binary and are located on device when installed; an app re-build is required when making changes to the app and notification is triggered on Admin Console
  • Scenario 2 - "I want to mobilize..." This is an optimized Fiori Client build with all HTML/JavaScript are accessed via cloud; re-build of app is not required for this scenario

fms_app3.png

8. Select your Fiori Server (click Next)

fms_app4.png

9. Upload an Advanced Configuration File (ACF) - The advanced configuration file is a .json file that describes an array of components (using properties) that should be packaged with the app. Your ability to create an advanced configuration file is dependent on selecting "I want to create a local launchpad with only the apps I want to mobilize" on the Fiori App Scenario page.

  1. Browse to upload ACF (please note that fields in ACF are case sensitive)
    1. Here's what your sample ACF file code should look like
      1. id = your app id (it's located in webide > app_project folder > webapp > manifest.json
      2. cloudComponentId = app subscription in HCP
      3. url = the location under which the application is registered in Fiori Launchpad. By default when deploying the app via SAP WebIDE it is /sap/fiori/[heliumhtml5appname] ... it is NOT the subscription name but the name of the app that you subscribe to.


{     "applications":[          {               "id":"com.sap.fiori.products",               "cloudComponentId":"productlistingsub",               "url": "/sap/fiori/productlisting"          }     ]
}


  1. Click View and validate your configuration file (if file is malformed, you'll see an error)
  2. Click Next

fms_app5.png

10. Finish your application - Here, you can build your application or further configure application.  In this example, uncheck the option and click Finish.

fms_app6.png

 

Application Workflow - After running through the App Creation Wizard, you can modify app information to control your app's usability and appearance on SAP Mobile Place.

 

11. Details - no change; here you can modify the app selection, add app description, and provide more app context.  In addition, if you need to re-upload your ACF, you can start your workflow again by click "Select Fiori Appliations"

fms_appdetails.png

 

12. Insight - Once application is deployed and consumed, Administrator can monitor application inisight such as usage charts, registration information, and user logs

 

13. Groups - If using SAP Mobile Place, Administrator can assign application to an individual group or multiple group(s)

 

14. Multimedia - For a better user experience, upload an app icon, a splash screen, and optionally a banner image (if using SAP Mobile Place)

fms_appmm.png

 

15. App Settings - no change; Use the SAP Fiori mobile service app settings to define, deploy, and monitor your app

  1. Application Security - When setting app security, consider the sensitivity of the data in the app. If the data is highly sensitive, requiring a complex password is recommended.
  2. Feature management - Control which device features (for example: Calendar, Camera, Barcode Scanner) can be used by the application running on the device
  3. Notifications - Send notifications to iOS and Android devices by using the Notification URL and Application ID under Notification Information
  4. Logging - Admin can capture log information for review; collect performance metrics and identify performance issues as they occur

 

16. Categories - no change; Use the Categories tab to sort apps so they appear in logical groupings within SAP Mobile Place

 

17. Owners - no change; Use the Owner info tab to view the apps you created and therefore own, and to select co-owners for the app.

 

18. Platforms - Use the Platforms tab to build your app; if you made changes to any of the above settings, please click Save before continuing

  1. Click Action and select Build

fms_appplatform.png

19. Build Summary

NOTE: "debug-enabled" mode is only supported in trial and can only be tested a physical device.

  1. Turn off iOS
  2. For Android - Select your Signing Profile from drop-down
  3. Click Build

fms_build.png

19. Your New Signed app is available for consumption; no actions are required

fms_signedapp.png

20. As a developer, we've made it easy to test your app.  Simply login to SAP Mobile Place and go to Menu > My Profile > Fiori Mobile Apps

NOTE: Your SAP Mobile Place URL is available via HCP Cockpit > Services > Fiori Mobile > "Go to Mobile Place" or try https://<trial-p#trial>.sapmobileplace.com/ (only replace p# which is your trial id)

device_mpdev.png

 

21. Click download button to immediately download app to your device (and start install process); else, you can view details of your app by clicking app icon (and download and install app from that page)

device_appdownload.png

 

22. Once the app is installed, you can run the app (first time authentication will be required)

device_apprun.png

This concludes part 3 of this blog... Check back for part 4 soon.

How to use SAP HCP, mobile service for SAP Fiori - part 4

$
0
0

This blog post is continuation of a 4-part series on How to use SAP HCP, mobile service for SAP Fiori.

 

Part 4: Feature Management - Adding Push Notifications


In this fourth part, we'll take the Product Listing app that we created and add support for Push Notifications.  You'll learn how to...

  1. Update the app with some Javascript code to register for push notifications using WebIDE
  2. Register your app with Google to get the required Push IDs
  3. Update the Fiori Mobile App Settings with your Push IDs, rebuild the app, and update your device
  4. Send a Push Notification using the Advanced REST Client plug-in for Google Chrome

 

Step-by-step guide:


The first step is to update our Fiori App with the appropriate Javascript to register the app for Push Notifications. We will add a button that the user can click to enable Push Notifications.


1. Open the Product Listing app in WebIDE

 

Step1.png

2. Expand the view folder then right-click on the Master.view.xml file and select Open in Layout Editor. NOTE: The Layout Editor only works in Chrome right now. If the Layout Editor is not an option, select Code Editor and edit the xml directly.

Step2.png

3. From the Controls Palette, Under Action select the Button Control then drag it to the toolbar on the bottom of the Master view.

Step3.png

4. In the properties section, change the text for button from “Button” to “Register”

Step4.png

5. Expand the Events section, then in the Press Field click the Dropdown menu and select New Function.

Step5.png

6. Enter “pushRegistration” for the name of the new function and click “ok.”

Step6.png

7. Click on the small icon to the right of the Press Field to go to the newly created function in the Master.controller.js.

Step7.png

Step8.png

 

8. Copy and paste the following code inside your new pushRegistration Function

 

var nTypes = sap.Push.notificationType.SOUND | sap.Push. notificationType.ALERT;

sap.Push.registerForNotificationTypes(nTypes , this.regSuccess , this.regFailure , this.processNotification);

 

Step9.png

 

This function will call the asynchronous Push Registration method, which is looking for three callback functions to handle the results. We will create three new functions called regSuccess, regFailure, and processNotification. Copy and paste the following code right above the new pushRegistration function that we just added

 

                regSuccess: function(result) {

              jQuery.sap.require("sap.m.MessageBox");

              sap.m.MessageBox.show(

                    "Registered For Push Notifications", {

                    icon: sap.m.MessageBox.Icon.INFORMATION,

                    title: "Success",

                    actions: [sap.m.MessageBox.Action.OK]

              });

          },

          regFailure: function(errorInfo) {

              jQuery.sap.require("sap.m.MessageBox");

              sap.m.MessageBox.show(

                    JSON.stringify(errorInfo), {

                          icon: sap.m.MessageBox.Icon.INFORMATION,

                          title: "Push Registration Failed",

                          actions: [sap.m.MessageBox.Action.OK]

                    }

              );

          },

          processNotification: function(notification) {

 

              if (sap.Push.isPlatformIOS()) {

                    var notif_alert = JSON.parse(notification).payload.aps.alert;

                    var notif_sound = JSON.parse(notification).payload.aps.sound;

                    var notif_badge = JSON.parse(notification).payload.aps.badge;

                    var notif_data = JSON.parse(notification).payload.data;

              } else {

                    var notif_alert = notification.payload.alert;

                    var notif_sound = notification.payload.sound;

                    var notif_badge = notification.payload.badge;

                    var notif_data = notification.payload.data;

              }

 

              jQuery.sap.require("sap.m.MessageBox");

              sap.m.MessageBox.show(

                    notif_data, {

                          icon: sap.m.MessageBox.Icon.INFORMATION,

                          title: notif_alert,

                          actions: [sap.m.MessageBox.Action.OK]

                    }

              );

          },

 

Step10.png

 

After pasting, if there are any red spaces you will want to remove them. The, right click in the file and Select “Beautify” to clean up the display of your code.

 

Step11.png

 

 

9. Save your changes and deploy your updated project.

 

Step12.png

Step13.png

Step14.png

Step15.png

 

Now that we have added some code to register the app for Push Notifications, we need to register our app with Google so we can get the required IDs for sending Push Notifications.

 

1. Go to https://developers.google.com/mobile/add?platform=android and login with your Google ID (if you don't have one you will need to register first).

 

2. To complete the form you will need the App ID of your Fiori App. Go back to WebIDE and open your manifest.json file in the Code Editor.Picture1.png

 

3. Copy your App ID from WebIDE (from the manifest.json file) and paste it in the Android Package Name field.

 

Picture1b.png

 

4. Enter an App Name and Select your appropriate country then click “Choose and Configure Services.”

 

Picture2.png

5. Select Cloud Messaging.

 

Picture3.png

 

6. Click Enable Cloud Messaging.

 

Picture4.png

 

7. Copy the Server API Key and Sender ID to somewhere safe or just leave the window open.

 

Picture5.png

Now, we need to update the Fiori Mobile App Settings with the GCM Keys and rebuild the app.

 

1. Open the Mobile Secure Cockpit (from HCP Services, select the Fiori Mobile Tile, then select Go To Admin Console)

Picture1.png

 

2. Select Manage Apps in the Main Navigator, then select your Product Listing App

 

Picture2.png

 

3. Select the App Settings tab, Notifications, and expand the Android Section. Enter your Server API Key and Sender ID that you just created from the Google Developer Site, then Save.

 

Picture3.png

 

 

4. Go to the Platforms tab, right click the gear on the Android OS line and select Build.

Picture4.png

 

5. Once the build is complete you can go to Mobile Place on your Android device and download the new version.

 

NOTE: Your SAP Mobile Place URL is available via HCP Cockpit > Services > Fiori Mobile > "Go to Mobile Place" or try https://<trial-p#trial>.sapmobileplace.com/ (only replace p# which is your trial id)


From the Mobile Place, if the app is not listed click the Menu Button, Expand My Profile, and select Fiori Mobile Apps. When the apps are presented, click the download button for your Product Listing.


Picture5a.pngPicture5b.png

 

 

6. Once downloaded, install the app and then launch it. Click the Product Listing Tile and the app will open. Click the Register Button and if all goes well you will get a Success message.

 

Picture6a.pngPicture6b.pngPicture6c.png

 

Continued

How to use SAP HCP, mobile service for SAP Fiori - part 4 cont.

$
0
0

This is a continuation of How to use SAP HCP, mobile service for SAP Fiori - part 4

 

Now, before we can send a Push Notification we need to assign our user the Push Notification Role and determine the Push URL to post our message.

 

1. Return to the HCP Cockpit and go to Services, Development and Operations.

 

Picture1.png

 

2. Select Configure Development and Operations.

 

Picture2.png

3. Select Roles, then in the Roles Section select Notification User.  In the bottom section assign your HCP trial ID to this Role (your trial ID can be derived from the breadcrumb trail at the top of the screen - p12345678 (without the trial part).

Picture3.png

 

4. Return to the Development and Operations Service in the HCP Cockpit and select Go To Service

 

Picture1.png

 

5. Select Applications in the Navigator and then on the Product Listing Application, right-click the cog and Select Overview.

 

Picture2.png

 

 

6. To send a Push Notification we need to combine the base URL with the Fiori Mobile Application. Begin by coping the Enhanced Push API URL

 

Picture3.png

 

and paste it into your Notepad or Text Editor. Next, add "/application/" then we need to get the Fiori Mobile App ID.

 

7. Return to the Fiori Mobile Admin Console and go to the Product Listing Fiori Mobile App. Select App Settings, Notifications, copy the Application ID and append it to your URL in Notepad or Text Editor.

 

Picture6.png

 

When completed, your URL should look like:

 

PUSH URL = Enhanced Push API URL for the Product Listing App + “/application/” + The Application ID from the Mobile Mobile App Settings Notification Screen

 

Example:

https://hcpms-p1942059231trial.hanatrial.ondemand.com/restnotification/application/com.sap.mobilesecure.xd537a04511dd05a0e903ea439f9d4978

 

8. Install the Advanced REST Client in Chrome or open your preferred REST Client.

 

Picture4.png

 

9. Create an HTTP Post with the following attributes:

 

URL: PUSH URL you created above

Type: Post

Header: Content-Type: application/json

Payload:

 

{

"alert": "New Product Added",

"badge": 1,

"data": "A New Product Listing has been added.",

"sound": "soundval"

}

 

Picture7a.png

 

10. Click Send. When prompted for Authentication enter your HCP trial ID and password.\

 

Picture7b.png

If successful, your should get a 201 Created response.

 

Picture7c.png

 

And a Push Notification on your Android device.

 

Picture8.png

 

This concludes Part 4 of this blog series.

 

Check back for more mobile enhancements, including using the camera and turning this into an offline app!

Fiori Implementation made simple with Fiori on the Cloud

$
0
0

As most of you are aware SAP Fiori is the new user experience (UX) for SAP software that applies modern design principles. SAP Fiori Cloud Edition (SFCE) is a one of the deployment options for SAP Fiori which simplifies the overall SAP Fiori implementation process and accelerates time-to- value. SFCE is one of the services which runs on SAP HANA Cloud Platform which securely connects to the customers’ Business Suite system which is located within their premise. This service was generally available(GA) end of Q1.

 

In this blog, I wanted to show how easy it is for a customer to enable Fiori Apps for their SAP Business Suite systems. I am going to take an example of a customer who is running a SAP CRM system. This customer wants to rejuvenate their UX experience and adopt Fiori UX. They also want to do this quickly and don’t want to spend much time on procuring their infrastructure and installing software on their on-premise Gateway system.

 

                                                      

 

In the above high-level architecture slide, HANA Cloud Connector is the critical piece which helps in setting up a SSL Tunnel between the On-premise SAP backend system and the Fiori Apps hosted on HCP. Business data is not persisted in the cloud. Business data is only pulled from the backend system via the Cloud Connector and displayed on the Fiori Apps. HCP OData Provisioning (HCP-ODP) service comes along with SFCE and it acts as a Gateway as Hub on the cloud. With HCP-ODP, customers no longer need to maintain a Gateway as Hub infrastructure within their premise. As of today, there are 33 Fiori Apps available as part of SFCE which communicates to the backend systems via HCP-ODP.

 

Below are the high-level steps a customer would need to follow to quickly enable Fiori Apps.

 

 

Identify the Fiori Apps available in the Fiori reference Library

 

Most of you might be aware of the Fiori Reference Library . There is now a new option to filter Apps based on HCP. In my example, I am looking to enable the CRM Appointments Apps. Hence, I search for this App and examine the components which are required for this App. Since this is a SFCE deployment, I only need to ensure that the backend component BBPCRM is on the right level.  Unlike few of the HCM Fiori Apps, there is no need to install any separate ABAP Add-ons to the CRM system to enable the Appointment App. As long as you are on a fairly latest CRM version, you can straightaway start to configure and implement these CRM Fiori Apps.


                        

 

 

Configure your backend OData services

 

Follow the SAP help documentation specific to the Fiori App to activate the OData services (using SICF) and setup your roles based on the templates which are provided.

 

In the below SICF transaction, I have activated the OData service


                                       

 

Install & Setup HANA Cloud Connector

 

The CRM system I am using has the name QHD.  Below are the steps which I have performed.

  1. Install HANA Cloud Connector(HCC) & Setup a connection with the HCP account which is going to use the QHD system. This will establish a SSL Tunnel with the HCP account.
  2. Add the QHD CRM system under Access Controls. Note that I have provided a virtual hostname for the QHD system which I have configured.
  3. As a HCC administrator, I have full control on what resources of QHD system I need to expose to this particular HCP account. Hence, I have added these two services which be needed for HCP-ODP service.

       

                                  

 

Enable HCP OData Provisioning

 

Log in to your HCP account and enable OData Provisioning Service. OData Provisioning is a Gateway Hub service on HCP to expose SAP Business Suite services on the cloud.

       

                                          

 

Click on “Configure OData Provisioning” and add a new destination for QHD system pointing to the virtual hostname (provided in the Cloud Connector earlier). Notice that I have hard coded my user credentials. In productive scenarios, this should be set to “Principal Propagation”.

 

                                           

 

Navigate to the HCP-ODP service browse all your OData services available in the respective backend system and register them. In the below screen, I have registered the OData services for Appointment and Opportunity service.

 

                                  

 

Finally, add a destination in the HCP Cockpit for the HCP-ODP service.  This step is necessary for Fiori Cloud Portal (which is part of SFCE) to communicate with HCP-ODP service.

 

                                     

 

Below ais the explantation for few of the fields in the Destination

 

Name: Any name you prefer. I have given GWaaS.

URL: Points to the HCP-ODP service within the account.

Authentication: Set to “AppToAppSSO” as this is required for Fiori Cloud Portal to interact with HCP-ODP service.

Additional Properties: To enable using the QHD OData services in WebIDE. Since “AppToAppSSO” is enabled, WebIDE will communicate with HCP-ODP without any login prompt

 

 

Enable and configure the Cloud Portal

 

Fiori Cloud Edition is based on the HANA Cloud Portal. We need to first enable HANA Cloud Portal service.

 

                                  

 

If you are developer/admin, ensure TENANT_ADMIN role is assigned to you.

 

                   

Next, launch the Portal service by clicking on “Go to Service”. By default there would be portal site called “SAP” which has got all the Fiori Apps and a sample catalog/group. Customers need to create their own site and accordingly create catalog/groups for their Fiori Apps. For now, I am going to just test the “SAP” site by clicking on the site.

 

                   

This should open a Fiori Launchpad as shown below. Notice there are errors for all the Apps.

 

                   

 

If you click on “My Appointments” app, it will throw an error message stating that the OData service is not reachable.

 

                   

 

The reason being we have not yet done the configurations to point to our backend CRM system QHD.

Navigate to subscriptions menu in the HCP cockpit. You will find list of all the provisioned Fiori Apps. Open the Fiori App for “My Appointments”. If you are not sure which one it is, you can always refer to the Fiori Reference Library to identify the technical name of the Fiori App.

 

                   

 

Notice that the default mapped destination “SAP_Gateway”.  This needs to be changed to a destination which we have created earlier.

 

                   

 

Change it to the destination “GWaaS” which I created earlier. This destination points to the HCP-ODP service.

 

                   

 

Now, refresh the Site and try to access the Appointment App. It should pick up all the Appointments which are maintained against the user account in the backend CRM system.

 

                    

 

As you can see it is not hard to connect Fiori Apps on the cloud with your on-premise systems. I think the biggest advantage of this approach is that

1) Customers no longer need to apply updates to either  Fiori App or the SAPUI5 library. Imagine if there is a new UI control which gets released as part of the latest SAPUI5 library, you can start using these controls when you build your own apps on HCP rather than planning to patch your gateway system and regression testing your applications.

2) Reduction in TCO as you no longer need to host and maintain a Gateway system in your premise

 

Hear what other customers are talking about Fiori Cloud Edition.

 

Credits

 

Hope you found this blog helpful.


How-to-Guide SAP Fiori Relevance and Readiness Analysis

$
0
0

Introduction:


Since Fiori UX got evolved every customer is curious to find out how to transform or enhance their current SAP User Interfaces. This blog provides end-to-end steps for enabling Fiori Relevance and Readiness Analysis.


Typical Customer Questions for Fiori Implementation:


  • Do we have Fiori applications forspecific SAP TransactionalCodes?
  • Do we have list of all Fiori applications based on S/4HANA?
  • Can you provide list of Analytic applications based on S/4HANA 1511 or some other ERP EHP release?
  • Can we do some quick readiness check on our SAP back-end and front-end Landscapes to see which Fiori applications are relevant?

 

Single channel that address all the above questions is SAP Fiori Application Reference Library:

 

https://fioriappslibrary.hana.ondemand.com/sap/fix/externalViewer/

 

For Analysis, four easy steps to follow:

  1. Login into SAP Fiori Apps Library  and Select Create new Analysis
  2. Upload SAP transaction usage profiles
  3. Upload ABAP and HANA system profiles
  4. Provide Name and Start Analysis

 

Step 1.  Login into SAP Fiori Apps Library  and Select Create new Analysis


a. Click Fiori Apps Library


You will find below box for sign in, click on it to sing in:

1.png

b. If you are already Login, you will find below box to get in to the list , click on it:

2.png

CYou can display existing analysis or create new one as shown in the below picture:

3.png


Step 2.  Upload SAP Transactional Usage profile

 

a) Usage profile (apply for SAP Backend system)

 

To get all list of all back-end transactions used in the SAP back-end use Tcode - ST03 as shown below:

4.png

 

For example, I choose monthly. Customize the layout as below:

 

5.png

Export into Excel Format as shown below:

6.png

Save file locally first and then Save it as CSV format.

 

Note: You can also manually add additional T-codes to your list.

 

Click on Upload new profile link and upload the Usage file as shown in the below screen:

 

7.png

 

Step 3. Upload your System Profiles for ABAP and HANA


ABAP:


Go to System>Status>Details of Product>right click spreadsheet> Save it as Excel format first and then save it as CVS format.

Note: Above procedure applies for both Front end and Backend ABAP systems.

 

HANA (back-end DB where Delivery Units are installed):


Open HANA Studio> Open SQL Console> run the following command:

select * from "_SYS_REPO" . "DELIVERY_UNITS" where vendor = 'sap.com'

 

To execute this query, you need select privilege on DELIVERY_UNITS table in the _SYS_REPO. Execute this query with SYSTEM user. Following is the sample screen (double click on image to see full view):

 

8.png

 

Export results to CSV format.

 

Now we have all three profiles for uploading. When uploading Front-end and Back-end system profiles select the DB. If DB is not HANA then just select other.

 

9.png

 

Step 4. Provide Name and Start Analysis

 

Fiori Relevance & Readiness Results:


Following is the sample results Screen (double click on image to see full view):

11.png

 

 

Available Features for Fiori Relevance and Readiness Analysis:


  1. Column Filters: Click on Column display settings you will find more filters:

12.png

 

2, Demo scenarios with predefined profiles

Just for the Demo purpose you can select sample profiles to view sample summary. See below screen:

13.png

3. View Definition

There is a List view and Detailed View.  Also, you can always change to another existing analysis using Change View.

 

4. Export Relevance and Readiness analysis results in to Excel format


5. Manage Profiles


Under more actions, you can create new analysis without going back to homepage and also manage your profiles.

14.png

6. Share Details

 

Once you select your applications, you can Save selection, Download, or Share application details via Outlook.

 

7. Variants


There are three standard selections. Overview, Installation Details, and Fiori Launchpad Content.

  • Overview pageprovides required back-end, Type of App, Business description with the sample screenshot.
  • Installation details provide details regarding front-end Product Version Overview UI, and back-end Product Version Overview.
  • Fiori Launchpad content provide details regarding Technical Catalog, Business Catalog, Business Group, Business PFCG group.


Note: You can also create and manage custom Variants depending on your selection criteria.


To plan and analyze required changes to your System Landscape, use Simplified Fiori Software Provisioning with Maintenance Planner




CoE+Logo-01-01.png

Implementing Fiori My Inbox on HCP

$
0
0

As a ‘relatively’ new deployment option for SAP’s user experience, Fiori cloud edition simplifies and streamlines the implementation process of Fiori via a cloud service reducing the need for the installation, upgrade and back-up processes of the ABAP Front End Server using HANA Cloud Platform.

AR1.PNG


In this tutorial, you will learn how-to quickly implement My Inbox application using the advantage of Fiori Cloud edition to change one of the most daunting tasks that a majority of managers do on a regular basis – approve SAP workflows.

 

In this first step, I will configure the back-end system connection to access real service data in our project. Sign up and get started with the SAP Gateway Demo Consumption System using this link.

 

Click “Sign up here!” to connect your SAP HCP developer account to the demo backend system.


0-0.png

 

1. After a successful registration log on to the gateway system with your previously registered login data.
0-01.png

2. Execute SAP Business Workplace transaction code - SBWP to make sure that there is something in our workflow which can be assigned to a user.

 

1.PNG

3. Assign something to your workflow (in my case I already had two requests assigned, considering that you have been just registered you might have nothing in your workflow) by executing /nswxf

2e.PNG


4. Create Notification of Absence filling some basic information and click on Save.

3.PNG

5. Repeat steps 3 and 4 until you reach three workflow items in your Inbox.

4.PNG


6. Log in to your HCP cockpit and go to Services > OData provisioning > Configure OData provisioning

5.PNG

6.PNG

7. Click on Roles and highlight GW_Admin and click Assign to assign your user ID and click Save – (repeat this process for GW_User)

AR.PNG

8. Configure Destination to backend demo system (ES4) by clicking on Destinations > New Destination (make sure that your URL ends with – iwbep) and that your user and password details are reflecting your details from ES4 registration process.

13.PNG

9. Go to your OData provisioning service by clicking on Go to Service

14.PNG

10. This will open up OData Provisioning Administration page where you are going to register for OData Service.

Reg.PNG

11. Select your Destination by clicking on your backend demo ES4 and search for OData service needed for My Inbox Fiori application.

15.PNG

12. In order to pick the right OData service go https://fioriappslibrary.hana.ondemand.com/ and click on SAP Fiori apps on SAP HCP filter for My Inbox > Implementation Information > Configuration and find OData Services (TASKPROCESSING version 002)

17.PNG

13. Go back to your OData Provisioning Administration screen and register TASKPROCESSING version 2 service

ODReg.PNG

14. Test the OData service by opening the Service Document

Test.PNG

tt.PNG

15. Go to Destinations > New Destination and create the destination on the account level which points to your gateway as a service

DestALe.PNG

16. Go to Subscriptions and find Fiori Cloud edition provided My Inbox Application > crossfndfioriinbox

Subscr.PNG

17. Edit the required destination and point to mapped account ES4_ODP

Errre.PNG

Final.PNG

18. Go to Subscriptions > HANA Cloud Portal > Go to Service

PSe.PNG

19. Click on Site Directory > Fiori Tile

SDDD.PNG

20. Click on My Inbox tile which will the reflect number of workflow items (previously created notifications of absence)

IB3.PNG

PT001.PNG

 

Special Thanks to HCP Product Management team and Suparna Deb on invaluable #hijackingMay session covering HCP, OData Provisioning!



You Asked, We Delivered - New Service Added to SFCE Extended Demo Accounts

$
0
0

It's important to us at SAP to interact directly with our customers and to take your requests/feedback seriously. Over the past few months we have heard from various community members the desire to test the SAP HANA Cloud Platform OData Provisioning (HCP ODP) service against their SAP Fiori, cloud edition extended demo account, and a guided process to connect their SAP Fiori, cloud edition extended demo account to an on premise back end system. It brings me great joy to announce that not only have we heard your requests but we have been working behind the scenes and today are able to deliver both requests to you!

 

The HCP ODP service is available in everyone's SAP Fiori, cloud edition extended demo account and can be accessed as follows:

 

  • Access the HCP Cockpit for your SAP Fiori, cloud edition extended demo account
  • Choose Services > Category: Integration > OData Provisioning Demo

          ODP1.png

  • Select the service and choose Enable

          ODP2.png

 

I have created a video series on a productive SAP Fiori, cloud edition account to get you started with HCP ODP. The service is named differently in a productive account (OData Provisioning) but otherwise functions the same. Access the video blog: How to Consume SAP HANA Cloud Platform, OData Provisioning Services

 

While it has been technically possible to connect your SFCE extended demo account to a back-end system it was never formalized into a guided procedure delivered by SAP, like the theme designer or Web IDE tools. The connecting to your back-end functionality remains a feature of the extended demo edition that will not be supported by SAP in terms of technical issues or guided support. Instead, my Technology RIG colleagues and I have created a 3 part blog series to get you started, access that series as follows:

Back-End Connectivity with SAP Fiori, cloud edition extended demo account | Part 1

Back-End Connectivity with SAP Fiori, cloud edition extended demo account | Part 2

Back-End Connectivity with SAP Fiori, cloud edition extended demo account | Part 3

 

Happy learning!

How to Consume SAP HANA Cloud Platform, OData Provisioning Services

$
0
0

In the Back-end connectivity with SAP Fiori, cloud edition extended demo edition | Part 1 I reviewed the landscape options and focused the series on the cloud + embedded option. For this video blog I'm going to focus on the cloud + ERP option using SAP HANA Cloud Platform OData Provisioning.

 

The first video provides you an introduction into what HANA Cloud Platform OData Provisioning is

 

In the second video I show you how to consume OData services from the SAP ES4 public demo system. If you don't have access please reference here to sign up. I'll show you how to change the back-end destination of the My Inbox Fiori cloud edition app from an on premise back-end system to the ES4 system using HCP ODP.

*Note: I'm using a productive SAP Fiori, cloud edition account for these videos but the process is the same should you want to follow along in your extended demo edition.

 

In the third video I'm going to show you how to create a sample custom Fiori app in SAP Web IDE using the GWDemo OData service. At the end of this video you'll see both apps running in the Fiori launchpad.

Back-End Connectivity with SAP Fiori, cloud edition extended demo account | Part 1

$
0
0

Yes, you've read the title right - it is now possible to connect your SAP Fiori, cloud edition extended demo account (free for 90 days) to a back-end on-premise system of your own. SAP will not include this as a guided process in your SAP Fiori, cloud edition extended demo account and will not provide any standard support for you doing so. Instead my esteemed colleagueMasayuki Sekiharaand I put together a detailed blog series to provide you the necessary steps and encourage you to post any issues you encounter in the SCN community using the hashtag fioricloud The series will be as follows:

 

  1. Blog 1 | Introduction / High Level Overview [this blog]
  2. Blog 2 | End-to-End 12 implementation Steps [6 steps for System Admin & 6 steps for App Consultant]
  3. Blog 3 | Simple hands-on exercise [Connecting to ES4 system]

 

SAP Fiori & SAP Fiori, cloud edition Architecture Options:

You're all aware by now (at least I hope you're aware) that we have 2 deployment options for SAP Fiori: on-premise and cloud.

  1. The on-premise deployment option is almost 3 years old and requires customers to have both a front-end server (UI & Gateway-Hub) and a back-end server (business logic) on premise.
  2. The cloud deployment option takes the front-end server and puts it in the cloud while customers maintain their back-end server on-premise.

scn1.JPG

SAP Fiori, cloud edition Landscape Options:

With SAP Fiori, cloud edition you have the following 3 landscape options [note: the UI will be offered in HCPfor all options]

  1. A hub landscape where the back-end server, Gateway server, and the HANA Cloud Connector are on-premise
  2. An embedded landscape where the back-end server with Gateway installed and the HANA Cloud Connector are on-premise
  3. A back-end server and the HANA Cloud Connector installed on premise and in addition to using SAP Fiori, cloud edition in the cloud you also use the HCP ODP service, which provides the Gateway hub functionality in HCP.
    *Note:*HCP ODP is not a full replacement for a Gateway hub installation. It provides the required functionality for use with SAP Fiori apps. Check SAP Note 1830712 for details on restrictions.

scn3.JPG

For this blog series we're going to focus on architecture 2: Cloud + Embedded. If the third architecture option (Cloud + ERP) is of interest to you please reference How to Consume SAP HANA Cloud Platform, OData Provisioning Services .

 

Implementation Overview

In a typical implementation of SAP Fiori, cloud edition there are 12 steps to be completed, 6 by an App Consultant, and 6 by a System Admin. The image below details these steps at a high-level. The roles and corresponding steps are typical but not mandatory. Your organization may have different roles or procedures in place which is OK.

*Note: In this blog series we're going to focus on connecting your SAP Fiori, cloud edition extended demo account (free for 90 days) to an on-premise system. For productive use of SAP Fiori, cloud edition in addition to the 12 steps below you will need to take into consideration authentication (for HCP, HCC and the Fiori launchpad). With our focus being on the extended demo account the authentication topic is considered out of scope here and will be covered in a subsequent blog later.

scn53.JPG

 

End to End Steps Required to Connect you SAP Fiori, cloud edition extended demo account (free for 90 days) to your Back-end System

In the Next blog we're going to focus on the System Admin [S#] and App Consultant [A#] roles as follows:

scn88.JPG

If you're proficient and confident in Fiori implementation feel free to test your implementation skills by just using the steps above. If you're new to Fiori or prefer more guided help then go to the next blog for specific how-to information. The third blog in the series offers a simple hands on exercise to connect to an SAP demo system if you do not have a back-end readily available to test the connection against.


Have fun!


Viewing all 257 articles
Browse latest View live