Creating and applying Rules for Position Management

Objectives

After completing this lesson, you will be able to:
  • Create a business rule that propagates data to automate position creation.
  • Create a business rule to default position values
  • Create a business rule to default attributes when creating positions from the Position Organizational Chart
  • Verify the Right to Return to a position from a Global Assignment
  • Create a business rule to ensure synchronization of position changes into the incumbent's job information
  • Create a business rule to update multiple positions
  • Create other business rules to maintain positions

Propagate Data from Job Classification to Position

Data propagation for job related fields is possible during Position creation and during Position Change. This is achieved through business rule assigned to the Job Code field in Position Object. When Job Code is updated on a position, other related fields like Job Level, Pay grade, will be auto-filled with the information from the Job Code (Job Classification) record.

  • Create a Propagation Rule under Rules for MDF Based Objects Scenario, selecting Position as the Base Object and Evaluate as the purpose.
  • Assign the Rule at the jobCode field in Configure Object DefinitionPositionTake ActionMake CorrectionjobCodeDetailsRules, and select the rule from the drop down option under External Code

Create a Propagation Rule from Job Classification to Position

In this exercise, you will create a business rule to auto-fill data from the Job Classification when creating and managing positions based on the Job Classification data

Steps

  1. Create a new business rule to propagate data from the Job Classification into the Position

    1. Navigate to Configure Business Rules using Action Search.

    2. Select the + to Create New Rule

    3. In the rule scenario category list, expand Metadata Framework and click on Rules for MDF Based Objects rule scenario

    4. In the Rule Name, type Propagate_Job_Classification_to_Position and leave the Rule ID with the same name.

    5. Leave Start Date as 01/01/1900

    6. Select Position, as the Base Object.

    7. Select Evaluate, as the Purpose.

    8. Select Continue.

  2. Add the conditions (IF) and statements (THEN) that will include the business rule. Use the image below to replicate the rule in your instance. Choose Save when finished

  3. Assign the Business Rule

    1. Select the "Dot" symbol that appears beside the Rule Name and reads "The rule is not assigned" when hovering over, as shown in the image.

    2. Choose Assign Rule.

    3. Select the first option "This rule can be assigned at the field level for object "Position". You will be redirected to the Position Object Definition.

    4. Select Take ActionMake Correction.

      Note

      Alternatively to steps 4a - 4d, you can navigate directly to Configure Object DefinitionObject DefinitionPositionTake ActionMake Correction .
    5. Scroll down to the jobCode field and click on Details

    6. Select the rule Propagate_Job_Classification_to_Position under Rules section

    7. Select Done.

    8. Scroll down and click Save to save changes in the Position Object definition.

  4. Test the rule

    1. Navigate to Manage Positions using Action Search.

    2. Navigate to Create NewPosition

    3. Select any Job Code and verify the fields included in the Business Rule are auto-filled.

    4. Select Cancel and Don't Save.

Default Values when Creating a New Position

Previously you learned about Data Propagation which will help on auto-filling the Job Classification details into the equivalent fields on the Position object, based on the job code. This rule will trigger when the job code field value changes from "null" or from a different value (rule event type is onChange).

For those fields that are common among positions in the organization, such as FTE, To Be Hired, Mass Position, Position Controlled or Change Reason, and will not propagate from the Job Classification, you can set up a business rule to default values when a new position is being created. This will help on more data efficiency.

Create a Business Rule to Default Values on Position Creation

Steps

  1. Navigate to Configure Business Rules using action search, and select + to Create New Rule.

  2. Select Rules for MDF Based Objects scenario under Metadata Framework.

  3. Create the business rule logic (IF - Always True / THEN)

  4. Assign the Business Rule in the Position object Configure Object DefinitionPositionTake ActionMake CorrectionRules section and locate the rule in Initialize Rules drop down.

  5. Save changes to confirm the rule assignment under Initialize Rules in the Position object.

Result

Once the rule is assigned, new positions created will be displayed with default values for some common fields (as an example, if most of the positions should be created under the same Legal Entity or Division, Position standard hours is always the same, or many of the positions have a specific Incentive Plan).

Note

An alternative to creating this type of rule would be to use the Default Value option in the MDF Object Definition for every field that we intend to have a default value, so it initializes the new page with the given value, which can be overwritten. However, only the values of fields of Data Types String, Number, Date, Boolean can be assigned as default values using this option.

This rule example is different from the Default Position Attributes in Position Organization Chart rule scenario, which is related to creating Lower-Level Positions from Position Org Chart, or creating Same-Level Positions from the Position Org Chart, My Team Positions page or Joule AI Assistant.

Default Position Attributes in Position Organization Chart

When adding Lower-Level or Same-Level Positions from the Position Org Chart, you can default values to copy from the Source Position into the New Position being created, to help on the data entry

Caution

This Business Rule works for Create Same-Level Position and Add Lower-Level Position, but it does not work for the Copy Position function.

The field Parent Position should NEVER be included on the business rule, since it will be derived automatically by the system when creating a New Position, based on the position hierarchy.

Additionally, the rule to Default Position Attributes will also work in the following cases:

  • Create Same-Level Position (Copy Rule) from My Team Positions.
  • Create Same-Level Position (Copy Rule) from the SAP Business AI Assistant (Joule).

Note

The use case Create Same-Level Position (Copy All Fields) that can be also used from My Team Positions, does not apply this business rule, but instead will copy all the fields over. More information can be found in the Implementation guide: Use Cases for Employee Central Quick Actions for Positions

Create a Business Rule to Default Position attributes

Your customer would like to streamline the creation of Lower-Level and Same-Level Positions by creating and assigning a business rule to default position attributes

Steps

  1. Create a Business Rule to Default Position Attributes

    1. Navigate to Configure Business Rules from the Action Search.

    2. Select + to Create New Rule

    3. Expand the Position Management category, to show all the available scenarios.

    4. Select Default Position Attributes in Position Organization Chart scenario, by choosing the radio button. Add the following details:

      • Rule Name: Default_Position_Attributes
      • Rule ID: Default_Position_Attributes
      • Start Date: 01/01/1900
      • Description: Rule to default values if a new position is created via Add Lower-Level or Create Same-Level Position
    5. Select Continue

  2. Define the business rule logic based on the image below

    1. IF (conditions) - Select the Always True checkbox.

    2. THEN (statements) - Select Add Expression after each statement to add the following one.

      • Set New Position.Company to be equal to Source Position.Company
      • Set New Position.Business Unit to be equal to Source Position.Business Unit
      • Set New Position.Division to be equal to Source Position.Division
      • Set New Position.Department to be equal to Source Position.Department
      • Set New Position.Cost Center to be equal to Source Position.Cost Center
      • Set New Position.Employee Class to be equal to Source Position.Employee Class
      • Set New Position.Job Code to be equal to Source Position.Job Code
      • Set New Position.Job Level to be equal to Source Position.Job Level
      • Set New Position.Location to be equal to Source Position.Location
      • Set New Position.Pay Grade to be equal to Source Position.Pay Grade
      • Set New Position.Regular/Temporary to be equal to Source Position.Regular/Temporary
      • Set New Position.FTE to be equal to Source Position.FTE
      • Set New Position.Incentive Plan to be equal to Source Position.Incentive Plan
    3. Choose Save, but do not navigate away from Configure Business Rules.

  3. Assign the Business Rule in Position Management SettingsUI CustomizingRule for Defining Copy-Relevant Position Fields.

    1. Select the "Dot" symbol beside the Default_Position_Attributes rule name, that reads "The rule is not assigned" when hovering over. A Rule Assignment wizard will open.

    2. Choose Assign Rule.

    3. On the next step, there is an Open Assignment Page selectable arrow to navigate to Position Management Settings from the wizard. A new tab will be opened.

    4. In Position Management Settings, choose the UI Customizing tab.

    5. Under Rule for Defining Copy-Relevant Position Fields, select the Default_Position_Attributes rule that displays.

    6. Choose Save.

    7. Close this tab and verify the rule is now assigned in the Configure Business Rules page.

Create a Same-Level Position from the Position Org Chart

In this exercise, you will Create a Same-Level Position from the Position Org Chart to test the business rule that you created previously.

Note

As you learned previously in this course, the creation of a Same-Level Position could be also completed using My Team Positions page, or via SAP Business AI Assistant (Joule), if the use case Create Same-Level Position (Copy Rule) has been setup by an administrator. However, the total number of fields that can be edited using Quick Actions cannot be more than 8. For more information, review Unit 3 of this course or check the Implementation guide: Employee Central Quick Actions for Positions

Your customer is expanding their Sales Operations globally, and they need to create a new Position: Sales Director, Europe, based in Germany, and will have the same position attributes as the Sales Director, NE – Marcus Hoff, except for the company, location, job and position title, and TBH.

Steps

  1. Create Same-Level Position from the Position Org Chart

    1. Navigate to Position Org Chart from HomeCompany Info

    2. Leave the first dropdown option to Search By: Positions and Search for Sales Director, NE on the second dropdown option.

    3. Select the position DIR_SALESNE to open the Position Key Information.

    4. Locate the Actions menu, and select Create Same-Level Position from the available options.

    5. Add the following details (leave other field values not included in this table as-is):

      FieldValue
      Position CodeDIR_SALESEU
      Position TitleSales Director, Europe
      StatusActive
      Start DateSet to today's date
      To Be HiredYes
      Standard Weekly Hours38
      Incentive PlanIndividual
      Onsite / RemoteOnsite Position
      Job TitleSales Director, Europe
      CompanyAce Germany (ACE_DEU)
      LocationFrankfurt, Germany (GER_FRA)
    6. Can you see the fields included in the Business Rule auto-populated? The Default Position Attributes rule should trigger when creating the position and before saving changes.

    7. Verify how the Parent Position is automatically assigned based on the new position's hierarchy.

    8. Save changes and close the Position record to go back to the Position Org Chart.

    9. The new position is displayed.

Manage a Global Assignment

In this exercise, you will be setting up the Position Management Settings for the Right to Return and adding a global assignment for an employee to explore the impact on the host and home position assignments. You will be using the position created in the previous exercise to test the Default Position Attributes business rule and practicing the knowledge learned in Unit 3 about this type of employment and how it impacts positions.

Note

The required business rules to create right to return are already set up in your instance. You will complete the assignment of the rules in Position Management Settings as part of the step 1 in this exercise.

Steps

  1. Set up the Right to Return from Global Assignment in Position Management Settings.

    1. Navigate to Position Management Settings using Action Search.

    2. Select the Right to Return tab.

    3. Set the following options within the Right to Return for Global Assignment:

      • Unassign from Position: THR79 - PositionRightToReturnUnassign.
      • Create Right to Return: THR79 - PositionRightToReturnAssign.
      • Event Reason for unassigned Position: Away on Global Assignment (AGA).
      • Event Reason for assign Position: Back from Global Assignment (BGA).
    4. Choose Save to save the changes.

  2. Add a Global Assignment for an Incumbent.

    1. In the Action Search, type global and select the Manage global assignments for... option.

    2. Type Clive Wu. He is the incumbent for the Manager of Food and Beverage position, located in USA.

    3. Set the following Global Assignment Details:

      • Assignment Start Date: The first day of the current month (example: 04/01/2024)
      • New Assignment Company: Ace Germany (ACE_DEU)
      • Event Reason: Add Global Assignment (ADD_GA)
      • Assignment Type: Long-term assignment
      • Planned End Date: The last day of the following year (example: 12/31/2025)
    4. Select Continue.

    5. Select Sales Director, Europe as the Position.

    6. All the organizational and job information should propagate based on the business rule.

    7. Scroll down to the bottom of the page, and select Submit.

    8. A workflow will be triggered. Select Submit to confirm.

    9. Proxy as Alex Anderson, one of the members of the Talent Approval workflow group where this request was sent.

    10. Locate the workflow request and select Approve.

    11. Become Self to navigate back as the administrator.

  3. Verify the Right to Return to the home position and the Global Assignment on the host position, are visible in the Position Org Chart.

    1. Navigate to the Position Org Chart.

    2. Search for the Sales Director, Europe position.

    3. Verify that a Global Assignment icon displays in the Position Card and the incumbent is Clive Wu. The position TBH status has been also updated, and position is fully staffed.

    4. Use the calendar to navigate the Position Org Chart as a future date. Make sure to select a date after the end of the Global Assignment.

    5. Verify that the position Sales Director, Europe is back to TBH status.

    6. Use the calendar to navigate the Position Org Chart as today's date.

    7. Search for the Manager of Food and Beverage position.

    8. Verify that an Away on Global Assignment icon displays. If you select the icon, the Global Assignment Details are shown.

    9. Use the calendar to navigate the Position Org Chart as a future date. Make sure to select a date after the end of the Global Assignment.

    10. Verify that the icon is no longer shown for the position once the Global Assignment is ended.

Synchronization of Position Changes to Incumbents

As you create positions and fill incumbents into those positions, maintaining shared fields between an individual’s job information and the position can become cumbersome. Therefore you might want to configure data synchronization between positions and jobInfo.

Administrators can specify which common fields between the Position object and the jobInfo employment object are synchronized when changes are made to a Position Record from the Position Org Chart or from Manage Positions tool. A business rule must be created to define which fields will sync between the Position object and the Job Information block. You can then decide if the sync process is automatic, or if it allows the user making the change to the position to decide if the sync should occur.

Caution

The Position Synchronization will NEVER work if the position is updated via Manage Data.

Steps for setting up Position Sync:

  1. Create a Business rule. Navigate to Configure Business Rules and choose Create New Rule.
  2. Select the rule type: Synchronize Position Changes to Incumbents.
  3. Determine which fields should sync in the rule.
  4. In the Synchronization section of Position Management Settings tool, choose your rule in the Rule for Synchronizing Position to Job Information area.
  5. In the Position Synchronization option in the same area, determine if the sync should be automatic or up to the user making the change.

Considerations when Synchronizing Position Changes to Incumbents

This rule scenario will specify which common fields between the Position object and the Job Information employment object will synchronize when changes are made in the Position from the Position Org Chart, via Edit and Manage mode, or changes made via Manage Positions.

The business rule will determine which fields will be derived from the Position updates into the equivalent fields in Job Information. Additionally, the option Position to Job Information Synchronization will determine whether the synchronization should be automatic, based on user decision, or never (not recommended).

  • Create the rule using the Synchronize Position Changes to Incumbents scenario
  • Assign the rule in Position Management SettingsSynchronizationRule for Synchronizing Position to Job Information
  • Determine the Position to Job Information Synchronization to be Automatic, User Decision, User Decision If Required, or Never.

Note

The field order is essential to ensure the Position changes synchronize correctly to Job Information, particularly for Foundation Objects. Since a Business Unit is higher than Division, and Department is lower than Division, the order in the business rule should follow this hierarchy (Business Unit > Division > Department).

Caution

Fields that should not be used in this rule

The following Job Information fields should not be part of the rule for Position to Job Information Synchronization as it could lead to data inconsistencies (Whenever you adapt an existing rule created with this scenario, the system checks whether one of these Job Information fields is used in the rule, and display an error message):

  • Company (*see note below)
  • Any field of type attachment
  • Position
  • Sequence number
  • Workflow configuration
  • Start date
  • Event Reason
  • Full-time equivalent (FTE)
  • Effective latest change
  • Supervisor
  • Matrix Manager
  • PositionCostAssignmentItems

Note

*Company/Legal Entity should ONLY be mapped via the business rule, if the parameter "Use Company Filter for Positions in Manager Self-Service Job Information, History, and Quick Actions" option is set to "No" on Position Management SettingsUI Customizing tab. For more information, you can check the following KBA: 2386613 - When can you include Company/Legal Entity in the Position to Job Information Sync Rule

Synchronize Position Changes when Importing Positions

When importing positions via Import and Export Data , the Position to Job Information synchronization will not trigger by default. The following steps should be done to ensure the new position data will update the incumbent's information even when importing positions:

  • When importing positions, add the technicalParameters column to your position import file, and enter "SYNC" or "sync" as the value for those position records that should trigger a synchronization to the Job Information object.
  • Those records to be imported with no technicalParameters=SYNC, will be ignored for the synchronization. The Position will be updated, but the incumbent's Job Information won't.
  • The technicalParameters field in the Position Object, is by default, not visible. You have two options on how to set this field in the object definition:
    1. Leave the technicalParameters field as Not Visible. You will need to add a technicalParameters column manually in the import file.
    2. Set the technicalParameters field as Editable, and make sure that the field is hidden from the UI. You can achieve that in Manage Permission RolesUser PermissionsMiscellaneous PermissionsPositionField Level Overrides and ensure that technicalParameters is set to No Access.

Hint

With the second option, the field will still be not editable or visible in the UI, but the technicalParameters column will be included automatically in the CSV import template.

Synchronize Incumbent's Changes to Position

You can also automatically sync changes from a incumbent's Job Information section out to the Position. This is less commonly used and only recommended for setups with strict 1:1 relationships between employees and positions.

A business rule to specify which common fields are synchronized to the position object when changes are made in the Job information employment object can be defined. For example, a rule can be defined to synchronize Department, Cost Center, Location and Job Code of the incumbent to the assigned position.

This allows the manager to amend a key subset of data on employee level which is more intuitive than maintaining position data and then syncing to the person. The data elements synced to position here are the elements that are deemed to have higher volatility and are acceptable not to be driven by Position data and which can validly be driven by employee data changes.

Note that this will only apply to changes that the system regards as Position Reclassification or Position Transfer. Event Reasons will follow up activity maintained as Position Reclassification/Position Transfer are checked for this identification.

Caution

Fields that should not be used in this rule

Just like the previous rule scenario to synchronize Position changes to Incumbents, the following Position fields should not be part of the rule for Job Information to Position Synchronization as it could lead to data inconsistencies (Whenever you adapt an existing rule created with this scenario, the system checks whether one of these Position fields is used in the rule, and display an error message):

  • Any field of type attachment
  • Matrix Relationships
  • PositionCostAssignmentItems
  • Position Type
  • Source of Creation
  • Position Controlled
  • To Be Hired
  • Workflow Configuration

The following fields were excluded from the THEN section to ensure they are not in the business rule.

  • Change Reason
  • Criticality
  • Higher-Level Position
  • Incumbent
  • Multiple Incumbents Allowed
  • Pay Range
  • Status

Create and Assign a Business Rule to Synchronize Position Changes to Incumbents

In this exercise, you will create a Business Rule to Synchronize Position Changes to Job Information and Incumbents for the Position.

Steps

  1. Create a Position to Job Info Sync Business Rules.

    1. Navigate to Configure Business Rules using Action Search.

    2. Select the + option to Create New Rule.

    3. Select on Position Management to expand the section and display the available scenarios.

    4. Select the first scenario Synchronize Position Changes to Incumbents.

    5. Type Position_to_JobInfo_Sync on the Rule Name. The name will be copied to the Rule ID. You can leave it as-is.

    6. Leave the default Start Date as 01/01/1900.

    7. In the Description add "Assigned to jobInfo, Position field, onChange; and to Position Management Settings/Synchronization".

  2. Add the conditions and statements following the example on the image below. Choose Save when finished, to save changes.

  3. Assign the Business Rule

    1. Select the "Dot" symbol beside the rule name to assign the rule from the Rule Assignment wizard. Alternatively, you can navigate to Position Management Settings using the Action Search, and select theSynchronization tab.

    2. Change the Position Synchronization field from Automatic to User Decision If Required to test how the system will trigger a confirmation dialog and let the user decide on whether synchronization should occur.

    3. On the Rule for Synchronizing Position to Job Information, select the Position_to_JobInfo_Sync rule that you just created

    4. Choose Save.

  4. Test the rule by making changes in one of the Positions and verify how a confirmation dialog will trigger a user decision on synchronization of position changes to the incumbent's job information.

    1. Navigate to Home menuCompany InfoPosition Org Chart tab.

    2. Search By Positions and Search for Sales Director, NE position whose incumbent is Marcus Hoff.

    3. Select the Position card to open the Position Key Information, and select the Show Details button.

    4. Select Edit to make changes on the position

    5. Enter Effective Date for this change01/01/2024, and select Proceed.

    6. Change Job Title into Sales Director, North East Area.

    7. Choose Save. A Synchronize Incumbents confirmation dialog will display to confirm that you want to synchronize the position data as of 01/01/2024 to the following incumbents. Select Yes to confirm and accept these changes.

    8. When finished, close the Position Dialog.

    9. Select on the incumbent Marcus Hoff to open the Public Profile view, and locate the All Actions menu.

    10. Search for Employment Information on the links menu to navigate to Marcus profile.

    11. Verify the changes on the Position have been synced to the incumbent job information. You can see the new Job Title in the Job Information block, as well as in the Employee File header.

  5. As an optional step, you can navigate back to Position Management SettingsSynchronization to set back Position to Job Information Synchronization to Automatic. With this option, the synchronization will always occur and will not be a user decision anymore.

Manage Mass Changes for Metadata Objects (Mass Change Run)

There is a mass change feature to make changes simultaneously to a large number of positions. You can include a Business Rule using the Mass Change Run scenario to define the position target population and the change attributes.

The Mass Change Run object is secured by default. You can grant access by going to Admin CenterManage Permission RolesUser PermissionMiscellaneous Permissions and grant View, Edit and Import/Export access.

Additionally, access to Manage Mass Changes for Metadata Objects is required and can be granted in Manage Permission RolesAdministrator PermissionsMetadata Framework

Creating a New Mass Change Run

Mass Change Run can be created in Admin CenterManage Mass Changes for Metadata Objects. The following are the fields available for a Mass Change

  • Code. Unique code for the new mass change run
  • Name. Translatable name for the new mass change run.
  • Object Type To Be Changed. Indicates whether the object is a position or a time object.
  • Change Date. Date on which the changes take effect and all records (active, inactive, pending) valid from this date that match the IF condition of the Business Rule selected on Select and Update Rule field, will be included.
  • Synchronize To Incumbents. This indicates whether the changes in the position objects should be synchronized to the incumbents. Only fields defined in the rule registered at Position Management SettingsRule for Synchronizing Position to Job Information will be synchronized.
  • Select and Update Rule Enter a rule that defines which objects are selected and what is updated. Use IF conditions to restrict the number of objects to be changed by this mass change run. Use SET statements in the THEN condition to define the new values of objects. Only rules created with the Update Rule for Mass Change Run rule scenario can be selected, and only SET statements are supported.
  • Execution Mode. You can select Run or Simulate. When you choose Simulate, the mass changes aren't saved, but you can see the result in the log. If you choose Run, the mass changes are executed and saved.
  • Execution Status. This field shows the status of the mass change run (Scheduled, In Progress, Executed and Failed).
  • Log It shows information about the executed mass change run.

Note

In order to ensure that the mass change runs execute as smoothly as possible, it is recommended to set Use Rule Cache to Yes in the mass change run. The field is not visible by default. To enable it, follow these steps:
  1. Navigate to Configure Object Definitions and search for Mass Change Run object.
  2. Locate the useRuleCache field, and select Details.
  3. Set the visibility to Editable. Save changes.

Create and Assign a Mass Change Run update business rule

In this exercise, you will verify permissions to configure and create a Mass Change Run request, and enable the Rule Cache in the Mass Change Run object definition. As a next step, you will create a Business Rule to update the Position/Job Title for Engineer Positions located in USA, and assign the rule to your Mass Change Run request.

Steps

  1. Grant Permissions to Administrator to create and manage Mass Change Run Job requests

    1. Navigate to Manage Permission Roles and select the System Admin role.

    2. Click on Permission... and navigate to User PermissionsMiscellaneous Permissions

    3. Locate the Mass Change Run object and enable all permissions (View / Edit / Import/Export

    4. Scroll down to Administrator Permissions and locate the Metadata Framework permission section.

    5. Verify that Manage Mass Changes for Metadata Objects permission is enabled.

    6. Click Done.

    7. Click Save Changes

    8. Log out and log back into the instance to make sure the RBP changes are effective.

  2. Enable the Rule Cache in the Mass Change Run object definition.

    1. Navigate to Configure Object Definitions using Action Search.

    2. Search Object Definition in the first dropdown and select Mass Change Run in the second dropdown.

    3. Select Take ActionMake Correction.

    4. Scroll down to the bottom of the Fields section and locate the useRuleCache field.

    5. Select Details and set the Visibility to Editable.

    6. Select Done and Save to save your changes in the object definition.

  3. Create a new Business Rule for Mass Change Run.

    1. Navigate to Configure Business Rules using Action Search.

    2. Click on + to Create New Rule

    3. Click to expand Position Management scenario, and select Update Rule for Mass Change Run

      • Rule Name : Position_Mass_Change_Rule.
      • Rule ID: Position_Mass_Change_Rule
      • Start Date: 01/01/1900
    4. Click Continue

    5. Create the Rule replicating the image below and save changes. Do not assign the rule yet.

  4. Create a New Mass Change Run and assign the Business Rule you have created previously, according to the Mass Change Run table.

    Mass Change Run

    Field.Value.
    CodePosMassChangeRun.
    NamePosition Mass Change Run.
    Object Type To Be ChangedPosition (Position).
    Change DateSelect Today's Date.
    Synchronize To IncumbentsYes.
    Select And Update RuleSelect the Position_Mass_Change_Run rule you created
    Execution ModeSimulate.
    Use Rule CacheYes.
    1. Navigate to Manage Mass Changes for Metadata Objects, and select Create NewMass Change Run .

    2. Create the Mass Change Run using the details on the table above.

    3. Save changes. The Scheduled Job will start.

    4. Refresh the page several times until the Log section shows the Execution Status as Success. You can click on Details to check the CSV file that includes all the information from this simulation.

    5. If Simulation results were successful, edit the Mass Change Run from Take ActionMake Correction and change the Execution Mode to Run. Save changes.

    6. Refresh the page several times until the Log section shows the Execution Status as Success . The Execution Mode for this new job will be Run, which will apply the changes.

    7. As an additional step in the Mass Change Run Log last results (Execution Mode=Run), click on Details and click on the MassChangeRun_PosMassChangeRun CSV file to download the results of the Mass Change Run job. You should see a total of 5 Engineer positions and [The record was inserted successfully.] on the last column, which confirms the change has been successfully completed.

    8. Close the pop-up window and click Done to finalize.

  5. Verify your changes on the Position Org Chart and confirm the Position/Job Title is updated.

    1. Navigate to Position Org Chart from HomeCompany Info.

    2. Search for any of the Engineer positions (ENG1, ENG2, etc). Confirm if the new position changed to Software Engineer USA and the job title changed to Software Engineer

Generate Position Code Automatically

Generating the Position Code automatically when creating a new position will ensure consistency and avoid data entry issues. The autogeneration of position code can be defined differently, based on position attributes, like the Country of the Company. So positions could include US, DEU, ESP, PT or other, in the position code, depending on which country the position is assigned to. But there are multiple variables that customers can leverage adding the different conditions in the business rule.

There are some requirements and steps to complete in the system to generate position codes:

  • Create the numeric sequence from Manage Sequence or Manage Data. Multiple sequences can be created and be included in the business rule, which could be different based on country, department or any other position attribute. For example, positions in US could follow a sequence (US_POS10, US_POS20, US_POS30...) and positions in Germany could follow a different sequence (DEU_POS25, DEU_POS30, DEU_POS35 and so on).
  • Create a Business Rule in the Rules for MDF Based Objects scenario, with Position as Base Object and Evaluate as the Purpose.
  • Assign the Business Rule in the Position object definition, under Save Rules.
  • Set the code field (externalCode) as read-only in the Position object definition, so it's no longer editable and follows the business rule to autogenerate codes.
  • Set to "Yes" the flag Position External Code Generation by On Save rule in Position Management SettingsGeneral.

Hint

When defining the business rule to auto-generate position code, you can select the Format for the template based on the Format String Syntax from Java. If, for example, your sequence starts with 1, but the code for the position will always be an 8-digit number starting with 1 and filled with zeros, you would use this pattern: 1%07d.

Based on the customer requirements, the following external link will help on deciding which pattern should be used in every scenario to generate position codes, and include it as a template in the business rule. https://docs.oracle.com/javase/7/docs/api/java/util/Formatter.html

Autogenerate Position Code

In the following example, we will create a business rule to autogenerate position code using two different alternatives, based on the Country of the Position Legal Entity (Company). A template will generate the Position Code as PTPosID_%d if the position is in Portugal and PosID%d if the position is NOT in Portugal. Different numerical sequences will populate in the % parameter for each condition.

Steps

  1. Create a new Sequence for Position Code auto-generation. This example has two different sequences. The PTSeqPos will be used for Positions in Portugal, starts with 1000 and moves 125 numbers forward every time (1000,1125,1250,1375…). Currently, the sequence is at 0 (the current field is transient and will update as positions are created). The second sequence will be used for any other position, starts at 106 and moves 10 numbers forward every time (106, 116, 126, 136...). There can be as many sequences as needed. Use Manage Sequence tool, Manage Data or Import and Export Data to mass create sequences.

  2. Create a Business Rule to Generate Position Code based on the sequences created.

    • Scenario: Rules for MDF Based Objects
    • Base Object: Position
    • Purpose: Evaluate
  3. Navigate to Configure Object DefinitionsPosition and set Position Code visibility as Read Only.

  4. Assign the Business Rule in the Position object definition, under Save Rules.

  5. Navigate to Position Management SettingsGeneralPosition External Code Generation by onSave rule, and set the value to Yes.

Result

The positions will be now have a position code autogenerated based on a business rule.

Define a Business Rule to Generate Automatically the Position Code

Your customer wants to have a business rule to generate the position code automatically when creating new positions.

Steps

  1. Create a new Sequence for Position Code auto-generation.

    1. Navigate to Manage Sequence using Action Search, and select Create NewSequence to create a new sequence for Position Code auto-generation.

    2. In externalCode, type SeqPos.

    3. In externalName, type SequenceForPosition.

    4. Select 1 as both start and step.

    5. Click Save to save your changes.

  2. Create a Business Rules to Generate Position Code automatically including the sequence you created previously.

    1. Navigate to Configure Business Rules using Action Search, and select + to create a new rule

    2. Expand the rule scenario Metadata Framework, and select Rules for MDF Based Objects.

    3. Add the following details using the table. Click Continue when finished.

      FieldValue
      Rule NameAutoGenerated Position Code
      Rule IDAutoPositionCode
      Start Date01/01/1900
      DescriptionRule for auto-generation of position code assigned on Save Rules in Position Object definition.
      Base ObjectPosition
      PurposeEvaluate
    4. Define the Business Rule including the conditions and statements shown on the image below

  3. Set the Position Code field as read-only and assign the Business Rule in Position Object (Save Rules)

    1. Select the dark "Dot" icon beside the Rule Name to open the Rule Assignment wizard.

    2. Click Assign Rule.

    3. Select This rule can be assigned at Save Rules in object "Position". A new tab will be opened with the Position object in Configure Object Definitions.

    4. Select Take ActionMake Correction

    5. Scroll down to the Fields section, locate the code field, and click on Details.

    6. Change the visibility from Editable to Read Only.

    7. Click Done to confirm.

    8. Scroll down to the Rules section, and select the AutoGenerated Position Code rule under Save Rules dropdown list.

    9. Click Save and close this tab.

    10. Back to Configure Business Rules, close the Rule Assignment wizard pop up window, and verify the "Dot" icon is now checked, which means the rule is assigned.

  4. Select the option to Autogenerate Position Code in Position Management Settings.

    1. Navigate to Position Management Settings using Action Search.

    2. In the General tab, locate the option Position External Code Generation by On Save rule, and select Yes

    3. Click Save to confirm.

  5. Test the Rule creating a new Position

    1. Navigate to Manage Positions using Action Search, and select Create NewPosition

    2. Verify that the Position Code field is now read-only

    3. Add some details to create a test position. We want to see how Position Code will autopopulate when saving.

    4. Click Save.

    5. Verify that the Position Code is auto-generated when and saving the position according to the sequence created (PosID_1, PosID_2, PosID_3 and so on).

Create an Approval Workflow for Position creation

In an organization using Position Management, there might be scenarios where Managers are empowered to create positions for their own teams. Even though the position object allows to a very granular control to who and for which target population positions can be created, an approval process may be required to select Approvers, Contributors or CC Roles to let them know about a position creation.

A Workflow Configuration will be the first step in the process. You will navigate to Manage Organization, Pay and Job Structures from the action search bar or the Admin Center to define a workflow for Position Creation, including the approver steps, contributors and/or CC roles that should be involved in the workflow.

Secondly, a Business Rule will need to be set up and assigned to the Position object to trigger the workflow when a new position is created.

Trigger Workflow to approve Position Changes

You can use workflows to validate Position object changes. Assign your rule to the event onSave of the position object definition.

  1. Create the foundation object Workflow that you want to use for Position.
  2. Create a rule by going to the Admin Center and choosing Configure Business Rules.
    • Rule Name, Rule ID, and Start Date.
    • Scenario Rules for MDF Based Objects.
    • Have Position as the base object and Workflow as the purpose.
    • You can use the IF or ELSE-IF statement to specify which conditions must be fulfilled for the workflow to be triggered.
    • You can use the THEN statement to set the workflow you created in step 1 to the wfConfig field of the Position.
  3. Assign your rule to the event onSave of the position object definition. You do this in the Admin Center by choosing Configure Object Definitions.
  4. Set the Pending Data field in the Position object definition to "Yes", thereby ensuring that, once a workflow is used, records are not visible in the system unless approved. This setting is a prerequisite for using workflows in positions.
  5. For MDF-based workflow approvals, the latest home page requires a solid relationship between the to-do category currently assigned in the "Configure Object Definitions" screen and the MDF object definition. In the ToDo Category field, you will notice that Generic Object Change Requests is selected (read-only).

Note

Unless using Position Types, you cannot execute a workflow on job information changes if you need to synchronize position changes with incumbents.

For more information, check the following resource: Setting Up Workflows for "Position To Job" Synchronization.

Define a Rule to trigger workflow for Position Creation

Your customer would like to define two conditional workflows and create on a business rule to trigger a workflow when a New Position is created in the US and another workflow when the position is created elsewhere in the organization.

Prerequisites

Note

IMPORTANT

To avoid undesired behavior of workflow determination based on fields that are changed during Save rule execution, the workflows will only trigger once all the MDF Rule Scenario rules assigned as Save/Validate Rules have been triggered, which means the rule to autogenerate the Position Code created in a previous exercise will always run first.

For that reason, the system will check that Position Code is not empty in order to trigger the workflow. In a real scenario, to ensure this workflow is only triggered for new positions, you could make the system evaluate the Original Record value of Position Code to be empty, which would be applicable to a New Position. More information about the order of execution in MDF objects is found here: Order of MDF-Based Rule Execution.

Steps

  1. Create a Workflow Configuration for new positions created in the US, using the following details and approval steps.

    FieldValue
    Workflow IDNewPositionUS
    NameNewPositionWFL - US
    Step 1Step 2
    Approver Type : Dynamic RoleApprover Type: Dynamic Role
    Approver Role: Finance Controller (FIN-CONT)Approver Role: HR Approval (HR)
    Edit Transaction: No EditEdit Transaction: Edit without Route Change
    Context: SourceContext: Source
    Relationship to Approver: N/ARelationship to Approver: N/A
    No Approver Behavior: Skip this stepNo Approver Behavior: Skip this step
    Respects Permission: NoRespects Permission: No
    Workflow Email Configuration No SelectionWorkflow Email Configuration No Selection
    1. Navigate to Manage Organization, Pay and Job Structures using Action Search.

    2. Select Create NewWorkflow Configuration and include the details using the table above.

    3. Create two approval steps following the table above.

  2. Create a Workflow Configuration for New Position not created in US.

    FieldValue
    Workflow IDNewPosWFNonUS
    NameNewPositionWFL - NonUS
    Step 1Step 2Step 3
    Approver Type : Dynamic GroupApprover Type : Position RelationshipApprover Type: Dynamic Role
    Approver Role: Talent ApprovalApprover Role: Parent Parent PositionApprover Role: HR Approval (HR)
    Edit Transaction: No EditEdit Transaction: Edit without Route ChangeEdit Transaction: Edit without Route Change
    Context: N/AContext: TargetContext: Source
    Relationship to Approver: N/ARelationship to Approver: PositionRelationship to Approver: N/A
    No Approver Behavior: Skip this stepNo Approver Behavior: Skip this StepNo Approver Behavior: Skip this step
    Respects Permission: NoRespects Permission: NoRespects Permission: No
    Workflow Email Configuration No SelectionWorkflow Email Configuration No SelectionWorkflow Email Configuration No Selection
    1. Navigate to Manage Organization, Pay and Job Structures using Action Search.

    2. Select Create NewWorkflow Configuration and include the details using the table above.

    3. Create three approval steps following the table above.

  3. Create a Business Rule to Trigger Workflow on Position Creation

    1. Navigate to Configure Business Rules using Action Search.

    2. Select + to Create New Rule.

    3. Expand the Metadata Framework category.

    4. Select Rules for MDF Based Objects scenario, by choosing the radio button. Add the following details:

      • Rule Name: New_Position_WFL
      • Rule ID: New_Position_WFL
      • Start Date: 01/01/1900
      • Description: Rule to trigger an approval workflow when a position is created
      • Base Object: Position
      • Purpose: Workflow
    5. Select Continue

  4. Define the business rule logic

    1. Enter the following parameters on the business rule

      • IF (conditions) - Original Record.Position Code is equal to Null and Position.Company.Country is equal to United States (USA).
      • THEN (statements) - Set Workflow Context.Workflow Configuration to be equal to NewPositionWFL - US(NewPosWFUS).
      • ELSE IF (conditions) - Original Record.Position Code is equal to Null and Position.Company.Country is not equal to United States (USA).
      • THEN (statements) - Set Workflow Context.Workflow Configuration to be equal to NewPositionWFL_NonUS(NewPosWFNonUS).
    2. Click Save to save changes.

  5. Assign the business rule in the Position object

    1. Select the "Dot" symbol beside the New_Position_WFL rule name, that reads "The rule is not assigned" when hovering over. A Rule Assignment wizard will open.

    2. Choose Assign Rule.

    3. Select the Open Assignment page (arrow icon on the right) where it reads This rule can be assigned at Save Rules in object "Position" to navigate to Configure Object Definition from the wizard. A new tab will be opened.

    4. Select Take ActionMake Correction and scroll down to the Rules section.

    5. Select the New_Position_WFL rule, under Save Rules.

    6. Choose Save.

    7. Close this tab and verify the rule is now assigned in the Configure Business Rules page.

  6. Test the rule by initiating changes on a Position

    1. Navigate to the Position Org Chart using Action Search.

    2. Select Add Position button to create a new position with Position Title Account Manager, WEST.

    3. On the Position details, select Ace USA as the Company and Corporate Industries as the Business Unit. Select Account Manager (ACC-MGR) as the Job Code. The Parent Position will be DIR_SALESNW.

    4. Click Save to save changes and trigger the workflow.

    5. Verify the New Position US workflow triggers. Click on View Workflow Participants and verify that Janet James, Controller and Marcia Barista, VP, Talent are the Approvers.

    6. Click Confirm to submit the workflow.

    7. Repeat the steps b to f, to create another position and trigger a second workflow, this time, the Position Title Account Manager, SC, and select a different Parent Position DIR_SALESSC. The other details, including Company and Business Unit should be the same as the other position.

    8. Click Confirm to submit the workflow.

    9. To test the New Position Non-US workflow, you will be using an existing position that has a Parent Parent Position Relationship and add a lower-level position. You can use Quality Manager (MGR_QA).

    10. Open the Position Key Information by choosing the MGR_QA code.

    11. On the Actions menu, select Add Lower-Level Position. The parent position as well as the fields included in the rule to Default Position Attributes in a previous exercise will autopopulate.

    12. Change the Company from Ace USA to a different one, like Ace Brazil.

    13. Add a position title of your choice and complete any required field.

    14. Choose Save.

    15. Verify the New Position Non-US workflow triggers and includes the incumbent of the Parent Parent Position (based on New Position) as a 2nd Approver.

    16. Select Cancel to withdraw the workflow request.

    17. Do not save Position changes and choose Cancel and Don't Save on the warning dialog that shows up.

Managing Position Workflows

Generally speaking, any workflow requests to take action will be displayed in Engagement Cards from the Home Page, to drill down into the workflow details and take action accordingly. Some of the typical actions (depending on the workflow configuration) are:

  • Approve with or without comments (quick approval)
  • Drill down into workflow details to review and approve.
  • Update transaction
  • Post a comment
  • Send back
  • Assign to me (when approver is from a workflow group).

    Additionally, approvers are able to manage all their workflow requests navigating to View Pending Workflows , from the Home Page or typing on the action search View my pending requests. From there, an Access requests awaiting my approval will be available to navigate to My Workflow Requests page.

Note

Access to My Workflow Requests page, requires the following permission: Professional Edition Manage Workflow Requests enabled in Manage Permission RolesAdministrator PermissionsManage Workflows .

Within the Advanced To Do Page, the Key Details column can be customized to display different details about the position to be created/changed, to improve the navigation through workflow requests for MDF Position object.

You can navigate to Manage DataCreate New and create an Advanced To-do Key Details for Position object.

Note

A maximum of four fields can be displayed and therefore included in the Advanced To-do Key Details at a time.

Only Position object supports this configuration as of now. Each company can only have one instance of the Advanced To-do Key Details object, in Manage Data. If changes are required, you can edit an existing instance, or delete it and create a new one.

Customized Advanced To Do Key Details for Position workflow requests

Your customer requires to customize the Key Details for Position Workflow requests, to display additional field values and allow approvers to identify position workflows in an easier way within the Advanced To Do Page.

Note

In the step 6, if you cannot access My Workflow Requests , you will need to grant the following permission to the Manager role: Professional Edition Manage Workflow Requests , located under Manage Workflows .

Steps

  1. Navigate to Manage DataCreate NewAdvanced To-do Key Details

  2. Select name: Position Workflow Key Details and code: PosWFLKeyDetails

  3. Under Configuration by MDF Object select Position (Position) and click on Details

  4. Under Customized Field Details add the following fields (leave Show Code as No):

    • externalName (externalName)
    • sfFields.sfField15 (company)
    • sfFields.sfField16 (businessUnit)
    • sfFields.sfField8 (jobCode)
  5. Click Done and Save to save the changes.

  6. Proxy as Janet James, Controller and view all the Approvals from the Home Page. Navigate to View Pending Workflows and choose the option Access requests waiting for my approval.

  7. Verify the Key Details for Position include the new 4 fields.

Result

You have customized the Key Details to display in Position Workflows from My Workflow Requests page.

Log in to track your progress & complete quizzes