Apparence
Imports CEGI par SFTP
La préparation de WinSCP, les tâches Windows et le dépôt manuel local sont décrits dans Exporter CEGI vers la GTA.
La collecte reçoit deux flux CEGI : Personnes/contrats quotidien et Congés annuels mensuel, avec le même format congés pour l’initialisation. Chaque lot porte son flux ; le tableau de bord conserve la date de synchronisation des dossiers salariés, sans la remplacer par celle d’un import congés.
Pour qui : un compte avec le statut équipe et les permissions du domaine Imports de données · Où : section Imports de données du menu
Écrans couverts : Lots d'import, Tentatives d'import, Résultats des lignes importées
Les colonnes, filtres et droits de chacun sont dans la référence des écrans.
Comprendre
- La collecte parcourt le répertoire SFTP chaque jour à 04 h 37. Un dépôt ne demande aucune action dans l'application.
- Un lot d'import représente un contenu unique. Son empreinte interdit une deuxième intégration du même fichier, même renommé.
- Une tentative d'import conserve un passage automatique ou une reprise. Un échec n'efface jamais les tentatives précédentes.
- Le fichier est indivisible : une erreur rejette toutes ses lignes sans modifier les salariés ni les contrats.
- Un rejet fonctionnel est archivé 90 jours et peut être rejoué. Un fichier réussi reste disponible 30 jours. Le journal est conservé trois ans.
Contrôler le fonctionnement du flux
Ouvrez Lots d'import.
Consultez le bandeau État du flux CEGI : il donne le dernier succès, le dernier échec et le nombre de lots à traiter ou à reprendre.
Ouvrez le lot le plus récent. Vérifiez son Statut, ses compteurs et son Encodage détecté.
Consultez la sous-liste Tentatives d'import. En cas de rejet, relevez le Code d'erreur, la Ligne et la Colonne.
✅ Vous devriez voir un lot Réussi, un total de lignes égal à la somme des créations, mises à jour et lignes inchangées, puis une tentative réussie.
Rejouer un fichier rejeté
Corrigez d'abord la cause. Un unknown_establishment demande par exemple de renseigner le Code dossier de paye CEGI sur l'établissement concerné.
Ouvrez Lots d'import et filtrez sur le statut Rejeté ou À réessayer.
Ouvrez le lot et vérifiez que Fichier disponible est coché.
Revenez à la liste, cochez le lot, puis choisissez Rejouer les imports sélectionnés.
Cliquez sur Envoyer.
Rechargez la fiche du lot après le passage du worker.
✅ Vous devriez voir une nouvelle tentative avec le déclencheur Administration et votre compte comme opérateur. La tentative précédente reste visible.
La reprise exige la permission Peut rejouer un lot d'import. Sans fichier archivé disponible, le lot reste consultable mais n'est pas rejouable.
Administrer le serveur SFTP
L'interface SFTPGo n'est pas exposée sur le réseau. Cette tâche relève de l'équipe technique et s'effectue depuis un tunnel SSH décrit dans le DAT § 06.
Les comptes ont des rôles séparés :
- le déposant est enfermé dans le répertoire
incominget peut téléverser et lister les noms pour WinSCP, sans télécharger, écraser, renommer ni supprimer ; - l'importeur Django lit et archive, sans accès au WebAdmin ;
- l'administrateur nommé gère SFTPGo avec TOTP, sans être utilisé par l'application.
Après une création ou une rotation, contrôlez un dépôt avec le compte déposant, puis lancez make poll-sftp-imports. Ne désactivez l'ancien accès qu'après ce contrôle. La clé publique hôte affichée par SFTPGo doit correspondre exactement à SFTP_HOST_PUBLIC_KEY ; ne la validez jamais à partir d'une alerte de connexion.
Points d'attention
Seul l'horaire hebdomadaire est importé. Le format salariés contient 37 colonnes, sans
cont_hmes. Le mensuel affiché est calculé par la GTA (hebdomadaire × 52 / 12, arrondi à deux décimales). Dans les anciens fichiers,cont_hmesest ignoré. Les anciens mensuels enregistrés ne remplacent plus ce calcul après application de la migration.CEGI fournit le rattachement à la paie, pas le lieu de travail.
dos_codealimente l'établissement de paie du contrat. Le lieu principal et les lieux secondaires sont gérés dans la GTA et préservés par les imports.Le téléphone professionnel et les enfants à charge restent gérés dans GTA. L'import ne modifie ni ces valeurs ni le motif d'embauche du contrat. Le téléphone reste éditable par les personnes disposant des droits habituels. Les anciens fichiers peuvent contenir
pers_tel1,doc_lib,per_enf,code_pay,code_emb,lib_emb,cont_sdtcetcont_datfprev: ces colonnes sont ignorées, même si leur contenu est invalide.La date de naissance reste importée depuis
pers_dnai. La qualification du contrat prendpos_liblorsqu'il est renseigné, sinonlib_qc. Si les deux sont vides, elle est vide. Seulcont_datfrenseigne la fin du contrat ; une date prévisionnelle ne la remplace plus.Ne modifiez pas un fichier rejeté dans son archive. Corrigez le référentiel puis rejouez le lot, ou déposez un nouveau fichier dont le contenu diffère.
Un code établissement CEGI inconnu rejette tout le fichier. Le mapping se tient sur Établissements, champ Code dossier de paye CEGI.
Une valeur facultative vide efface la valeur précédente. Le fichier est un instantané des champs qu'il transporte ; son absence ne supprime en revanche ni salarié ni contrat.
Des coordonnées ou attributs absents ne bloquent pas le fichier. La date de naissance, l'ancienneté, les téléphones, l'email, la fonction et la qualification peuvent être vides. Le nombre d'enfants à charge n'appartient plus à ce flux ; son import séparé reste à construire. L'identité (
cont_id,pers_mat,pers_nom,pers_pre),cont_datd,cont_hheb,cont_codetdos_coderestent obligatoires. Les autres colonnes peuvent être absentes, vides ou contenirNULLsans distinction de casse. Elles deviennent non renseignées, même si une valeur était présente avant l'import.pers_matpn'est contrôlé que s'il est rempli. Le libellélib_typcontest requis pour créer un type inconnu ; son absence conserve le libellé d'un type déjà référencé par son code CEGI. Une valeur renseignée mais invalide rejette toujours le fichier.L'email CEGI est personnel. Il n'écrase jamais l'email professionnel du compte de connexion.
Aucun contenu métier ne doit être copié dans un ticket ou un journal. Le code d'erreur, la ligne et la colonne suffisent au diagnostic courant.
Conséquence sur l’annualisation
Un import qui corrige un contrat ou un dossier reprend aussi son annualisation dans la transaction du fichier. Les salariés concernés sont verrouillés avant l'écriture. Une ligne inchangée ne déclenche pas de reprise supplémentaire.
Distinguer les types de contrat homonymes
Le Code CEGI identifie le type : deux codes distincts portant le même libellé créent deux types et restent sélectionnables séparément. Un code connu conserve son classement métier ; un libellé reçu le met à jour, un libellé absent le conserve.
Pour un code inconnu, l'import rattache le code à un type manuel seulement si un seul type sans code porte exactement ce libellé. Avec plusieurs candidats, il crée une nouvelle ligne et ne modifie aucun candidat. Le libellé est obligatoire pour un code inconnu. Un nouveau type arrive non classé (Contrat à durée déterminée inconnu, les deux autres cases décochées) : son code et son nom ne déterminent jamais ces règles métier. Toute erreur rejette le fichier entier.
Initialiser puis suivre les congés annuels
Le fichier CSV utilise ; et les colonnes suivantes :
| Colonne | Valeur attendue |
|---|---|
pers_mat | Matricule CEGI d'un salarié existant, zéros initiaux conservés |
usage_year | Année de prise |
entitlement_status | accruing (indicatif) ou final (utilisable) |
acquired_days | Total acquis, ancienneté comprise, positif ou nul, deux décimales au maximum |
snapshot_at | Date et heure de l'extraction avec fuseau, au format ISO 8601 |
L'initialisation contient le droit final de N−1 utilisable en N. Ensuite, chaque fichier mensuel transporte le cumul acquis destiné à N+1. Le fichier suivant la clôture de paie indique final ; la même ligne peut ensuite porter une correction. Les montants remplacent des totaux : ils ne s'additionnent jamais. Le droit acquis est la seule donnée transférée ; pris et planifiés restent sous l'autorité du SIRH.
Filtrez Lots d'import par Flux métier. Un salarié inconnu, un doublon salarié/année, un instantané contradictoire à date identique, une date sans fuseau ou le retour d'un droit final à accruing rejette atomiquement le fichier. Un instantané plus ancien est ignoré. Une omission ne supprime aucun droit. Les périodes reprises comme historiques ne peuvent être réinitialisées par ce flux. Les variations effectives sont consultables dans Compteurs.
Préalable externe : rapprocher les totaux extraits avec la paie et valider les périodes d'acquisition et leur état dans LeavePeriods avant le chargement d'initialisation. L'export Windows et sa requête sql/leave.sql sont décrits dans Exporter CEGI vers la GTA. L'horodatage de l'extraction ne finalise aucun droit ; cette décision reste explicite après validation paie.