Objet de l'interface
L’interface permet d’importer les plannings initiaux, modifiables ou réalisés depuis un logiciel tiers vers Timesquare. Le principe est de mettre à disposition les informations attendues dans un fichier de type texte qui sera lu et interprété par l’interface de façon à mettre à jour la base de données.
En savoir plus sur le paramétrage de cet import.
Traitement des informations importées
Pour chaque fichier d’import, le fichier contient une ligne par plage, par personne.
Option Annule et remplace le planning existant
Si j’importe une Tâche 1 de 15:00 à 17:00, sur une Tâche 2 existante de 14:00 à 18:00.
| Option Annule et remplace le planning existant décochée | Option Annule et remplace le planning existant cochée |
|---|---|
| Les deux tâches se superposent. |
La tâche 2 est totalement supprimée et la tâche 1 est ajoutée. |
Si j’importe une Tâche 1 de 15:00 à 17:00, sur une journée d’absence complète.
| Option Annule et remplace le planning existant décochée | Option Annule et remplace le planning existant cochée |
|---|---|
| L’absence complète est supprimée, la tâche 1 est ajoutée. |
L’absence complète est supprimée, la tâche 1 est ajoutée. |
Si j’importe une Tâche 1 de 15:00 à 17:00, sur une absence partielle de 14:00 à 18:00.
| Option Annule et remplace le planning existant décochée | Option Annule et remplace le planning existant cochée |
|---|---|
| L’absence et la tâche se superposent. |
L’absence partielle est supprimée, la tâche 1 est ajoutée. |
Cas particulier : absences et plages qui se chevauchent dans le fichier
Dans le cas où une absence (complète ou partielle) et des plages travaillées sont renseignées sur une même journée pour un même identifiant dans le fichier, c’est l’absence qui est prioritaire, qu’elle apparaisse avant ou après les plages de travail dans le fichier d’import.
- Absence complète : Une plage de travail ne peut pas remplacer une absence complète alors qu’une absence complète remplace forcément les plages de travail présentes.
- Absence partielle : Elle est aussi prioritaire et les cas suivants peuvent se présenter :
- L’absence recouvre complètement la plage de travail : seule l’absence subsiste, indépendamment de l’ordre.
- L’absence s’inscrit à l’intérieur de la plage de travail : l’absence s’insère au milieu de la plage, indépendamment de l’ordre.
- L’absence chevauche une partie de la plage de travail : l’absence rogne la plage de travail, indépendamment de l’ordre.
Si deux plages (absence et/ou travail) se chevauchent dans le fichier, le résultat de l’import n’affichera pas l’erreur.
Nom du fichier
Le fichier peut être nommé de deux façons selon que le système tiers le mettant à disposition génère un fichier différent pour chaque jour ou un fichier unique contenant une ou plusieurs journées de planning.
Fichier unique
Le nom du fichier d'import est libre (libellé + extension) mais une fois défini dans le paramétrage de l’import, il ne doit plus changer.
Exemple 1 : le champ Libellé dans la configuration et le fichier d'import se nomment tous les deux Planning.txt.
Exemple 2 : le champ Libellé dans la configuration et le fichier d'import se nomment tous les deux planning_Timesquare.001
Fichiers multiples
Si l'option Importer uniquement les données pour la date présente dans le nom de fichier lorsque celui-ci est variable est cochée, alors je peux importer un fichier par jour.
Les noms des fichiers d'import doivent suivre une syntaxe particulière incluant la date des données proposées. Le champ Libellé du fichier doit expliciter la nomenclature choisie. Ainsi, LibelléYYYYMMDD.EXT, LibelléJJMMAAAA.EXT, LibelléJJMMAA.EXT, LibelléAAAAMMJJ.EXT ou LibelléAAMMJJ.EXT sont les dénominations retenues où :
- "Libellé" est une chaîne de caractères alphanumériques que je peux personnaliser
- "DD" et "JJ" correspondent au jour, "MM" correspond au mois, "YYYY" et "AAAA" correspondent à l'année sur 4 caractères, "AA" correspond à l'année sur 2 caractères
- "EXT" une chaîne alphanumérique de trois caractères au maximum que je peux personnaliser
Note : le pattern de date est sensible à la casse.
Exemple 1 : Le champ Libellé dans la configuration se nomme site1_JJMMAA.txt et les trois fichiers d'import se nomment site1_040520.txt, site1_050520.txt et site1_060520.txt.
Exemple 2 : Le champ Libellé dans la configuration se nomme planningAAAAMMJJ.001 et les trois fichiers d'import se nomment planning20200504.001, planning20200505.001 et planning20200506.001.
Exemple 3 : Le champ Libellé dans la configuration se nomme AAMMJJ.txt et les trois fichiers d'import se nomment 040520.txt, 050520.txt et 060520.txt.
Format
Texte. Encodage UTF-8.
Séparateur entre deux informations
Le séparateur entre deux informations peut être le point-virgule, la virgule, la tabulation ou la barre verticale.
Description des lignes du fichier
| Informations | Type | Remarques |
|---|---|---|
| Identifiant | Alphanumérique | Sans espace ni caractère spécial (Matricule, Matricule Paie ou Identifiant) |
| Date | Date | JJ/MM/AAAA (jour, mois, année) |
| Nature de l’activité | Alphanumérique |
|
| Heure de début | Heure | HH:NN (heures, minutes) |
| Heure de fin | Heure | HH:NN (heures, minutes) |
| Code activité | Alphanumérique | Ce champ n'est pas obligatoire. Code absence, code tâche, vide si pause ou repos ou pas de code absence/tâche |
| Organisation de travail | Numérique |
Ce champ n'est pas obligatoire. Il peut prendre les valeurs :
|
Règles de gestion
- Les plannings sont importés uniquement sur les journées non validées.
- L’import annule et remplace le planning existant si l’option Conserver les absences issues des demandes de My Timesquare n’est pas activée. Les plages de travail, d’absences partielles, les journées d’absences complètes ou de repos sont remplacées par les données qui sont importées.
- Si l’option Conserver les absences issues des demandes de My Timesquare est activée, les plannings qui contiennent des absences complètes / partielles issues de demandes de My Timesquare ne sont pas remplacés. Une information est présente dans le fichier de log.
- Si l’option Annule et remplace le planning existant est désactivée et que j'importe une absence complète ou un repos :
- Si une absence complète ou un repos est déjà présent : l'absence complète ou le repos remplace l'existant.
- Si une absence partielle est présente : l'absence complète ou le repos remplace l'absence partielle déjà présente.
- Si une ou plusieurs plages de travail sont déjà présentes : l'absence complète ou le repos remplace les plages de travail déjà présentes. Si une ou plusieurs pauses classiques sont présentes, elles sont supprimées.
- Si l’option Annule et remplace le planning existant est désactivée et que j'importe une absence partielle ou une plage de travail :
- Si une absence complète ou un repos est déjà présent : l'absence partielle ou la plage de travail remplace l'absence complète ou le repos.
- Si une absence partielle est présente : si l'absence partielle ou la plage de travail n'a pas de tranche horaire en commun avec l'existant, l'absence partielle ou la plage de travail est insérée normalement. Si l'absence partielle ou la plage de travail recouvre une partie de l'existant, l'absence partielle ou la plage de travail à importer recouvre et donc tronque une partie de l'existant. Si une ou plusieurs pauses classiques sont présentes sur la partie commune, elles sont supprimées. Si l'absence partielle ou la plage de travail recouvre complètement l'existant, l'absence partielle ou la plage de travail remplace l'existant. Si une ou plusieurs pauses classiques sont présentes, elles sont supprimées.
- Si une ou plusieurs plages de travail sont déjà présentes, si l'absence partielle ou la plage de travail n'a pas de point commun, l'absence partielle ou la plage de travail est insérée normalement. Si l'absence partielle ou la plage de travail recouvre une partie de l'existant, l'absence partielle ou la plage de travail à importer recouvre et donc tronque une partie de l'existant. Si une ou plusieurs pauses classiques sont présentes sur la partie commune, elles sont supprimées. Si l'absence partielle ou la plage de travail recouvre complètement l'existant, l'absence partielle ou la plage de travail remplace l'existant. Si une ou plusieurs pauses classiques sont présentes, elles sont supprimées.
- Si l’option Annule et remplace le planning existant est désactivée, l’état fixe ou variable des plages de travail déjà présentes est conservé. Si une tâche B fixe qui vient s'insérer dans une plage existante comportant une tâche A :
- Si plage variable avec tâche A variable : on obtient une plage variable avec tâche A variable et tâche B fixe.
- Si plage fixe avec tâche A variable : on obtient une plage fixe avec tâche A variable et tâche B fixe.
- Si plage fixe avec tâche A fixe On obtient une plage fixe avec tâche A fixe et tâche B fixe.
- Si l’option Annule et remplace le planning existant est désactivée, le télétravail ou non des plages de travail déjà présentes est conservé.
- Si l’option Annule et remplace le planning existant est désactivée, la pause classique ne peut être importée que sur une plage de travail.
- Une plage de travail ou une plage d’absence partielle doit nécessairement commencer et finir à un horaire multiple de la granularité de planification pour être importée dans l’initial.
- Une plage de travail ou une plage d’absence partielle doit nécessairement commencer et finir à un horaire multiple de la granularité de planification pour être importée dans le modifiable sauf si celui-ci autorise la minute comme mode de saisie.
- Les heures de début et de fin de pause peuvent être déclinées à minute mais doivent être inscrites dans une plage de travail.
- Pour une absence complète ou un repos, l’heure de début doit être l'heure de changement de jour et l’heure de fin doit être l'heure de changement de jour. Par exemple : 00:00 et 00:00 respectivement si l'heure de changement de jour est 00:00.
- Si la colonne Nature de l’activité n’est pas renseignée à T (pour Travail), l’information de la colonne Organisation de travail est ignorée.
- Il n’est pas possible d’importer une organisation de travail "Télétravail fixe" ou "Télétravail variable" pour une tâche pour laquelle le télétravail est interdit. Dans ce cas, la ligne est rejetée.
- Si plusieurs lignes pour la même plage horaire sont importées, avec des tâches différentes et des organisations de travail différentes, seule l’organisation de travail de la dernière ligne disponible dans le fichier importé est prise en considération pour toutes les lignes de la plage. Les autres organisations de travail sont ignorées. Exemple : Si on importe les éléments suivants : Tâche A de 08h00 à 10h00 en télétravail et Tâche B de 10h00 à 12h00 sur site. L’organisation de travail des deux tâches sera "sur site" et l’information "Télétravail" importée pour la première tâche (première ligne) est ignorée.
- Si l’option Annule et remplace le planning existant est désactivée, comme dans la saisie d'une tâche, dans le cas où il existe une tâche présente sur les plannings de 09h - 13h T1 :
- Si j'importe une plage 11h - 15h T1 : Les deux plages sont fusionnées.
- Si j'importe une plage 11h - 15h T2 : La première plage est modifiée et devient 09h - 11h T1 et la seconde plage 11h - 15h T2 est insérée dans le planning.
- Si j'importe une plage 10h - 11h T2 : La première plage se scinde en deux plage 09h - 10h T1 et 11h - 13h T1 et la plage 10h - 11h T2 est insérée dans le planning.
- Si j'importe une plage 09h - 13h T2 : La plage reste intacte mais c'est la tâche T2 qui s'affiche dans le planning.
- Si j'importe une plage 08h - 14h T2 : La plage 09h - 13h est remplacée par la nouvelle plage 08h - 14h.
- Si l'activité est une absence et que la colonne code activité est vide, on utilise le code absence par défaut défini dans le paramétrage.
- Si l'activité est une tâche et que la colonne code activité est vide, on utilise le code tâche par défaut défini dans le paramétrage.
Exemple de contenu
BRZ04;13/04/2026;T;09:00;12:00;BRZ01;1
BRZ04;13/04/2026;T;14:00;18:00;BRZ02;1
BRZ04;14/04/2026;R;00:00;00:00;
BRZ04;15/04/2026;AP;09:00;12:00;CPBRZ;1
BRZ04;15/04/2026;T;14:00;18:00;BRZ02;1
BRZ04;16/04/2026;AC;00:00;00:00;CPBRZ;1
BRZ04;17/04/2026;T;09:00;12:00;BRZ01;3
BRZ04;17/04/2026;P;10:00;10:15;
BRZ04;17/04/2026;T;14:00;18:00;BRZ01;3
Commentaires
0 commentaire
Vous devez vous connecter pour laisser un commentaire.