Using PeopleSoft Directory Interface with HCM

These topics discuss how to:

  • Access sample mappings and delivered service operations.

  • Use sample mappings.

  • Review delivered service operations.

If you have licensed PeopleSoft Directory Interface for HCM, PeopleSoft provides you with sample mappings and service operations for HCM.

To use sample mappings that PeopleSoft delivers, establish directory IDs in the Directory Configurations component (PSDSSETUP) and add a directory ID to the mappings. The sample mappings use schema objects from a standard Novell eDirectory.

We developed the sample mappings assuming that you are using the tree structure illustrated below, which is HR_PERSONs reporting to HR_DEPARTMENT, the departments are associated to the HR_LOCATION, which report to the corporate level, or HR_COMPANY:

Sample Directory Interface tree

Note: PeopleSoft delivers HR_LOCATION, HR_DEPARTMENT, and HR_PERSON as sample mappings

The following topics describe the delivered sample service operations and PeopleCode functions that are related to your directory mappings.

Directory Interface Service Operations

PeopleSoft Directory Interface delivers the following sample messages for mapping PeopleSoft data to the directory.

Service Operation Name

Directory Entry

DSLOCATION_SYNC

Location Entry (syncs entire record)

DSLOCATION_SYNC_EFF

Location Entry (syncs current row)

DSDEPT_SYNC

Department Entry (syncs entire record)

DSDEPT_SYNC_EFF

Department Entry (syncs current row)

DSWORKFORCE_SYNC

Job Entry (syncs entire record)

DSWORKFORCE_SYNC_EFF

Job Entry (syncs current row)

DSPERSON_BASIC_SYNC

Person Entry (syncs entire record)

DSPERSON_BASIC_SYNC_EFF

Person Entry (syncs current row)

Note: The Directory Interface engine, using the message level HCDI_SERVICES:HCDIUtilities.runPOIandIdentifictn, populates the DSIDENTIFICTN table with HCM values that you can use for creating directory interface maps. For example, it generates a Universal Unique Identifier string and stores it in DSIDENTIFICTN.DSUUID and a default Unique Identifier, stored in DSIDENTIFICTN.DSUID. The default unique identifier defaults to the current person's email address, or, if blank, to the First Name + Last Name.

The UID field is limited to fifty characters. The system truncates the person's name if it exceeds fifty characters.

See PeopleTools PeopleSoft Integration Broker

DSMAPINPUT Message

The DSMAPINPUT service operation, which corresponds to Directory Input, is a sample service operation that combines a person's job and personal data into one service operation. The DSWORKFORCE_SYNC mservice operation publishes person's job information. The DSPERSON_BASIC_SYNC service operation publishes a person's personal information.

In the subscription of DSWROKFORCE_SYNC and DSPERSON_BASIC_SYNC, the service operation is passed as input into the BuildMappingMessage, which populates the DSMAPINPUT service operation with the employee's job and personal data. This enables you to map job and personal data for one service operation to one directory entry.

BuildMappingMessage Syntax

The BuildMappingMessage function populates a service operation with data that is stored in another service operation and with data from the local database. After populating the service operation from the two data sources, it calls the mapping function. When all the data required for directory mapping isn't in the original published service operation, BuildMappingMessage uses this function instead of directly calling the mapping function:

BuildMappingMessage (input message, output message, on-line flag, [, map name])

The function performs the following tasks:

  • Copies data in the same record from the input service operation into the output service operation.

  • Searches for empty records in the output service operation.

  • Examines data in the service operation for key values for empty records.

  • If it finds key values for empty records, populates empty records in the output service operation by retrieving its current rows in the database.

  • If a map name is provided, calls the mapping function for the specified name. Otherwise, calls the mapping function for each map referencing the output service operation.

The BuildMappingMessage is found in the application package and class that is associated with handler of the _EFF service operation. For example, you can find the BuildMappingMessage for the DSLOCATION_SYNC_EFF service operation in the DSMappingSub application class, which is part of DSLOCATION_SYNC_EFF application package. The BuildMappingMessage code is in the FUNCLIB_EO_DS derived record, DSMAPMESSAGE field, FieldFormula event.

Parameters

Name

Type

Description

input service operation

Message

Pass the message containing the originally published data.

output service operation

String

Specify the name of the message to be created, populated, and passed to the mapping function.

online flag

Boolean

Set to true if the function is called after an online message publication. This flag isn't used by the BuildMappingMessage function, but it is passed to the mapping function.

map name

String

Specify the name of the map to be used if the function shouldn't call every map associated with the output message.

An example:

Local Message &MsgIn;
BuildMappingMessage(&MsgIn, "DSMAPINPUT", True, "PERSON_NDS");