PlanningExchange batch
The PlanningExchange batch is used to transfer the schedules saved in Akuiteo to a Microsoft Outlook calendar. This way, without any direct action, employees can easily look at their schedules in their Outlook calendar from a smartphone or a tablet. The electronic calendars of employees are updated automatically while managing schedules directly in Akuiteo.
This batch can be set up by employee in order to only allow some types of schedules to specific employees. To identify specific employees, a key can be added to each employee record sheet.
Important
The PlanningExchange batch cannot be used to transfer any changes made from an Exchange calendar to Akuiteo. If an employee modifies an appointment in his/her Exchange calendar, this modification will not be synchronized with the Akuiteo schedule and will be overwritten the next time the batch is executed. The Akuiteo schedule remains the point of reference.

DMF |
160840 SHOW CHOICE OF TIME AND SCHEDULE INPUT MODE 160841 MODIFY CHOICE OF TIME AND SCHEDULE INPUT MODE |
The Key to identify employee in batches field enables you to add a specific value that can be used in the PlanningExchange batch. This field is available in the employee record sheet > Employee tab > Choice of time and schedule input mode section.
This key can be assigned to one or multiple employees depending on needs, and allows to identify these employees when the batch is executed.
Example
You want to add the Akuiteo schedules in the calendars of your company's consultants. However, these schedules are useless for the other employees in the company.
You add the BATCH_CONSULT key in the employee record sheet of each consultant. You use this key in the batch setup. When the batch is executed, employees with the BATCH_CONSULT are found and their calendars are the only ones updated with the Akuiteo schedules.

When creating the batch, select PlanningExchange in the Batch template drop-down list.
When the batch is executed, schedules are transferred to Exchange according to the parameters specified.

The parameters in the following table correspond only to the parameters specific to the PlanningExchange batch.
Reference
To view the parameters common to most batches, refer to Setting up the common parameters.
Code | Description | Type | Required |
---|---|---|---|
AFFECTATIONS_VALIDEES
|
When the parameter is set to True, the validated allocations are the only ones to be transferred and stored from Akuiteo to Exchange. | Boolean | No |
AJOUTER_VALIDATION
|
When the parameter is set to True, information about the validation is added to the title and comment in the Exchange appointment. | Boolean | No |
CALENDRIER_DEFINI
|
Name of the Microsoft Exchange calendar used to transfer the Akuiteo schedules. If empty, the default calendar of the Exchange user is used. This parameter enables users to have a specific sub-calendar updated by Akuiteo in their Exchange calendar. |
String Ex: CalendarCRM |
No |
CATEGORIES
|
This parameter is used to associate an Akuiteo action code with an Outlook color category. When Akuiteo schedules are transferred to Exchange, appointments are created using the color categories that match the action codes. Enter pairs of ACTION CODE/Category separated by semicolons. Example INTERNAL:Red category;BILLABLE:Purple category;TELEWORK:Orange category Right-click on an appointment in Outlook then click Categorize to see the different color categories. By default, these categories are named Yellow category, Red category, Blue category, and so on. However, they are completely customizable. Notes The name of a category must be written explicitly and is case-sensitive. If the name specified in the batch setup is not identical to the Outlook category, the batch will not work. A category is only assigned automatically once, when the appointment is created. If the action code is changed, the category will have to be manually updated in Outlook. |
String | No |
CODE_COLLAB_EXCLU
|
Employee codes that must be excluded from the Exchange transfer when the batch is executed. Each code must be separated by a semicolon. |
String Ex: AAA;BBB;CCC |
No |
COMMENTAIRE_EXCHANGE
|
Codes of the fields to be included in the Exchange comment. Each code must be separated by a semicolon. The following values are available: CodeAffaire, NomAffaire, CodeClient, NomClient, CodeLot, LibelleLot, CodeSousLot, LibelleSousLot, Tache, CodeAction, LibelleAction, Lieu, Commentaire In the Exchange comment, fields are displayed in the following way: Label of 1st field: value Label of 2nd field: value And so on. |
String Ex: CodeAffaire;NomClient; |
Yes |
EXCLURE_AFFAIRE_ABSENCE
|
When the parameter is set to True, leave projects are excluded from the Exchange transfer. | Boolean | No |
EXCLURE_AFFAIRE_EXTERNE
|
When the parameter is set to True, external projects are excluded from the Exchange transfer. | Boolean | No |
EXCLURE_AFFAIRE_INTERNE
|
When the parameter is set to True, internal projects (except for leaves) are excluded from the Exchange transfer. | Boolean | No |
EXCLURE_COLLAB_EXTERNE
|
When the parameter is set to True, external employees are excluded from the Exchange transfer. | Boolean | No |
EXCLURE_COLLAB_NE_PAS_RELANCER
|
When the parameter is set to True, employees that cannot be sent reminders about their time input are excluded from the Exchange transfer. For these employees, the No reminders about time input box is checked in the Employee tab > Choice of time and schedule input mode section. |
Boolean | No |
EXCLURE_PLA_DEVIS
|
When the parameter is set to True, schedules created from quotations are excluded from the Exchange transfer. | Boolean | No |
FILTRE_CLE_COLLAB
|
Batch key used to filter the employees taken into account for the Exchange transfer. If multiple keys are entered, each key must be separated by a semicolon. If a key is entered, employees must have this key specified on their record sheet to be taken into account. If the parameter is empty, there is no filter applied and all the employees are taken into account. Reference For more information about batch keys, refer to Preparing employee record sheets. |
String Ex: BATCH_SALES |
No |
FILTRE_CODE_COLLAB
|
Employee codes used to filter the employees taken into account for the Exchange transfer. If multiple codes are entered, each code must be separated by a semicolon. If the parameter is empty, there is no filter applied and all the employees are taken into account. |
String Ex: AAA;BBB;CCC |
No |
FILTRE_COLLAB_OPERATIONNEL
|
When the parameter is set to True, active employees are the only ones taken into account for the Exchange transfer. | Boolean | No |
IGNORER_INDICATEUR_JOUR
|
If the parameter is set to True, each event created in Outlook from a scheduled item of one day will be set with a start and end time. These start and end time match the setup of the standard week, which can be accessed from Setup > General setup > Resources and Labor > Model weeks. If the parameter is set to False or is not specified, each event created in Outlook from a scheduled item of one day will be set as an all-day event. Example If a scheduled item of one day is transferred to Outlook and, in the standard week setup, a day is defined as 9 AM to 1 PM/2 PM to 6 PM:
Note If the scheduled item is set as an entire day and on several days, the parameter is not taken into account and the appointment created on Outlook will still be created in the form of entire days on several days. |
Boolean | No |
MESSAGE_VALIDATION_COMMENTAIRE
|
Message added in the comment of the Exchange appointment if the schedule validation is active. | String | No |
MODE_PURGE
|
When the parameter is set to True, appointments are cleared. Cette purge permet de supprimer de l'agenda Exchange tous les plannings transférés avec Akuiteo dans la plage de travail, avant d'effectuer le transfert attendu. | Boolean | No |
OBJET_EXCHANGE
|
Codes of the fields to be included in the Exchange subject. Each code must be separated by a semicolon. The following values are available: CodeAffaire, NomAffaire, CodeClient, NomClient, CodeLot, LibelleLot, CodeSousLot, LibelleSousLot, Tache, CodeAction, LibelleAction, Lieu, Commentaire In the Exchange subject, fields are displayed one after the other, separated by a space. |
String Ex: CodeAffaire;NomClient; |
Yes |
PERIODE_NB_JOURS_APRES
|
Number of days taken into account after the current date. It reduces the number of schedules to be transferred. |
Number Ex: 30 |
Yes |
PERIODE_NB_JOURS_AVANT
|
Number of days taken into account before the current date. It reduces the number of schedules to be transferred. |
Number Ex: 10 |
Yes |
PREFIXE_VALIDATION
|
Préfixe qui sera ajouté dans le titre du planning Exchange si la validation du planning est activée. |
String Ex: SCHED |
No |
SOCIETES
|
Codes des sociétés pour filtrer les plannings pris en compte en fonction de la société Akuiteo. If multiple companies are entered, each company must be separated by a semicolon. |
String Ex: COMPANY1;COMPANY2 |
No |

The interface with Exchange 365 must be set up if you want the schedules identified as Online meetings in Akuiteo to be declared as Teams meeting in an Outlook calendar when the PlanningExchange batch is executed.
Note
The attendees must be manually added in Outlook for each meeting created by the batch. If a scheduled item is modified in Akuiteo, the original meeting is deleted in Outlook and a new one is created, with a new generated Teams link.

Accessing the Azure portal
1 | In a web browser, enter the following address https://portal.azure.com/ and log in as an administrator. |
2 | In the home page, click on Azure Active Directory. |
Registering Akuiteo in the Azure AD's directory
1 | Click on App registrations from the left menu, then click on New registration. |
2 | Give a Name to this new registration (Akuiteo Exchange 365 for example) and leave the Accounts in this organizational directory only (XXX only - Single tenant) option checked. Click on Register. |
The app page is displayed.
3 | Hover over the Directory (tenant) ID field then click on the icon to copy the information to the clipboard. Keep this information in a separate document. |
Note
The Directory (tenant) ID field corresponds to the authority.
Creating a "client secret" to identify the Akuiteo server
1 | Click on Certificates & secrets from the left menu, then click on New client secret. |
2 | Enter a Description (Client Secret Batch Exchange Akuiteo for example) then select an Expiration date for the key depending on your security policy. Click on Add. |
Important
When the expiration date is reached, you must create a new "client secret".
3 | Hover over the Value and ID fields then click on the button to copy the information to the clipboard. Keep this information in a separate document. |
Note
The Value field corresponds to the client secret and the ID field corresponds to the client id.
Important
You must copy these values right after creating the client secret because the information will not be accessible afterward and you must generate a new client secret.
Requesting API permissions
1 | From the API permissions menu, click on Microsoft Graph then on Application permissions. |
2 | Expand the Calendars category, check the Calendars.ReadWrite value then click on Add permissions. |
3 | Repeat the same process for: |
- OnlineMeetings > OnlineMeetings.ReadWrite.All
- User > User.ReadWrite.All
4 | From the Configured permissions page, click on the Grant admin consent for XXX button, then click on Yes to confirm. |

Creating the connection file
This file contains all the information to connect to the Exchange 365 server.
1 | Create a text file in the desired directory on the server hosting the Akuiteo server. |
2 | Fill in 4 lines in that text file: |
Line 1 |
Replace |
Line 2 |
Replace |
Line 3 |
Replace |
Line 4 | vault.msgraph.scope=https://graph.microsoft.com/.default
|
Example
In this example, the file is named akuiteo.vault and is stored in the c:\akuiteo directory.
The akuito.vault
file contains:
vault.msgraph.authority=https://login.microsoftonline.com/fa82f36d-2016-45e5-af01-5c283df43f73/
vault.msgraph.client_id=4d45786d-87a6-4e2f-af67-07203526c50c
vault.msgraph.client_secret=rs~Ge4-OnPFM3H_1Us2IDrJlv5RXk_.5JJ
vault.msgraph.scope=https://graph.microsoft.com/.default
3 | Save the text file. |
Setting up the Tomcat server
Windows server
1 | From the administration console of the Tomcat server, open the Java tab > Java Options. |
2 | Add the -Dvault.path=XXX parameter and replace XXX by the path and name of the text file created. |
Example
In this example, the parameter will be: -Dvault.path=c:\akuiteo\akuiteo.vault
.
3 | Click on OK then restart the server. |
Unix server
1 | In the setup file of the Tomcat server, add the -Dvault.path=XXX parameter and replace XXX by the path and name of the text file created. |
Example
In this example, the parameter will be: -Dvault.path=/akuiteo/akuiteo.vault
.
2 | Save the file then restart the server. |