Optimized Modulation

The Optimized Modulation integration provides an automated way to optimize scheduled hours of contractual employees based on the forecasted demand while still adhering to the minimum and maximum working hours of each employee.

Note: This integration is an extension that is developed outside the normal release schedule to meet specific customer needs; it must be installed by an Integration Consultant. To request one of these extensions, you must submit a request by way of the Gateway Request Portal for BITS, accompanied by a change order.

In some countries, employees are paid based on fixed contracts. Regardless of whether or not there is workload, they are paid their contractual hours. During the year, employees modulate their hours. For example:

  • In weeks where the workload is low, they are scheduled a reduced number of hours.

  • In weeks where the workload is high, they are scheduled an increased number of hours.

The objective is to break even at the end of the year with no variance between contracted and actual hours, limiting the need to pay overtime or for shortfall hours. This concept is called Modulation.

Schedule rules, with minimum and maximum weekly limits, create a band of hours to control the number of hours an employee can flex up and down. The Optimized Modulation integration uses expected weekly weight, representing the seasonal long-term volume forecast, as a parameter to define and assign the appropriate band of hours which applies to the employee for that week.

This extension does the following:

  • References customer-provided weightage data up to 52 weeks in the future.

  • Evaluates the expected weekly weightage data by location or job.

  • Adjusts the employee’s weekly scheduled hours minimum and maximum limits.

  • Can insert schedule tags into the Schedule Planner to identify the weight of the week.

  • Can use work rule transfers to align with weekly weight.

  • Remodulates upon contract changes.

As a result of this extension, the scheduling process performed by the engine or self-scheduling more closely aligns with the operational need.

Weekly weightage data

Customer-provided weekly weightage data is uploaded in a .CSV file to the tenant’s SFTP inbound folder. The weekly weightage data file must contain the following information:

Location – The organizational path of the location for which the weight applies. Granularity down to the job level, and the use of wildcards, are supported.

Start – Start date of the forecasted weightage period.

End – End date of the forecasted weightage period. The Start and End Dates must span a minimum of 1 week and align with the weekly schedule period. Multiple weeks with the same Location and Weight values can be combined.

Weight – High or Low. There is no need to provide the medium weeks because this weight is the default for all employees.

Refer to the table below for a sample of the weightage data .CSV content.

Sample weightage data .CSV content

Optimized Modulation - Sample weightage data .CSV content

Location

Start

End

Weight

*/Administration/Manufacturing Manager*

18-08-2021

25-07-2021

High

*/Administration/Manufacturing Manager*

26-07-2021

02-08-2021

Low

*/Administration/Manufacturing Manager*

03-08-2021

10-08-2021

High

*/Machine Shop*

18-07-2021

25-07-2021

Low

Organization/France/Metropolitan Plan/Receiving/Warehouse Clerk

26-07-2021

10-08-2021

High

Organization/France/Metropolitan Plan/Assembly/Mechanic

05-08-2021

20-08-2021

Low

*/Assembly/*

05-08-2121

20-08-2021

High

Note: Sample dates are presented in dd-MM-yyyy format.

Schedule rule override

Note:

The rules engine uses the following logic when validating weekly rule overrides:

  • When the date range covers the entire week, the engine uses the override value.

  • When the date range covers only a portion of the week, the engine uses the most restrictive value configured for the rule set and the override values.

For example, if the week ranges from Monday to Sunday, setting the expiration date to Sunday means that the rule is not in effect on the Sunday. In other words, the expiration date always needs to be the last day of the active period +1 day.

Note: The Optimized Modulation integration includes an automated script that adds 1 day to the expiration date, allowing customers to continue providing the last day as the expiration date.

Example:

The schedule rule is configured with a maximum hours per week = 40:00.

The first week of August, which ranges from Monday August 1 to Sunday August 7 requires an override of 44:00 hours.

Effective date = Monday August 1 and Expiration date = Sunday August 7. (The integration automatically adjusts the expiration date by setting it to August 8).

The expiration date can overlap with the effective date of the next period — this is not considered an error.

Band of hours

Schedule rule overrides data, defining a high or low week representation in terms of band of hours, must be provided in a .CSV file that is uploaded to the tenant’s SFTP inbound folder. Four fields in the file are combined to match the employee with the correct band of hours; these fields also define the minimum and maximum schedule hour values. The combination of multiple fields is considered an AND condition; therefore, the employee needs to qualify against all fields to determine a match. The schedule rule overrides file must contain the following information:

Person number— Individual Person Number. This is the most restrictive option, which allows the definition of specific limits by employee .

Employment terms— All employees assigned to this employment term during the specific week are matched.

Pay rule— All employees assigned to this pay rule during the specific week are matched.

Location— All employees working in this location during the specific week are matched.

High Week Min— The schedule rule override hours for High forecast minimum value.

High Week Max— The schedule rule override hours for High forecast maximum value.

Low Week Min— The schedule rule override hours for Low forecast minimum value.

Low Week Max— The schedule rule override hours for Low forecast maximum value.

Refer to the table below for a sample of the schedule rule overrides data .CSV content.

Sample schedule rule overrides data .CSV content

Optimized Modulation - Sample schedule rule overrides data .CSV content

Person number

Employment terms

Pay Rule

Location

HighWeekMin

HighWeekMax

LowWeekMin

LowWeekMax

10001

French Employees

Full Time

*Organization/Germany/*

32

36

24

28

10002

Manufacturing

USDC-RT-PT

*Organization/Australia/*

36

40

26

30

10003

California Employees

Manufacturing Intern

*Organization/Human Resource/*

28

32

22

26

Healthcare Employment Terms

30

36

20

26

California

30

34

22

26

USNY-RT-FT

34

38

26

30

Optional functionality

Schedule tags

When enabled, the integration inserts schedule tags in the Schedule Planner identifying the weight of the week. Tags are only for visualization purposes.

Work rule override

When weekly weight deviates from the standard weight, the integration optionally allows an override to the employee’s work rule for that week. For example, different overtime thresholds or entitlements could apply if the weekly weight is high or low. If enabled, the integration automatically scans for the _Low or _High version of the employee’s work rule and inserts the appropriate work rule transfer. For example, during a high week, the employee’s default work rule of Supermarket FT will be overridden with work rule Supermarket FT_High.

Use cases

The integration is typically performed for a group of employees selected from a Hyperfind or Location. Optionally, the integration will process single or multiple persons.

Three modulation actions are provided:

Schedule Rule Override

Schedule Rule Override is the main process. This action reads the Weekly Weightage Data and Schedule Rule Overrides Data from the SFTP site defining the optimized modulation for the selected time frame and employees. Effective dated minimum and maximum weekly limit overrides are created for each employee. Optionally, this action inserts schedule tags in the Schedule Planner. This action is executed before schedule generation.

Schedule Rule Override — Changed Employees

Schedule Rule Override — Changed Employees is used as a scheduled process typically executed on a daily basis. This action monitors the Primary Job, Pay Rule and Employment Terms to detect employees who had a contract change impacting the already rolled-out modulation. Updates to previously added Schedule Rule overrides and Schedule Tags reflect the new situation. This action is executed before schedule generation.

Work Rule Override

Work Rule Override is intended to run after schedule creation. This action inserts the _High or _Low version of the employee's work rule as a transfer for shifts present in the schedule.

Modulation Period options include:

Provided Weightage Data

This action modulates all weeks that are found in the provided Weekly Weightage Data source file. Modulation always starts in the future; that is, run date + 1 day. Although the action can be initiated mid-week, modulation never applies to past days, including today, even if the current week is part of the weightage data.

As a best practice, the source file should only contain future weeks data.

Date Range

This action only modulates between the provided Start and End Dates. If the weightage data source file contains additional weeks, the system only considers weeks that fall within the date range; all other weeks are disregarded.

Before you start

Before you configure this integration, you must do the following:

  1. Configure Access to Integrations.

  2. Configure the following:
    • Schedule rule setsSee the Configure schedule rule sets topic.

    • (Optional) Schedule tagsSee the Tag Definitions topic.

      Examples: High, Low

    • (Optional) Work rulesSee the Work Rules topic.

      Examples:

      Break Adjustment

      Break Adjustment_High

      Break Adjustment_Low

    • Workflow notification: Create a workflow notification to notify the manager that modulization needs to be executed for an edited employee.

      See the Create workflow notifications topic.
    • Extension table: Create an extension table that specifies the DDL commands for the integration template. See the Extension Tables topic.

  3. Get the URL, User, and Password for the APIGatewayServer.

Configure the Optimized Modulation integration

  1. Deploy the Optimized Modulation integration
  2. Open the Integration Template Designer: Select Main Menu Administration > Application Setup > Integrations Setup > Design Integration Templates.

    Note: For more information, see the Deploy Integration Packs to your Atom topic.
  3. Make sure that the Account is correct. If not, select the right account.

  4. Select the Deploy tab > Integration Packs.
  5. From the list in the left column, search for and select the Pro WFM Optimized Modulation Extension integration.
    Note: If the integration does not display, select Browse Integration Packs to search for and select the iPack.
  6. Click Tap Install.

  7. From Unattached Environments, select the environment in which to deploy the integration process for the selected integration. Click Tap the double-left arrows button Select items.

  8. Configure the Optimized Modulation integration settings
    1. Select the environment
      1. Select the Manage tab > Atom Management.
      2. Select your environment.
    2. Select environment extensions
      1. In Administration, click tap Environment Extensions.
      2. In Process Filter, click tap the magnifying glass Search button. It can take several seconds before the button becomes active.
      3. Scroll to and select the integration pack: Optimized Modulation > OptimizedModulation_iPack_v2.
  9. Configure connection settings
    Caution: If you select Use Default for the connection settings and process properties, ensure that Value is blank. If Value is not blank, that value overrides the default value whether or not Use Default is selected or cleared. Example: If the default value is abc, but Value shows xyz, the integration uses xyz regardless of the setting of Use Default.
    1. Select Connection Settings.
    2. From the Connection list, select and configure the following:

      Connection Settings

      Connection Settings

      Setting

      Required

      Actions

      OptimizedModulation_iPack_v2_APIGatewayServer

      Required

      To change the default API gateway server:

      1. Clear Use Default.
      2. Enter the URL to the server.

        Example: <tenantURL>/api

      OptimizedModulation_iPack_v2_DatabaseServer

      Required

      The database server setting defines the connection to the file that contains the records.

      To change the default server parameters:

      1. For each field, clear Use Default.
      2. Enter the following values:

        In User, enter the username for the server.

        In Password, select <Encrypted>. Enter the password for the server. Click Tap Apply.

        Enter the Class Name.

        Enter the Connection URL for the database server.

      OptimizedModulation_iPack_v2_SFTP Server

      Required

      The SFTP server setting defines the connection to the folder that contains the source data files. Integrations access only the internal SFTP account.

      For each field, clear Use Default.

      Enter the following values:

      • Name of the internal Host.

      • Number of the Port for the internal SFTP account.

      • In User, enter the username for the internal SFTP account.

      • In Password, select <Encrypted>. Enter the new password for the internal SFTP account. Click Apply.

      OptimizedModulation_iPack_v2_Locale_CRT

      Required

      Enable Override.

  10. Configure process properties
    1. Select Process Properties.
      Caution: Do not edit the default values of the AuthenticationProperties. By default, cookies are enabled and set the values for authentication properties.
    2. Select OptimizedModulation_iPack_v2_CRTConfig to set process properties that must be configured before the integration can run. This main process starts the integration process and handles errors.

      Process Properties

      Process Properties

      Process property name

      Column header value

      _OptimizedModulation_iPack_v2_Locale_CRT

      Parameter Name,Locale Policy,Value,Description

  11. Configure cross-reference tables

    Cross-reference tables (CRT) are the look-up tables that the integrations use to translate parameter values. One or more data values from the source system can be used to assign one or more parameters in the destination system.

    • If more than one row matches a reference value, the first match is the output value.
    • If no match is found, the output value can be null, or the integration can produce errors.
    1. Select Cross Reference.
    2. From the Cross Reference list, select the OptimizedModulation_iPack_v2 table.

    3. Select Override to:

      • Download the tables when you run the integration
      • Edit the table cells in Extensions
    4. When you finish, click tap OK.

    OptimizedModulation_iPack_v2_Locale_CRT: Allows translation of labels and messages into different languages.

    Optimized Modulation - Locale CRT structure

    Optimized Modulation - Locale CRT structure

    Column name

    Description

    Parameter Name

    Key for which localization is defined.

    Locale Policy

    Locale policy.

    Value

    The label that shows in Additional Details or value of the label defined in the Run Summary section.

    Description

    The value shown in Additional Details.

    Note:
    • Localization of integration extensions remains optional, but is supported.

    • The cross-reference table (CRT) holds all messages represented with standard English labels; these apply to all locales when the Locale is set to a wildcard (*).

    • Some or all messages can be translated by adding lines to the table in their preferred translation for specific locales. Messages for the most commonly used Locale Policy should be defined at the top of the CRT.

    • Names of the parameters in the CRT column "Parameter Name" must be used as is. If any parameter value needs to be localized for a different Locale Policy, copy the "Parameter Name" with the * Locale Policy, add a new row to the CRT with the appropriate Locale Policy, and then add the localized values in the Message (or Value) and Description CRT columns.

    • Do not enter values in the CRT column "Description" if it is blank.

    • Do not modify placeholders (<>) or the configurable values that are included in the CRT column "Message" (or "Value").

    Sample Locale CRT content

    Sample Locale CRT content

    Parameter name

    Locale policy

    Value

    Description

    Error_DatabaseEmpty

    *

    Database has no records for comparison.

    Error_EmployeeNotFound

    *

    Employee(s) not found.

    Employee not found or does not exist in system.

    Error_IncorrectDateFormat

    *

    Effective Start or End date is not formatted correctly.

    The selected date format does not match with uploaded file format.

    Error_Invalid

    *

    Hyperfind or Employee Id not found or is invalid.

    Hyperfind or Employee Id not found or is invalid.

    Error_NoEmployeeFound

    *

    No employees returned for the selected Hyperfind.

    Error_NoFileName

    *

    Source file <File Name> not found in SFTP directory.

    The provided file name is either incorrect or the file was not uploaded. Please upload the correct file.

    Error_ValidateIncorrectSelectedDate

    *

    Selected Dates should be greater than the current date.

    Error_ValidateIncorrectFileFormat

    *

    <File Name> extension must be .CSV.

    Error_ValidateInvalidDateSelection

    *

    Start Date must not be equal to or greater than the End Date.

    Error_ValidateNoEndDate

    *

    End Date not provided.

    Error_ValidateNoHighTag

    *

    High Week Tag not provided.

    Error_ValidateNoHyperfindOrPersonNumber

    *

    Hyperfind or Person Number not provided.

    Error_ValidateNoInsertTagValue

    *

    Insert Schedule Tags parameter not provided.

    Error_ValidateNoLowTag

    *

    Low Week Tag not provided.

    Error_ValidateNoStartDate

    *

    Start Date not provided.

    Error_WorkRuleInvalid

    *

    Work Rule <WORKRULE_NAME> not found in system.

    Work Rule is not configured in the system.

    Label_AdditionalDetails

    *

    Process completed with transaction errors. Additional details, such as disqualifications, may be accessible using the button below.

    Label_DisqualifiedTransactions

    *

    Disqualified Transactions

    Label_FailedTransactions

    *

    Failed Transactions

    Label_FileHeaderEmploymentTerms

    *

    EmploymentTerms

    Label_FileHeaderEmploymentTermsChangedDate

    *

    EmploymentTermsChangedDate

    Label_FileHeaderLocation

    *

    Location

    Label_FileHeaderLocationChangedDate

    *

    LocationChangedDate

    Label_FileHeaderModulationEndDate

    *

    ModulationEndDate

    Label_FileHeaderModulationStartDate

    *

    ModulationStartDate

    Label_FileHeaderPayRule

    *

    PayRule

    Label_FileHeaderPayRuleChangedDate

    *

    PayRuleChangedDate

    Label_FileHeaderPersonName

    *

    PersonName

    Label_FileHeaderPersonNumber

    *

    PersonNumber

    Label_InvalidEmployee

    *

    Invalid Employee

    Label_IntegrationType

    *

    Integration Type

    Label_ProcessedSourceRecords

    *

    Processed Records

    Label_SuccessfulTransactions

    *

    Successful Records

    Label_TagsInserted

    *

    Tags Inserted

    Label_TransactionEnabled

    *

    Process completed with transaction errors. If Transaction Assistant is enabled, failed records can be re-submitted through Transaction Assistant.

    Label_WithoutErrors

    *

    Integration has completed without errors.

    Label_WithoutTransactionErrors

    *

    Integration has completed without transaction errors. Additional details, such as disqualifications, may be accessible using the button below.

    Message_ChangedEmployeesFileNameInitiator

    *

    Changed Employees Data <TIMESTAMP>

    Message_ChangedEmployeesFileNameManager

    *

    Changed Employees Data <MANAGERID><TIMESTAMP>

    Attached file name while receiving the notification via email about change employee records as Changed Employees Data MANAGERID TIMESTAMP.

    Message_DisqualifyTag

    *

    Employee is disqualified

    Disqualified tag attached for the day.

    Message_EmailSubject

    *

    Remodulate Changed Employees List

    Message_EmailText

    *

    Attached is list of employees for whom remodulation has changed schedule rule overrides. Please regenerate schedule for them.

    Message_EmployeeNotFoundInDB

    *

    Employee not available for comparison.

    Employee information is not available in database for comparison.

    Message_IncorrectWeekValue

    *

    Week Value not in correct format.

    Week value entered does not match uploaded file week value.

    Message_IncorrectWeight

    *

    Weight not in correct format.

    Weight value entered does not match uploaded file weight.

    Message_ManagerMailIDNotAvailable

    *

    Manager MailID not available.

    Manager <MANAGERID> MailID not available.

    Message_NoChangesEmployee

    *

    Employee has no changes.

    No changes found in employee's record.

    Message_NoLocation

    *

    Location not found.

    Employee location does not match uploaded file location.

    Message_NoScheduleRuleOverrideValue

    *

    Employees has no Schedule Rule Override value.

    No Week Value available for the Employee to override Schedule Rule.

    Message_NoShiftsAvailable

    *

    Employee has no shifts.

    No shifts available for the employee for the date range.

    Message_OverlappingDate

    *

    Overlapping dates present in CSV.

    Disqualified due to overlapping dates for location:

    Message_WorkRuleNotFound

    *

    Work Rule not found.

    Employee has no work rule assigned.

Install the Optimized Modulation integration

After the integrations are deployed and the connection settings and process properties are configured, install the integrations to make them available for running or scheduling.

Note:
  • An integration template is the configured integration that you deploy to an Atom and then install to make available for running or scheduling.

  • An installed integration is a single instance of an integration that is based on an integration template. When you install an integration, you can define parameters or set parameters to be defined when the integration is run.
  1. Select Main Menu Administration > Application Setup > Integrations Setup > Install Integrations.
  2. Click Tap Create .
  3. In Integration Name enter a unique name, such as OptimizedModulation_iPack_v2.
  4. (Optional) Enter a Description.
    Note: Do not select API Integration.
  5. In File Access, select File Upload to accept only UTF-8 encoded input files.
  6. In Connection, select the SFTP location from the list.
  7. (Optional) If the person who runs the integration does not have full access to integrations, select Execute Integration with System Account. This allows the integration access to all APIs in the FAP, and the relevant permissions and data, regardless of the FAP and GDAP of the person who runs the integration.
  8. (Optional) Select Re-Run to allow repeated runs of the integration with the same parameter values as the previous run.

  9. Email Notifications

    (Optional)

    1. Select Yes to send email and control center notifications for integration runs.
    2. Enter the email addresses of the recipients for the following types of run status. For multiple recipients, separate the addresses by a comma, but no spaces:

      In Progress — The integration run started and has not finished.

      Completed — The integration ran successfully without errors.

      Failed — The integration ran successfully, but one or more records have errors. The integration run is treated as failed. If Abort on Failure is configured in an integration set, the integration set stops.

      Completed with Errors — The integration run has errors or could not run.

  10. In Skip Configuration, select None(default) to allow multiple integrations to run at the same time or with the same data without restrictions.
    Note: Do not select Allow Minute Interval.
  11. Integration template and parameters
    1. In Integration Template, select OptimizedModulation_iPack_v2.
    2. Click Tap Assign .
    3. In Integration Parameters, you can override default settings.
    4. Complete the configuration for each parameter value.
    5. Click Tap Save.
  12. Repeat this step for each integration parameter that supports the Optimized Modulation process.

    Integration parameters

    Optimized Modulation - Integration parameters

    Parameter name

    Description / User prompt / Mandatory

    Template parameter

    Parameter type

    Person Number

    A comma-separated list of specific employees for whom the integration is run.

    When no value is entered, the integration defaults to the Hyperfind parameter.

    To process the integration for only a limited group of employees, enter the person numbers as defined in the source system, each separated by a comma (,) but not spaces.

    User prompt = Yes

    Mandatory = Yes

    PersonNumber

    Text

    Hyperfind

    The default Hyperfind or Location query that contains the employees for whom the integration is run.

    Default = All Home

    User prompt = Yes

    Mandatory = No

    Note: Ad-hoc Hyperfinds are not supported. All Home does not include terminated and inactive employees even if they have totals during the period. To include these totals, configure a Hyperfind that includes terminated and inactive employees, and select that Hyperfind in this process property. The maximum number of employees in a Hyperfind is 3500. To process more employees, divide the population into smaller Hyperfinds to run sequentially.

    HyperfindID

    Hyperfind

    Hyperfind IDType

    Type of Hyperfind — Location or Hyperfind

    HyperfindIDType

    Modulation Type

    Defines which type of modulation is executed.

    Supported values:

    Schedule Rule Override(default)

    Schedule Rule Override — Changed Employees

    Work Rule Override

    User prompt = Yes

    Mandatory = Yes

    ModulationType

    Dropdown

    Insert Schedule Tags

    Controls whether schedule tags are inserted in the Schedule Planner.

    true= Insert tags.

    false(default) = Do not insert tags.

    User prompt = No

    Mandatory = No

    InsertScheduleTags

    Boolean

    High Week Schedule Tag

    Defines the label used for the tag indicating high weeks.

    Default = High

    User prompt = No

    Mandatory = Yes

    HighWeekScheduleTag

    Text

    Low Week Schedule Tag

    Defines the label used for the tag indicating low weeks.

    Default = Low

    User prompt = No

    Mandatory = Yes

    LowWeekScheduleTag

    Text

    Modulation Period

    Defines which period will be modulated.

    Supported values:

    Integration Run Date+1(default)

    Date Range

    User prompt = Yes

    Mandatory = Yes

    Note: When Date Range is selected, Start Date and End Date must also be selected.

    ModulationStartDate

    Dropdown

    Date Format

    Defines the date format used in the weightage data source file.

    Supported values:

    MM/dd/yyyy

    MM-dd-yyyy

    dd/MM/yyyy

    dd-MM-yyyy(default)

    yyyy/MM/dd

    yyyy-MM-dd

    User prompt = No

    Mandatory = Yes

    DateFormat

    Text

    Suffix High Week Work Rule

    Defines the suffix used for the alternate work rule when employee weightage is high.

    Default = _High

    User prompt = No

    Mandatory = Yes

    SuffixHighWeekWorkRule

    Text

    Suffix Low Week Work Rule

    Defines the suffix used for the alternate work rule when employee weightage is low.

    Default = _Low

    User prompt = No

    Mandatory = Yes

    SuffixLowWeekWorkRule

    Text

    Weekly Weight High Definition

    Defines the label used in the weightage data source file for high weeks.

    Default = High

    User prompt = No

    Mandatory = Yes

    WeeklyWeightHighDefinition

    Text

    Weekly Weight Low Definition

    Defines the label used in the weightage data source file for low weeks.

    Default = Low

    User prompt = No

    Mandatory = Yes

    WeeklyWeightLowDefinition

    Text

    Schedule Hours Type

    Defines the hours separator.

    Supported values:

    ( :) colon (default)

    ( .) period

    ( ,) comma

    User prompt = No

    Mandatory = Yes

    ScheduleHoursType

    Text

    Start Date

    Start date selector when using a date range.

    User prompt = Yes

    Mandatory = Yes

    Note: When Modulation Period = Date Range, Start Date be selected.

    StartDate

    Date

    End Date

    End date selector when using a date range.

    User prompt = Yes

    Mandatory = Yes

    Note: When Modulation Period = Date Range, End Date be selected.

    EndDate

    Date

    Check Shifts Required for Work Rule Override

    Determines whether the integration checks shifts required for work rule override.

    true= Check shifts.

    false(default) = Do not check shifts.

    User prompt = No

    Mandatory = No

    CheckShiftsRequiredforWorkRuleOverride

    Boolean

    Append Timestamp in Export File

    Determines the timestamp appended to the output file.

    Supported values:

    dd-MM-yyyyThhmmSSS(default)

    MM-dd-yyyyThhmmSSS

    User prompt = No

    Mandatory = Yes

    AppendTimestampinExportFile

    Text

    Sender Email Address

    Sender email address used by the Boomi application for notifications.

    User prompt = No

    Mandatory = Yes

    SenderEmailAddress

    Text

    Send Audit -Initiator (Changed Records Only)

    Send overview to initiating user with changed employee records (changed records modulation only).

    User prompt = Yes

    Mandatory = Yes

    SendAudit-Initiator(ChangedRecordsOnly)

    Text

    Send Audit - Report To (Changed Records Only)

    Send overview to employee's manager with changed records (changed records modulation only).

    true(default) = Send overview to employee's manager.

    false= Do not send overview to employee's manager.

    User prompt = No

    Mandatory = Yes

    SendAudit-Report To(ChangedRecordsOnly)

    Boolean

    Output Directory

    Determines the SFTP server directory where the integration places the output .CSV files.

    Default = /Outbound

    User prompt = No

    Mandatory = No

    OutputDirectoryText
    Source Directory

    Determines the SFTP server directory where files are uploaded.

    Default = /Inbound/OptimizedModulation/WeightageData

    User prompt = No

    Mandatory = No

    Note: This value must match the parameter value configured in SFTP Directory for Weightage Data.
    SourceDirectoryText
    SFTP Directory for Schedule Rule Overrides

    Determines the SFTP directory location for Schedule Rule Overrides files.

    Default = /Inbound/OptimizedModulation/ScheduleRuleOverridesData

    User prompt = No

    Mandatory = Yes

    SFTPDirectoryForScheduleRuleOverridesText
    SFTP Directory for Weightage Data

    Determines the SFTP directory location for Weightage Data files.

    Default = /Inbound/OptimizedModulation/WeightageData

    User prompt = No

    Mandatory = Yes

    Note: This value must match the parameter value configured in Source Directory.
    SFTPDirectoryForWeightageDataText
    SFTP File Name for Schedule Rule Overrides Data

    Determines the file name associated with Schedule Rule Overrides Data.

    Default = ScheduleRuleOverridesData.csv

    User prompt = No

    Mandatory = Yes

    SFTPFileNameForScheduleRuleOverridesDataText
    SFTP File Name for Weightage Data

    Determines the file name associated with Weightage Data.

    Default = WeightageData.csv

    User prompt = No

    Mandatory = Yes

    SFTPFileNameForWeightageDataText
  13. Ensure that the generic data access profiles (GDAP) allow access by the people who need to run the installed integrations.

    See Configure Access to Integrations .

Run and test the Optimized Modulation integration

Run integrations to test that the configuration is set up correctly.

  1. Run the Optimized Modulation integration
    1. Select the integration:
      1. Select Main Menu Maintenance > Integrations.
      2. Click Tap Run an Integration .
      3. Select the OptimizedModulation_iPack_v2 integration from the list. Click Tap Select.
      4. (Optional) Enter a unique Integration Run Name to make it easier to identify the run of the integration. Otherwise, the default name ends with a date and time stamp.
    2. Set parameters as follows:
      • Hyperfind: Select a Hyperfind query of employees.
      • Person Number: To process data for only a limited group of employees, enter the person numbers, as defined in the source system, each separated by a comma ( ,) but no spaces.

        For 3 employees: 13997,15556,20012

      • Modulation Type: Select Schedule Rule Override.
      • Modulation Period: Select Provided Weightage Data or a date range.
      • Start Date: If Modulation Period= date range, select the modulation start date.
      • End Date: If Modulation Period= date range, select the modulation end date.
      • Send Audit Initiator: Enter the integration initiator's email address.
    3. Select the following:
      • Run Integration : If this is the first time this integration is being run.
      • Re-Run: If this integration has been run before, and the status is not In-Progress, you can run the integration again without entering the parameter values again. Click Tap Yes to continue, or No to not run the integration and to return to the parameter settings.
    4. Wait for the confirmation that the integration completed or failed. Close the panel.
    5. Click Tap Refresh .
    6. To see details, select the integration run. Select Run Summary.
  2. Check the results

    Status indicators

    • In-Progress: The run of this integration has not yet completed.
    • Completed: The integration ran successfully without errors.
    • Scheduled: This integration is scheduled to run later or repeatedly.
    • (Grayed out) Scheduled but Deleted: This integration is scheduled to run, but the integration template has been deleted. When it runs, it will generate an error. To prevent this error, delete the scheduled integration run.
    • Completed with Errors: The integration ran successfully, but one or more records have errors. The integration run is treated as failed. If Abort on Failure is configured in an integration set, the integration set stops.
    • Failed: The integration run has errors or could not run.
    • To troubleshoot and resolve errors, do the following:

      Check the Run Summary for details.

      • To troubleshoot all types of errors, or if the Run Summary shows a large number of errors, click tap Go to Additional Details (if available), or click tap the Source File to open and examine the input source file.
      • (Only for import integrations) To troubleshoot and resubmit integrations that have transactional or data errors, click tap Go to Transaction Assistant.

    To check the results in more detail:

    1. Click Tap the tile for the integration run.
    2. Click Tap Run Summary to see the results of the integration run.

      Example Run Summary details

      Note: The available details vary by integration and configuration.
      • Integration Run Name: Name of this run of the integration.
      • Process Name: Name of any integration set that includes this integration.
      • Integration Name: Name of the installed integration.
      • Integration Reference ID: Unique identifier for this integration run (to help in troubleshooting errors).
      • User: The person or user account that ran the integration.
      • Integration Type: Import, Export, or None
      • Start Date: Date and time when the integration run started.
      • End Date: Date and time when the integration run finished.
      • Status: In-Progress, Completed, Completed with Errors, or Failed.
      • Records Processed: Number of records that were processed.
      • Records Created: Number of records that were created.
      • Errors: Number of records that failed.
      • Source Files, Output File, and Error Files: For file-based import integrations, use Manage SFTP to access the source and output files on the inbound (source) and outbound (destination) SFTP folders. See the Manage SFTP topic.
    3. Log in to the destination system and make sure that the data has been correctly updated.
    Note: You can schedule integrations and integration sets to run once later or at a recurring frequency. See the Schedule Integrations topic.

Source file formats

Weightage Data.csv

Optimized Modulation - Weightage Data.csv format

Field

Field name

Example

Help text

1

Location

Org/India/Associate

Primary location assigned to the user.

2

Start

30-11-2021

Start date for the forecasted weightage.

3

End

31-12-2021

End date for the forecasted weightage.

4

Weight

High or Low

Weightage of the forecasted week or month.

Note:
  • Start and End columns must adhere to the date format defined in the integration parameter Date Format.

  • The date range of the Start and End values must span a minimum of one week. If the date span breaks mid-week, the integration applies overrides and tags accordingly.

  • Location supports the use of wildcards, such as Org/India/*. The least restrictive location should be defined at the lowest rows in the .CSV file.

  • When the .CSV file contains adjacent dates for a location, the integration considers all data during employee qualification. The integration then qualifies the employee for the least restrictive weightage data.

  • When the .CSV file contains overlapping dates for a location, the integration skips the entries and then continues searching for subsequent non-overlapping date ranges.

Schedule Rule Overrides Data.csv

Optimized Modulation - Schedule Rule Overrides Data.csv

Field

Field name

Example

Help Text

1

PersonNumber

20210

Individual Person Number

2

EmploymentTerms

Full Time

Employment Term assigned to the employee

3

PayRule

Manufacturing

PayRule assigned to the employee

4

Location

Org/India/Associate

Location or Primary Job of employee

5

HighWeekMin

36

Schedule Rule override hours for High forecast min value

6

HighWeekMax

40

Schedule Rule override hours for High forecast max value

7

LowWeekMin

24

Schedule Rule override hours for Low forecast min value

8

LowWeekMax

28

Schedule Rule override hours for Low forecast max value

Note:
  • To determine the appropriate override to assign to a person, this integration matches fields in the Schedule Rule Overrides Data.csv file to fields in the employee’s people record. The first match takes precedence.

    • If the first row of the .CSV file has only one field, this integration matches it to the people records and does not consider matched employees in further processing.

    • If the first row has multiple fields, this integration matches the combination of these fields to the people records and does not consider matched employees in further processing.

    Examples: If the first row of the .CSV contains Location = Org/India/Associate, people who match this Location are no longer included in the comparison. If the first row of the .CSV contains EmploymentTerm = Full Time and Location = Org/India/Associate, people who match both values are no longer included in the comparison.

  • The following columns are used to select schedule hours values for an employee based on High or Low weightage associated with the date range: HighWeekMin, HighWeekMax, LowWeekMin, and LowWeekMax.

  • Separators supported for schedule hours include colon (:), period (.), and comma (,). Values presented in HH:mm format, by default, are considered as hours and minutes. Values presented in HH,mm or HH.mm formats are changed into hours and minutes.

APIs

API details

API details

API name

Type

Resource path

Description

Execute Hyperfind Query

POST

/v1/commons/hyperfind/execute

Get person records for the specified Hyperfind.

Retrieve Persons

POST

/v1/commons/persons/extensions/multi_read

Get person data including hire date, seniority date, accrual profile.

Retrieve Schedule

POST

v1/scheduling/schedule/multi_read

Get shift details and tags.

Retrieve User Preferences for Current User

GET

/v1/commons/user_preferences/locale_policy

Get user or tenant default locale details.

Update Schedule for Multiple Employees

POST

/v1/scheduling/schedule/multi_update

Delete employee schedule tag.

Create Schedule Tags

POST

/v1/scheduling/schedule/schedule_tags/multi_create

Create employee schedule tag.

Submit Integration Execution Additional Details

POST

/v1/platform/integration_executions/{id}/additional_details

Send additional details

Update Integration Execution Details

POST

/v1/platform/integrations/update_status

Update integration status details.

Retrieve All Work Rules

GET

/v1/timekeeping/setup/full_work_rules

Get all work rules.

Retrieve Tag Definition by Name

GET

/v1/scheduling/setup/tag_definitions

Get tag color.

Update Schedule Rule Overrides

POST

/v1/commons/persons/schedule_rule_overrides/multi_upsert

Update schedule rule override.

Update Shifts

POST

/v1/scheduling/schedule/shifts/multi_update

Update the employee work rule in schedule.

Version history

Version history

Version

Description

1

Initial release.

iPack_v2

The Optimized Modulation integration delivery is now by way of an iPack.

iPack_v2 enhancementThe Optimized Modulation integration now supports SFTP file upload by way of the Integration page.