Skip to Content
Technical Articles

Building Extensions for SAP SuccessFactors using APIs and Events | Hands-on Video Tutorials

Philip Mugglestone from SAP Partner Innovation Lab and the SAP HANA Academy just released an update to the video tutorial series about building extensions for SAP SuccessFactors using APIs and events.

In this blog post you will find the videos embedded with references and additional information.

For the related blog posts, visit

Questions? Please post as comment.

Useful? Give us a like and share on social media.

Thanks!

/wp-content/uploads/2016/02/sapnwabline_885687.png

Hands-On Video Tutorials

What You Will Learn

Philip Mugglestone from SAP Partner Innovation Lab just released for the SAP HANA Academy an update to the video tutorial series about building extensions for SAP SuccessFactors using APIs and events.

You can watch the 10-part video tutorial series in a little over one hour. What you learn is

  • How to register an SAP SuccessFactors on the SAP Business Technology Platform
  • How to create a BTP sub-account, configure entitlements for services required by the scenario, subscribes to key services, and configures the application development environment.
  • How to configure trust between SAP SuccessFactors and the BTP subaccount in order to enable single sign-on.
  • How to perform some simple local testing.
  • How to adapt, build, deploy, and test the extension application.
  • How to configure an event in SAP SuccessFactors that triggers Event Mesh in BTP whenever details have been updated for a recruitment candidate.
  • How to test the event aspects of the extension application.
  • How to de-configure events in SAP SuccessFactors, undeploy the extension application and cleanup service instances, subscriptions and registrations that were created as part of this extension scenario.

Architecture

The components used are

Prerequisites

Time of writing, this scenario requires a customer or partner global account for system landscape registration. Currently, this is not supported on the SAP BTP Trial environment.

To pair an SAP BTP global account with an SAP SuccessFactors system requires administrator privileges.

Account assignments include

SAP HANA Academy YouTube Playlist

To bookmark the playlist on YouTube, go to

/wp-content/uploads/2016/02/sapnwabline_885687.png

Getting Started

In this hands-on video tutorial, Philip demonstrates a simple scenario that shows how to extend SAP SuccessFactors using APIs and events. Architecture is discussed as well as where to find reference material for services and technologies used in the scenario.

0:00  – Introduction with demonstration of the scenario

1:45 – Architecture discussion

3:15 – Documentation

4:15 – SAP API Business Hub

5:30 – API Key

5:50 – Cloud Application Programming Model

6:30 – Set API permission for business users in SAP SuccessFactors

Notes

Navigation Path = Manage Permissions Roles > HR Admin for Employees > Recruiting Permissions: OData API Candidate Export

/wp-content/uploads/2016/02/sapnwabline_885687.png

Register Systems

In this hands-on video tutorial, Philip covers the registration process between SAP SuccessFactors and SAP Business Technology Platform. We learn how to create a BTP sub-account and how to configure entitlements for services required by the scenario, subscribe to key services, and configure the application development environment.

0:00 – Introduction

0:30 – SAP BTP Entitlements

1:20 – System Landscape

2:00 – Register System to generate integration token

2:35 – Add token using SAP SuccessFactors Provisioning – Extension Management Configuration

3:35 – Create BTP subaccount, enable Cloud Foundry, and create space

5:00 – Add service plans for required entitlements

Notes

Entitlements and plans

  • Cloud Foundry Runtime: memory
  • Event Mesh: default
  • Launchpad Service: standard
  • SAP HANA Cloud: hana
  • SAP HANA Schemas & HDI Containers: hdi-shared
  • SAP SuccessFactors Extensibility: api-access

/wp-content/uploads/2016/02/sapnwabline_885687.png

Subscriptions

In this hands-on video tutorial, we learn how to subscribe to additional BTP services that form part of the scenario – including SAP Event Mesh, SAP Launchpad, SAP HANA Cloud, and SAP Business Application Studio.

0:00 – Introduction

0:30 – Create service instance for Event Mesh (standard: subscription) 

1:00 – Create service instance for Launchpad Service (standard: subscription) 

1:30 – Create service instance for SAP Business Application Studio (standard-edition) 

1:50 – Add role collections

2:50 – Access subscriptions

3:20 – Create SAP HANA Cloud instance

Notes

Role collections

  • Business_Application_Studio_Developer
  • Enterprise Messaging Developer
  • Enterprise Messaging Administrator
  • Enterprise Messaging Subscription Administrator
  • Launchpad_Admin
  • Launchpad_External_User

/wp-content/uploads/2016/02/sapnwabline_885687.png

Configure Trust

In this hands-on video tutorial, we learn how to configure trust between SAP SuccessFactors and the BTP subaccount in order to enable single sign-on.

0:00​ – Introduction

0:30​ – Download SAML metadata file from SAP SuccessFactors Provisioning 

1:30​ – Create new trust configuration for subaccount and upload metadata

2:30​ – Download SAML metadata file from SAP BTP

2:45​ – Add ACS using SAP SuccessFactors Provisioning

Notes

SAP SuccessFactors SAML URL format

<tenant>.successfactors.<region>/idp/samlmetadata?company=<company-id>

Sample: https://salesdemo.successfactors.eu/idp/samlmetadata?company=SFPART059009

Navigation Path = [Company] > Service Provider Settings > Authorized SP Assertion Consumer Service Settings > Add another Service Provider ACS

/wp-content/uploads/2016/02/sapnwabline_885687.png

Create Extension App

In this hands-on video tutorial, we learn how to use the jumpstart generator to create an extension application based on SAP Cloud Application Programming Model (CAP) including configuration to create and access services used in the scenario.

0:00 – Introduction

0:30 – Create Dev Space for Full Stack Cloud Application using SAP Business Application Studio

1:45 – Connect to Cloud Foundry subaccount

2:15 – Install generator-saphanaacademy-cap

3:00 – Generate new project

/wp-content/uploads/2016/02/sapnwabline_885687.png

Review Extension App

In this hands-on video tutorial, Philip reviews the etension application generated in the previous tutorial and performs some simple local testing.

0:00 – Introduction for code walkthrough

0:30 – package.json

3:00 – mta.yaml

6:00 – xs-security.json

6:45 – em.json

7:15 – Modules: app, db, srv

10:00 – .env

10:20 – Run local test 

11:30 – test.http

Notes

Commands used

npm i
cds watch

/wp-content/uploads/2016/02/sapnwabline_885687.png

Deploy Extension App

In this hands-on video tutorial, Philip adapts, builds, deploys, and tests the extension application.

0:00 – Introduction

2:30 – Build and deploy app in Business Application Studio

3:30 – SAP BTP Cockpit: Instances and Subscriptions

4:10 – Destinations

4:30 – HTML5 Applications

4:45 – Authorize business user

5:20 – Test application

6:20 – Launchpad Service Site Manager 

8:00 – Event Mesh

/wp-content/uploads/2016/02/sapnwabline_885687.png

Consume Events

In this hands-on video tutorial, we learn how to configure an event in SAP SuccessFactors that triggers Event Mesh in BTP whenever details have been updated for a recruitment candidate.

0:00 – Introduction

0:40 – Create service key for Event Mesh

1:35 – Add new Outbound OAuth Configuration in SuccessFactors Security Center using service key

3:15 – Add new integration in SuccessFactors Integration Center

/wp-content/uploads/2016/02/sapnwabline_885687.png

Test Extension App

In this hands-on video tutorial, Philip tests the event aspects of the extension application.

0:00 – Introduction

0:40 – Log in to SuccessFactors

1:00 – Log in to Extension App

2:00 – Run test case

3:20 – Extension opportunities for different events and APIs  

/wp-content/uploads/2016/02/sapnwabline_885687.png

Cleanup

In this hands-on video tutorial, we learn how to de-configure events in SAP SuccessFactors, undeploy the extension application and cleanup service instances, subscriptions and registrations that were created as part of this extension scenario.

0:00 – Introduction

0:50 – Delete integration from SAP SuccessFactors Integration Center

1:20 – Delete App Event Mesh from SAP SuccessFactors Security Center

1:30 – Undeploy custom app from SAP Business Application Studio

2:40 – Remove site, group, and app from Launchpad Site Manager

4:00 – Delete SAP HANA Cloud instance

4:25 – Unsubscribe from Launchpad Service and Event Mesh

5:10 – Remove SAP Business Application Studio workspace and unsubscribe

5:50 – Remove destinations

6:15 – Remove trust with SAP SuccessFactors system from BTP

6:35 – Remove trust with BTP subaccount with SAP SuccessFactors Provisioning

7:15 – Remove entitlements, Cloud Foundry space, and BTP subaccount

8:30 – Create service ticket to unregister SAP SuccessFactors system registration  

Notes

Component to unregister system: BC-NEO-EXT-SF

Command used

cf undeploy app --delete-services --delete-service-keys -f

/wp-content/uploads/2016/02/sapnwabline_885687.png

Additional Resources 

SAP Help Portal

For the documentation, go to

SAP API Business Hub

Visit the SAP API Business Hub for more information about the business process. You can try the API out on a sandbox system and download an API key for testing.

The entry also references the business documentation

openSAP

For additional (free) training on the components used, enrol

SAP Discovery Center

For information about the different services that comprise the SAP Extension Suite and to embark on a mission, visit the SAP Discovery Center.

SAP Community

For blogs posts, questions and answers, and other community resources, visit

/wp-content/uploads/2016/02/sapnwabline_885687.png

Share and Connect 

Questions? Post as comment.

Useful? Give us a like and share on social media. Thanks!

If you would like to receive updates, connect with me on

Be the first to leave a comment
You must be Logged on to comment or reply to a post.