Professional Documents
Culture Documents
SF Learning Integration Configuration Guide
SF Learning Integration Configuration Guide
Table of Contents
1 Introduction.............................................................................................................................................................................................................. 4
1.1 Overview........................................................................................................................................................................................................... 4
1.2 General Considerations..................................................................................................................................................................................... 4
2 Integrating SF Learning with BizX – Configuration Steps...........................................................................................................................................5
2.1 Prerequisites…................................................................................................................................................................................................... 5
2.1.1 …on the LMS Side........................................................................................................................................................................................ 5
2.1.2 …on the BizX Side........................................................................................................................................................................................ 5
2.2 LMS-Side: Configuring the Integration with BizX in SF Learning Admin.............................................................................................................6
2.3 BizX-Side: Configuring the Integration with SF Learning in BizX Admin...........................................................................................................11
2.3.1 Accessing the Provisioning Page for the Customer...................................................................................................................................11
2.3.2 Defining the Company Settings for the Customer.....................................................................................................................................12
2.3.3 Defining the Service Provider Settings for the Customer..........................................................................................................................14
2.4 Other Actions Needed…................................................................................................................................................................................... 15
2.4.1 …on the LMS Side...................................................................................................................................................................................... 15
2.4.2 …on the BizX Side...................................................................................................................................................................................... 16
3 Setting Up the Synchronization of User and Competency Data..............................................................................................................................16
3.1 Selecting a User Data Integration Option........................................................................................................................................................16
3.1.1 Creating the Data Extraction Job for the SF User Feed Extract.................................................................................................................17
3.1.2 Setting Up the Data Import with the SF User Connector in the LMS.........................................................................................................20
3.2 Configuring the BizX Extended User Fields......................................................................................................................................................22
3.2.1 Creating the Data Extraction Job for the Extended User Feed Extract......................................................................................................23
3.2.1.1 …with Employee Central.................................................................................................................................................................... 24
3.2.1.2 …with other HCM Solutions...............................................................................................................................................................26
1 Introduction
1.1 Overview
When integrating Learning with the wider BizX suite there are various points behind the scenes which potentially involve several servers and
datacenters. This documentation aims to describe the integration landscape to help Professional Service consultants better identify potential
points of failure and to describe the configuration steps required.
This document is structured with the standard implementation process in mind and explains the necessary configuration options on both sides –
LMS and BizX – for each step. It starts with the necessary steps of configuring the integration itself and the synchronization of data and finishes
with optional steps for enabling BizX Role Based Permissions and PGP encryption.
While in the LMS, the necessary configuration settings are defined in the SF Learning Admin user interface (Found under Learning Administration
> System Admin > Configuration > System Configuration > BizX), in BizX the respective settings have to be made on the customer provisioning
page (e.g. https://qacand.successfactors.com/provisioning_login).
If integration was previously enabled in this tenant, login to BizX (SuccessFactors platform) tenant and then click through to Learning
Administration.
If this is the first time that the integration is being configured in this tenant, login using the Learning Admin URL as below.
Example:
https://<lms tenant id>-.scdemo.successfactors.com/learning/admin/nativelogin.jsp
Admin ID: {UserID}
Password: {Password}
Note:
Replace <lms tenant ID> with your LMS tenant ID in lowercase
In Learning Administration, navigate to System Administration Configuration System Configuration.
Choose Edit for the BizX configuration.
Note:
If SuccessFactors Platform to Learning integration displays as Sealed the integration cannot be updated.
Choose Edit for the BizX configuration.
Ensure the value for BizX/LMS Integration flag is set to true
# Learning Integration enabled - set to true to enable integration between SF
# learning and the SF main application.
successFactorsLearningEnabled=true
Note:
The BizX tenant and the LMS tenant should be in the same data center; the only allowed exception is LMS tenant hosted in DC08 being
integrated with BizX tenant hosted in DC04. Also, the BizX and LMS tenants should both be in the same environment, both should be in
production (including Development tenants), or both should be in preview.
# SuccessFactors Company ID for the current tenant. This will use the LMS
# tenant ID by default, so it is recommended to keep the SF company ID and
# LMS tenant ID in sync in production.
successFactorsCompanyID=${tenantID}
Example: successFactorsCompanyID=SFPART0xyz
Replace ${tenantID} with BizX company ID.
metadataProviders.IDP1.type=SuccessFactorsHTTPMetadataProvider
metadataProviders.IDP1.value=https://saml-idp-server/idp/samlmetadata?company=${successFactorsCompanyID}
Set saml-idp-server with BizX Base URL and replace ${successFactorsCompanyID} with BizX company ID.
The above settings apply to the LMS tenant and there is also a configuration required for the BizX tenant that is applied in the BizX Provisioning
system. This configuration can also be updated from the BIZX configuration page in LMS and is available in the section titled Company Settings in
SuccessFactors platform Provisioning.
In the field SuccessFactors Learning integration URL enter the URL of the LMS tenant.
The URL entered in SuccessFactors Learning integration URL will be used to update the following configurations in SuccessFactors platform
(BizX) Provisioning:
1. Service Provider Settings > Authorized SP Assertion Consumer Service Settings
2. Edit Company Settings > Company Settings > Learning Integration URL
3. Edit Company Settings > Company Settings > Learning Integration API URL
Note:
The integration must be enabled from SuccessFactors platform (BizX) Provisioning Company Settings by selecting the checkbox Enable
SuccessFactors Learning integration.
Note: When you save the settings, the following message will appear on successful update:
The settings have been successfully saved with the following warnings:
REST API testing failed with message: (Error requesting access token). Please check the baseRESTAPIURL setting.
If you wish to validate the BizX REST API, please access this page through the BizX application and click "Apply Changes". If you are not able to
access the LMS through BizX, please check the baseURL setting.
10. Scroll back to the top of the page, choose Save Feature, enter the Company ID, and choose Confirm.
11. Scroll down to or search for Web Services.
Enable the following services:
SF Web Service
DocSearch Web Service
User Web Service
The two SFAPI features
12. Choose Save, enter the Company ID, and choose Confirm.
2.3.3 Defining the Service Provider Settings for the Customer
On the main Companies page, click the link Authorized SP Assertion Consumer Service Settings:
To enable SAML, click “Add another Service Provider ACS” and add the tenant-specific SAML URLs:
Assertion Consumer Service Logout URL The SSO URLs follow this format – URLs are case-sensitive:
Authorized https://sfint-t2-cte-plateausystems.com/learning/sam
https://sfint-t2.cte.plateausystems.com/learning/sam a) SAML login URL (on the left):
Service https://<LMS_TENANT_DOMAIN>/learning/saml/SSO
b) SAML logout URL (on the right):
Provider https://<LMS_TENANT_DOMAIN>/learning/saml/SingleLogou
Assertion t
Consumer
Services
This approach allows for the main BizX user attributes and the 15 BizX custom column values to be sent to the LMS with additional Live Profile
data.
(Two files, standard set of user attributes + 15 custom columns + extended BizX attributes)
Option 3: BizX Standard User File and LMS Direct Input File
If there is a need to capture custom columns values in addition to the 15 available in BizX and the customer has source data that is not sent to
BizX but is required to be in the LMS, the customer can send one user file to BizX and another to the LMS providing the user IDs match. Using
header processing with the standard LMS user connector it is possible to add additional custom columns or use a separate extended data file.
This approach allows for all standard LMS user attributes to be populated and any number of custom column values to be sent to the LMS.
(Two files, standard set of user attributes + any LMS additional attribute, X custom columns and the ability to process into the LMS which is not
in BizX).
For further information, log on to Jam and enter the following URL: https://jam4.sapjam.com/#groups/507366/documents/285994/slide_viewer
3.1.1 Creating the Data Extraction Job for the SF User Feed Extract
Access the customer provisioning page (see 2.3.1), and from the company instance, navigate to
Managing Job Scheduler > Manage Scheduled Jobs > Create New Job
From the Job Type field drop-down list, select “Employees Export” and schedule the user extract process.
Figure 5 SuccessFactors Business Execution Suite™ PROVISIONING, Companies, Create New Job
Typical Settings:
Job Owner: recommended to use the same “sfapi” account that was used for the cdpServiceParameterUsername
Job Parameters: (Character Encoding) Unicode (UTF-8)
Host Address: e.g. ftp2.successfactors.com:22
File Path: /incoming
FTP Passive mode: not checked
SFTP Protocol: checked
Date format: do not choose any value
File name: should be user_data_XXX.txt where XXX is the tenant ID configured in the connector properties file within Learning
File encryption: select PGP when desired (in most cases)
The file must be configured to be placed where the BizX-LMS User connector will pick it up from, so it must match what’s specified in the
CONNECTORS properties file. As of November 2011, the recommended pickup location is prodftp.successfactors.com and must match the
location that the employee export file was placed in. An example of the user.connector.ftp values in the CONNECTORS properties files is
listed below:
o user.connector.ftp.protocol=sftp
o user.connector.ftp.server=prodftp.successfactors.com
o user.connector.ftp.port=22
o user.connector.ftp.userID=<customer-specific FTP userID>
o user.connector.ftp.password=<password for the above UserID>
o user.connector.ftp.input.remoteDirectory=/incoming
Configure the Export Post the HRIS Import
3.1.2 Setting Up the Data Import with the SF User Connector in the LMS
Considerations
LMS user, SF user and any other connector settings / field mappings / PGP settings are available via
System Admin > Configuration > System Configuration > CONNECTORS
The BizX SF user connector is the connector process to import users from BizX
LMS Org Connector is required to create and maintain the Org Hierarchy in the LMS
BizX user data doesn’t contain IDs for DEPARTMENT, JOBCODE, DIVISION, LOCATION. BizX custom column values may be used and then
mapped to Standard LMS fields
When integration is ON, the Learning and BizX CONNECTOR licenses should be installed for SF Learning
The connector searches for a file with a tenant-specific filename. SF Learning’s Prod Ops will then determine the tenant name and provide it
to BizX core’s Prod Ops. The connector filename produced by BizX Core should be exported with the name of user_data_XXX.txt where XXX
is the tenant ID configured in the CONNECTORS properties file setting of connector.input.file.name.tenant.suffix.override=XXX within SF
Learning
Country codes: the codes loaded in SF Learning should be based on BizX core’s country codes. Invalid or non-existent country codes will
result in the user record being rejected
Locales: en and en_US will map to the English locale in SF Learning by default. Other locales will need to be created in SF Learning according
to BizX’s locales.
Time zones: all time zones in SF Learning that are coming from BizX Core should have the display flag set to “Yes”
Frequently, the data format is different for BizX (or the source HIRS/BizX) and SF Learning. For example, in the HRIS, the country may be
completely in uppercase, for instance CHINA, DENMARK, or FRANCE, while in the LMS it is written as follows: China, Denmark, and France.
In this case you will need to add a transform configuration in the connector properties file, such as:
sfuser.field.transform.data.CNTRY.China=CHINA
sfuser.field.transform.data.CNTRY.Denmark=DENMARK
sfuser.field.transform.data.CNTRY.France=FRANCE
APM
Once you know when the BizX export/customer source file will be placed on the SFTP site (a 500-user extract takes less than 5 minutes to
export) the User Connector – SF can be scheduled to pick up the file and process it.
The following configurations enable the fields for the extended user information export and imports. If you want to make the fields visible in the
BizX user interface you must configure the BizX Employee Files module. This requires knowledge of how to both configure Employee Files
portlets and set the proper field permissions.
3.2.1 Creating the Data Extraction Job for the Extended User Feed Extract
Access the customer provisioning page (see 2.3.1), and from the company instance, navigate to
Managing Job Scheduler > Manage Scheduled Jobs > Create New Job
The fields listed below are not part of the standard user extract; in order to feed them into the LMS, a separate feed needs to be set up and
the fields must be configured in BizX to make them available to the extended user feed extract. Please be sure to perform the steps
described in the next section.
The extended user data file will be used as a secondary file, meaning the BizX-LMS user connector will process the file only if a primary file
also exists in the expected location.
Used to feed in the following fields: Employee Type, Employee Class, Is Full-Time, and Regular/Temp.
Figure 7 SuccessFactors Business Execution Suite™ PROVISIONING, Companies, Create New Job
<hris-element id="jobInfo">
<hris-field id="employee-class" max-length="256" visibility="both">
<label>Employee Class</label>
<picklist id="employee-class"/>
</hris-field>
<hris-field id="regular-temp" max-length="32" visibility="both">
<label>Regular/Temporary</label>
<picklist id="regular-temp"/>
</hris-field>
<hris-field id="is-fulltime-employee" visibility="both">
<label>Is Fulltime Employee</label>
</hris-field>
<hris-field id=”emplStatus” max-length=”” visibility=”both>
<label>Employee Status</label>
<picklist id=”employee-status”/>
</hris-element>
<hris-sync-mappings>
<hris-element-ref refid="jobInfo">
<hris-mapping >
<hris-field-ref refid="is-fulltime-employee"/>
<userinfo-element-ref refid="is-fulltime-employee"/>
</hris-mapping>
<hris-mapping >
<hris-field-ref refid="employee-class"/>
<userinfo-element-ref refid="employee-class"/>
</hris-mapping>
<hris-mapping >
<hris-field-ref refid="regular-temp"/>
<userinfo-element-ref refid="regular-temp"/>
</hris-mapping>
<hris-mapping >
<hris-field-ref refid="emplStatus"/>
<userinfo-element-ref refid="emplStatus"/>
</hris-mapping>
</hris-element-ref>
</ hris-sync-mappings >
In general, this XML structure should appear immediately after the <standard-element> field definitions.
UserInfo Elements:
<userinfo-element id="regular-temp" type="varchar" display-size="32" max-length="32" required="false">
<label>Regular/Temporary</label>
</userinfo-element>
<userinfo-element id="is-fulltime-employee" type="varchar" max-length="4" required="false">
<label>Is Fulltime Employee</label>
</userinfo-element>
<userinfo-element id="employee-class" type="varchar" display-size="256" max-length="256" required="false">
<label>Employee Class</label>
</userinfo-element>
<userinfo-element id="emplStatus" type="varchar" display-size="45" max-length="45" required="false">
<label>Employee Status</label>
</userinfo-element>
Figure 9 SuccessFactors Business Execution Suite, Administration Tools, Set User Permissions – User
To grant admin users “Learning Admin Access” permissions under Administration Tools, navigate to:
Manage Employees > Set User Permissions > Manage Permission Roles > <select a role> > Permission Settings > Administrator Permissions >
Manage Learning > <Select> the Learning Admin Access Permission checkbox
Figure 10 SuccessFactors Business Execution Suite, Administration Tools, Set User Permissions – Admin User
Remove any already imported keys (in the “Imported Keys” web page section), browse for the Public Key (in the “Import Encryption Key” web
page section) you obtained via the instructions in the “Retrieve PGP public key from SF Learning” document section, and import the public key,
which should now show up under the “Imported Keys” web page section with a current date/timestamp.
Figure 11 SuccessFactors Business Execution Suite™ PROVISIONING, Companies, File Encryption Key Settings
f. Apply Changes
Note: The values for the private key and passphrase are now encrypted. Therefore, these values now may appear different from what
they were when you first entered them.
3. Retrieve PGP public key from SF Learning
The connector PGP configuration is found in the CONNECTORS system configuration
System Admin > Configuration > System Configuration > CONNECTORS
a. Copy and install the Base64 decoder application
b. Open the CONNECTORS configuration
c. Locate the connector.pgp.public.keyring property
d. Copy the property value
e. Paste the property value into the Base64 encoded data: text box of the Base64 decoder application
f. Enter a file location/name to save the public key file (for example public.key)
g. Click Decode to save the public key file (you will later import this file during the BizX Core provisioning process)
Set the value of the connector.pgp.secret.keyring to the contents of the secring.gpg.base64 file
Set the value of connector.pgp.passphrase to the passphrase obtained from BizX
6. Apply Changes
Note: The values for the private key and passphrase are now encrypted. Therefore, these values now may appear different from what they
were when you first entered them.