Jours de Fractionnement
The labor law in France defines a legal period during which employees are encouraged to take a contiguous span of time as their main vacation. When situations arise that prevent them from doing so, employees are entitled to extra days of paid time; this is known as Jours de Fractionnement. This extension automatically validates whether an employee qualifies to receive Jours de Fractionnement, and then adjusts the accrual balance, as necessary.
Full-time employees in France are entitled to 5 weeks (25 days) of paid vacation. A minimum of 12 contiguous vacation days must be taken to qualify as main leave. The right to additional days is subject to certain conditions that organizations configure to meet their specific needs. Conditions include:
-
Minimum number of acquired vacation days at the beginning of the legal period.
-
(Optional) Required number of contiguous vacation days that must be taken during the legal period.
-
Number of remaining acquired vacation days at the end of the legal period.
When the conditions are met, employees are entitled to:
- 1 extra vacation day when they have a remaining balance of 3-5 days.
- 2 extra vacation days when they have a remaining balance of 6 or more days.
The extension works only for day-based accruals in the current year. Organizations identify the day-based paycodes that are considered main vacation. Interruptions to vacation caused by worked time or assimilated absences, such as training or customer visits, initiate the validation process. Adjustments are made to a specified accrual on a grant date that falls after the legal period end date. An indicative paycode and comment are added to the timecard.
Use case
An employee works in an organization where extra vacation days are awarded when:
-
The employee acquires at least 15 days of paid leave at the start of the legal period.
-
The employee takes the minimum number of 12 contiguous vacation days during the legal period May 1 — October 31.
The number of extra days granted on November 1 depends on the number or remaining vacation days at the end of the legal period.
-
1 extra day is awarded when 3 or more vacation days are remaining.
-
2 extra days are awarded when 6 or more vacation days are remaining.
During the current year, the employee took 15 vacation days in August, which qualifies as the main leave. At the end of October, 5 vacation days remain.
Since the employee qualifies for all conditions, the extension grants 1 extra vacation day on November 1, increasing the vacation balance to 6 days. On November 1, the employee's timecard contains an appropriate paycode representing the grant.
Before you start
Before you configure this integration, you must do the following:
- Configure Access to Integrations.
-
Configure the following:
-
Comments: Configure a comment, such as
Jours De Fractionnement
, that has a selected category of Pay Codes. See the Comments topic. -
Accrual codes: Configure a day-based accrual code for which balances are checked. See the Accrual codes topic.
-
Accrual policies: Configure an accrual policy that contains the accrual code. See the Accrual policies topic.
-
Accrual profiles: Configure an accrual profile to assign to either People Records or employment terms. See the Accrual profiles topic.
-
Paycodes: Configure an hour-based informational paycode, such as
Jours de Fractionnement
. See the Paycode definition topic. -
Combined paycodes: Configure multiple combined paycodes. See the Combined Paycodes topic.
Examples include:
JDF Workday Paycode Day
— includes day-based paycodes representing interruptions, such as Training. Do not include holiday paycodes.JDF Workday Paycode Hours
— includes hour-based paycodes representing interruptions, such as Regular, Travel, and Training Hours. Do not include holiday paycodes.JDF Combined Paycode
— includes day-based paycodes representing paid leave, such as Vacation, Sick, and Holiday. -
-
Get the URL, User, and Password for the APIGatewayServer.
Configure the Jours de Fractionnement integration
- Deploy the Jours de Fractionnement integration
Note: For more information, see the Deploy Integration Packs to your Atom topic.
-
Open the Integration Template Designer: Select Main Menu
. Note: If prompted, enter your Username and Password. Click Tap Log in. -
Make sure that the Account is correct. If not, select the right account.
- Select the Deploy tab > Integration Packs.
- From the list in the left column, search for and select the Pro WFM Jours de Fractionnement Extension integration. Note: If the integration does not display, select Browse Integration Packs to search for and select the iPack.
-
Click Tap Install.
-
From Unattached Environments, select the environment in which to deploy the integration process for the selected integration. Click Tap the double-left arrows button
.
-
- Configure the Jours de Fractionnement integration settings
- Select the environment
- Select the Manage tab > Atom Management.
- Select your environment.
- Select environment extensions
- In Administration, click tap Environment Extensions.
- In Process Filter, click tap the magnifying glass
. It can take several seconds before the button becomes active. - Scroll to and select the integration pack: .
- Select the environment
- 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.
- Select Connection Settings.
-
From the Connection list, select and configure the following:
Connection Settings
Connection Settings for the integration
Setting
Required
Actions
JoursdeFractionnement_iPack_v2_APIGatewayServer
Required
To change the default API gateway server:
- Clear Use Default.
- Enter the URL to the server.
Example:
<tenantURL>/api
JoursdeFractionnement_iPack_v2_AccrualDetails_CRT
Required
Enable Override.
JoursdeFractionnement_iPack_v2_Locale_CRT
Required
Enable Override.
- Configure process properties
-
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. -
Select JoursdeFractionnement_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
_JoursdeFractionnement_iPack_v2_Locale_CRT
Parameter Name,Locale Policy,Value,Description
_JoursdeFractionnement_iPack_v2_AccrualDetails_CRT
Version Number,Accrual Profile,Accrual Code,Legal Period Start (dd/mm),Legal Period End (dd/mm),Paid Leave Paycode,Interrupting Paycode Days,Interrupting Paycode Hours,Contiguous Days,Minimum Acquired at start of legal period(days),Remaining Balance at end of legal period(days),Extra Grant (Days),Extra Grant Accrual Code,Grant Date (dd/mm),Reference Date (dd/mm)
-
- 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.
- Select Cross Reference.
- From the Cross Reference dropdown list, select a JoursdeFractionnement table.
- Select Override, which allows you to:
- Download the tables when you run the integration.
- Edit the table cells in Extensions.
- When you finish, click tap OK.
- Repeat the steps for each of the JoursdeFractionnement tables.
- JoursdeFractionnement_iPack_v2_AccrualDetails_CRT: Defines the rules that the extension follows to determine the number of extra vacation days to grant to qualifying employees.
Jours de Fractionnement - Accrual Details CRT structure
Jours De Fractionnement - Accrual Details CRT strucuture
Column name
Description
Version Number
Sequential value, beginning with 1, that allows configuration of multiple rules for each Accrual Profile.
Accrual Profile
Accrual profile for which the rule applies. References the employee's accrual profile in effect on the reference date.
Accrual Code
Accrual code that is validated at the end of the legal period.
Legal Period Start (dd/mm)
Effective start date of the legal period for which the system checks for contiguous leave. Format dd/MM.
Legal Period End (dd/mm)
Effective end date of the legal period for which the system checks for contiguous leave. Format dd/MM.
Paid Leave Paycode
Combined paycode that holds all day-based leave paycodes.
Interrupting Paycode (days)
Combined paycode that holds all day-based paycodes, such as Training Days, which can interrupt contiguous days.
Interrupting Paycode (hours)
Combined paycode that holds all hour-based paycodes, such as Regular, which can interrupt contiguous days.
Contiguous Days
The minimum number of contiguous leave days in the legal period to qualify for extra days.
Minimum Acquired at start of legal period (days)
(Optional) The minimum number of leave days in the accrual balance to trigger the validation.
Remaining Balance at end of legal period (days)
Minimum number of leave days remaining in the accrual balance to qualify for extra days.
Extra Grant (days)
Number of extra days that are added to the accrual balance when the employee qualifies.
Extra Grant Accrual Code
Name of the accrual code to which the additional days are added. The value is not required to match the name of the validated accrual code.
Grant Date
Date on which the extra days are added to the accrual balance. This value must fall after the Legal Period End (dd/mm). Format = dd/mm.
Reference Date
Date on which the accrual balance is validated. Default = last day of the legal period. Format = dd/mm.
Note:-
Values entered in the CRT are case-sensitive and must match the configured values in UKG Pro Workforce Management( UKG Pro WFM).
-
Values must be entered in each column of every row.
-
Columns must not be altered.
-
- JoursdeFractionnement_iPack_v2_Locale_CRT: Allows translation of labels and messages into different languages.
Jours de Fractionnement - Locale CRT structure
Jours De Fractionnement - Locale CRT structure
Column name
Description
Parameter Name
Key for which localization is defined.
Locale Policy
Locale policy.
Value
The label that shows in the Run Summary section or localized exceptions name.
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_AccrualProfileIsNotPresent
*
Accrual Profile is not present on Effective Date.
Error_CRTColumnEmpty
*
CRT column is empty. Profile and Version Number -
Error_EmptyComments
*
Comments cannot be empty.
Error_InactiveOrTerminatedEmp
*
Employee Inactive or Terminated
Error_InvalidComment
*
Comment category is invalid or null.
Error_InvalidCommentCategory
*
Comment '<Comment>' should be configured with 'Pay Codes' category.
Error_InvalidContiguousFlag
*
Invalid or empty Contiguous Flag. Acceptable values are either "True" or "False".
Error_InvalidEnableEdit
*
Invalid or empty Enable Edits. Acceptable values are either "True" or "False".
Error_InvalidGrantDate
*
Grant date should be greater than Legal period end date. Profile and Version Number -
Error_InvalidInterruptingPaycode
*
Both Interrupting Paycode in CRT is empty. Accrual Profile and Rule number -
Error_InvalidUnitOrType
*
Invalid type or unit for the Paycode.
Error_PaycodeEditError
*
Cannot edit paycode for the employee.
Error_AccrualCodeIsNotPresent
*
Accrual code in CRT is not part of Accrual profile in UKG Pro WFM. Accrual Profile : Accrual Code : Version number -
Accrual code is not part of Accrual profile CRT.
Error_NotEligible
*
Employee is not eligible for Fractionnement.
Employee did not meet eligibility to get additional grant.
Error_EmployeeNotFound
*
Employees not found
Employee not found or defined in UKG Pro WFM.
Error_InvalidHyperfindOrEmployee
*
Hyperfind or Employee Id not found or invalid.
Hyperfind or Employee not found or is invalid.
Error_EmptyInformationalPaycode
*
Informational Paycode empty.
Informational Paycode cannot be empty.
Error_NoPayCodesFound
*
Pay code is not found in UKG Pro WFM
Pay code is not found in UKG Pro WFM.
Error_IncorrectDateFormat
*
Incorrect Date Format provided in CRT. Accrual Profile and Version number -
Selected Date format does not match CRT Date format.
Label_IntegrationNotes
*
Accrual Balance Added
Label_AdditionalDetails
*
Process completed with transaction errors. Additional details, such as disqualifications, may be accessible using the button below.
Label_TransactionEnabled
*
Integration completed without transaction errors. Additional details, such as disqualifications, may be accessible using the button below.
Label_MessageWithoutErrors
*
Integration completed without errors.
Label_MessageWithoutTransactionErrors
*
Integration completed without transaction errors. Additional details, such as disqualifications, may be accessible using the button below.
Label_ProcessedSourceTransaction
*
Processed Source Transaction
Label_DisqualifiedTransaction
*
Disqualified Transaction
Label_FailedTransaction
*
Failed Transaction
Label_SuccessTransaction
*
Success Transaction
Label_IntegrationType
*
Integration Type
Label_IntegrationValue
*
Import
Label_IntegrationExecutionID
*
Integration Execution ID
Custom tag available for use in errors and labels: <
Comment
>. -
- JoursdeFractionnement_iPack_v2_AccrualDetails_CRT: Defines the rules that the extension follows to determine the number of extra vacation days to grant to qualifying employees.
Install the Jours de Fractionnement 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.
-
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.
- Select
Main Menu
. -
Click Tap
Create
. - In
Integration Name, enter a unique name, such as
JoursdeFractionnement_iPack_v2
. - (Optional) Enter a
Description.Note: Do not select API Integration.
- In File Access, select None to not select a connection.
- (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.
(Optional) Select Re-Run to allow repeated runs of the integration with the same parameter values as the previous run.
Email Notifications
(Optional)
- Select Yes to send email and control center notifications for integration runs.
- 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.
- 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.
-
Integration template and parameters
- In Integration Template, select JoursdeFractionnement_iPack_v2.
-
Click Tap
Assign
. - In Integration Parameters, you can override default settings. Click Tap Create.
- Complete the configuration for each parameter value.
-
Click Tap Save.
Repeat this step for each integration parameter that supports the Jours de Fractionnement process.
Integration parameters
Integration parameters
Parameter Name
Description / User Prompt / Mandatory
Template Parameter
Parameter Type
Hyperfind And Location
Hyperfind or Location query for which the integration will run.
Default =
All Home
User prompt = Yes
Mandatory = Yes
HyperfindAndLocation
Hyperfind
Employee IDs
Comma-separated list of employee IDs for which the integration will run.
When no value is entered, the integration defaults to the Hyperfind Or Locations 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
EmployeeIDs
Text
Comment
Contains the comment that is added to identify the Jours de Fractionnement reference.
Default =
Adjusted by integration
User prompt = No
Mandatory = Yes
Comment
Text
Contiguous Paid Leave flag
Checks for continuous leave days during the legal paid leave period.
-
True
— (default) Requires employees take contiguous paid leave during the legal period. -
False
— Does not require employees to take contiguous leave during the legal period.
User prompt = No
Mandatory = Yes
ContiguousPaidLeavesFlag
Boolean
Informational Paycode
Paycode that identifies Jours de Fractionnement days in the employee's timecard.
Default =
Jours de Fractionnement
User prompt = No
Mandatory = Yes
InformationalPaycode
Text
Enable Edits
Enables editing when an employee's timecard is signed-off.
Default =
True
User prompt = No
Mandatory = Yes
EnableEdits
Boolean
-
- Ensure that the generic data access profiles (GDAP) allow access by the people who need to run the installed integrations.
Run and test the Jours de Fractionnement integration
Run integrations to test that the configuration is set up correctly.
-
Run the integration
- Select the integration:
- Select
Main Menu
. -
Click Tap
Run an Integration
. - Select the JoursdeFractionnement_iPack_v2 integration from the list. Click Tap Select.
- (Optional) Enter a unique Integration Run Name to make it easier to identify the run of the integration. Otherwise, the system assigns a default name, which ends with a date and time stamp.
- Select
Main Menu
-
Set parameters as follows:
- Hyperfind And Location: Select a Hyperfind or location query of employees.
-
Employee IDs: 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
-
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.
- Wait for the confirmation that the integration completed or failed. Close the panel.
-
Click Tap
Refresh
. - To see details, select the integration run. Select Run Summary.
- Select the integration:
-
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:
- Click Tap the tile for the integration run.
-
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.
- Log in to the destination system and ensure 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. -
APIs
API title |
URI |
Method |
Description |
---|---|---|---|
/v1/commons/user_preferences/locale_policy |
GET |
Retrieve the user's preferences for the tenant. | |
v2/timekeeping/setup/accrual_profiles |
GET |
Returns a list of accrual profiles according to the user's access rights.
| |
/v1/timekeeping/setup/employment_terms/multi_read |
POST |
Returns one or more employment terms by object reference. | |
/v1/timekeeping/setup/pay_codes/multi_read |
POST |
Returns paycodes available to the logged-in manager by object references. | |
v1/commons/comments |
GET |
Returns a filtered list of comments. | |
/v1/commons/hyperfind/execute |
POST |
Executes a Hyperfind query by ID or qualifier, and then returns the result. | |
/v1/timekeeping/timecard/multi_read |
POST |
Returns timecard data for a set of employees or locations. | |
v1/commons/persons/extensions/multi_read |
POST |
Returns multiple person records based on search criteria. Search criteria include personid, personnumber, jobassignmentid, username, useraccountid, and badgenumber. | |
/v1/timekeeping/timecard_metrics/multi_read |
POST |
Returns timecard data for a set of employees or locations. | |
/v1/timekeeping/pay_code_edits/multi_delete |
POST |
Performs a bulk delete of paycode edits for multiple employees using a list of paycode edit IDs. | |
/v1/timekeeping/timecard |
POST |
Updates a timecard for an employee as a manager. | |
/v1/platform/integration_executions |
POST |
Returns a list of all integration runs including completed, in-progress, scheduled, and failed integration runs. | |
/v1/platform/integrations/update_status |
POST |
Updates and returns the callback instance against the provided integration execution details. | |
/v1/timekeeping/accruals/updates |
POST |
Updates accrual balances in bulk. | |
/v1/timekeeping/enable_edits/import |
POST |
Returns a list of employees with enabled edits. Supports partial success. |
Version history
Version |
Description |
---|---|
1 |
Initial release. This integration extension validates the Fractionnement conditions and adjusts the accrual balance on the grant date, when required. |
1.1 |
In the Jours de Fractionnement integration, the column order of process properties JourDeFractionnement_v1_CRTConfig was incorrect. |
1.2 |
To prevent time-out errors during bulk data handling by the Jours de Fractionnement integration, the employment terms GET API was replaced with the POST API. |
1.3 |
The Jours de Fractionnement integration failed when a comma existed in the accrual profile name assigned to the employee. |
iPack_v2 |
The Jours de Fractionnement integration delivery is now by way of an iPack. |