CRMKI - Import de données Kibé
La tâche CRMKI
permet d’importer les données Kibé concernant les enfants et ses intervenants, et également ses plannings. Le paramétrage de la tâche CRMKI
est décrit ci-dessous.
La tâche importe les données dans le domaine courant.
La date journal est définissable dans la tâche CRMKI
. Cette date fait office de date du début de la page revenu
de tous les parents principaux pour le montant mensuel comptabilisé. Cette même date fait également office de la date de validité de la page données de facturation
.
Trois types d’opération sont possibles:
- Test de l’importation.
- Générer les entrées.
- Générer les entrées avec écrasement.
L’opération Test de l'importation
permet d’avoir un aperçu des données sans que ces dernières ne soient réellement importées (pas d’enregistrement en base de données). L’opération Générer les entrées
, seules les nouvelles données sont importées. Autrement dit, les données déjà existantes ne sont pas mises à jour. Si le désir est d’écraser les données déjà existantes en plus d’importer les nouvelles données, alors le dernier type d’opération doit être utilisé, soit Générer les entrées avec écrasement
. Veillez à garder tous les données nécessaires dans les différents fichiers, peu importe le type d’opération.
Les pages secteurs sont toujours regénérées, quel que soit le type d’opération (2 ou 3).
Le fichier zip
doit contenir 5 fichiers en format csv
et 2 fichiers en format xml
. Les différents fichiers csv
contiennent les données des enfants, des intervenants et des plannings. Alors que les fichiers xml
définissent les relations entre Kibé et SAINet.
Nom du fichier | Format du fichier | Description |
---|---|---|
enfants | csv | Contient les données des enfants |
intervenants | csv | Contient les données des intervenants |
contrats | csv | Contient les données d’un intervenant tertiaire |
intervenantsdata | csv | Contient diverses données concernant les intervenants |
prestations | csv | Contient les données des plannings des enfants |
groups | xml | Contient les relations des groupes kibé et sainet |
slots | xml | Contient les relations des slots kibé et sainet |
Généralement, le client donne un fichier Excel contenant plusieurs feuilles de données. Le nom du fichier csv
correspond au nom de la feuille.
Toutes les colonnes ne sont pas forcément utiles, c’est pourquoi il faut enlever le surplus de données. Ci-dessous, les tableaux présentent les colonnes obligatoires, leur ordre et leur description. L’en-tête des tableaux est obligatoire. En revanche, le libellé de ces en-têtes n’a pas d’importance.
Tous les identifiants présents dans les fichiers de données d’import sont utilisés pour exprimer les liens entre les enfants, les prestations et les parents. Ces identifiants formés de chiffre sont conservés dans des champs dédiés dans les dossiers des différentes entités, mais ne constituent pas au final l’identifiant unique de chaque entité dans SAINet. Ce dernier est incrémenté à chaque nouvel import. Afin de retrouver l’identifiant de l’entité, coller le contenu de l’écran de l’entité dans un fichier texte. L’identifiant de l’entité est inscrit dans le datafield nommé DossierId
.
Les fichiers en format csv
doivent être encodés en ISO-8859-1.
Ce fichier contient les données de base de l’enfant. Les liaisons entre l’enfant et ses intervenants sont créées grâce aux différents identifiants.
Ordre | Nom de la colonne | Description | Format (excel) |
---|---|---|---|
1 | enfant ID | Identifiant de l’enfant | Standard |
2 | e nom | Nom de l’enfant | Standard |
3 | e prenom | Prénom de l’enfant | Standard |
4 | Sexe | Genre de l’enfant | Standard (weiblich/männlich/à naître) |
5 | e naissance | Date de naissance de l’enfant | Date (dd.MM.YYYY) |
6 | Langue maternelle | Langue maternelle de l’enfant | Standard (libellé de la langue) |
7 | Date inscription | Date inscription de l’enfant | Date (dd.MM.YYYY) |
8 | Autorité parentale | Autorité parentale de l’enfant | Standard (tel que défini dans la combo) |
9 | Etat inscription | Statut du dossier de l’enfant | Standard (tel que défini dans la combo) |
10 | Date départ | Date de départ de l’enfant | Date (dd.MM.YYYY) |
11 | Motif départ | Motif de départ de l’enfant | Standard |
7 | Parent principal ID | Identifiant de l’intervenant principal | Standard (tel que défini dans intervenants.csv) |
8 | PP adresse 1 | Ligne 1 de l’adresse de l’enfant | Standard |
9 | PP adresse 2 | Ligne 2 de l’adresse de l’enfant | Standard |
10 | pp npa | Numéro postal d’acheminement de l’enfant | Standard |
11 | partenaire ID | Identifiant de l’intervenant secondaire | Standard (tel que défini dans intervenants.csv) |
À noter que si le libellé du genre de l’enfant est différent, un ajout de ce nouveau libellé est possible.
L’adresse de l’enfant est défini selon les données du fichier enfants.csv
et de du mode défini dans la tâche CRM01
.
Adresse indépendante
: L’adresse de l’enfant n’est pas écrasé.Adresse du débiteur
: Lorsque le débiteur (intervenants.csv
) ou le débiteur tiers (contrats.csv
) est défini, l’adresse de l’intervenant concerné écrase les données de l’enfant.Adresse de l'intervenant
: L’adresse de l’enfant n’est pas écrasé. La cocheL'enfant habite ici
sera cochée si les addresses sont identiques.Adresse de l'intervenant et indépendante
: L’adresse de l’enfant n’est pas écrasé. La cocheL'enfant habite ici
sera cochée si les addresses sont identiques.
La valeur par défaut appliquée si l’identifiant n’est pas renseigné sera :
30 (actif)
pour le statut du dossier de l’enfant.1 (les deux parents)
pour l’autorité parentale.
Exemple:
enfant ID | e nom | e prenom | Sexe | e naissance | Langue maternelle | Date inscription | Autorité parentale | Etat inscription | Date départ | Motif de départ | Parent principal ID | PP adresse 1 | PP adresse 2 | pp npa | partenaire ID |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
10000 | Mory | Melody | weiblich | 02.01.2021 | Français | 01.01.2019 | 3 | 90 | 01.01.2020 | Résiliation | 1001 | SAI ERP | Route de la gare 1 | 1920 | |
11110 | Summer | Colin | männlich | 05.02.2020 | Allemand | 1110 | Avenue des pavillons gris | 1000 |
La dénomination pp
représente le parent principal, alors que pa
correspond au partenaire. Dans les importations de Kibé, la valeur du revenu déterminant pour la facturation est généralement placée que dans la colonne du revenu du parent principal. C’est pourquoi, par défaut le parent principal est le débiteur. De plus, lorsque la présentation choisie est l'import données en cochant la case 'habite ici'
l’adresse de l’enfant sera celle du débiteur, et non plus l’adresse telle que définie dans le fichier enfants.csv
.
Le lien entre un intervenant d’un logiciel de comptabilité tiers et d’un intervenant SAINet se fait à l’aide des colonnes nommées pp ID Compta
et pa ID Compta
. Si le débiteur n’est pas l’un des deux intervenants principaux, voir contrats.csv
.
Ordre | Nom de la colonne | Description | Format (excel) |
---|---|---|---|
1 | parent principal ID | Identifiant de l’intervenant principal | Standard |
2 | pp nom | Nom de l’intervenant principal | Standard |
3 | pp prenom | Prénom de l’intervenant principal | Standard |
4 | PP adresse 1 | Ligne 1 de l’adresse de l’intervenant principal | Standard |
5 | PP adresse 2 | Ligne 2 de l’adresse de l’intervenant principal | Standard |
6 | pp npa | Numéro postal d’acheminement l’intervenant principal | Standard |
7 | pp Employeur | Employeur de l’intervenant principal | Standard |
8 | pp ID Compta | Identifiant externe pour la comptabilité de l’intervenant principal | Standard |
9 | partenaire ID | Identifiant de l’intervenant secondaire | Standard |
10 | pa nom | Nom de l’intervenant secondaire | Standard |
11 | pa prénom | Prénom de l’intervenant secondaire | Standard |
12 | pa adresse 1 | Ligne 1 de l’adresse de l’intervenant secondaire | Standard |
13 | pa adresse 2 | Ligne 2 de l’adresse de l’intervenant secondaire | Standard |
14 | pa npa | Numéro postal d’acheminement de l’intervenant secondaire | Standard |
15 | pa Employeur | Employeur de l’intervenant secondaire | Standard |
16 | pa ID Compta | Identifiant externe pour la comptabilité de l’intervenant secondaire | Standard |
17 | r parent | Revenu de l’intervenant principal | Rien ou Chiffre entier ou Chiffre décimal avec séparateur virgule |
18 | r partenaire | Revenu de l’intervenant secondaire | Rien ou Chiffre entier ou Chiffre décimal avec séparateur virgule |
Si le revenu ne contient pas de valeur, la page revenu de l’intervenant n’est pas créée. Les revenus avec et sans décimales sont acceptés. Le séparateur doit correspondre à une virgule. Si le revenu dépasse la valeur 999998, alors la coche correspondante au salaire confidentiel est cochée.
Exemple:
parent principal ID | pp nom | pp prenom | PP adresse 1 | PP adresse 2 | pp npa | pp Employeur | pp ID Compta | partenaire ID | pa nom | pa prénom | pa adresse 1 | pa adresse 2 | pa npa | pa Employeur | pa ID Compta | r parent | r partenaire |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1001 | Mory | Mélany | SAI ERP | Route de la gare 1 | 1920 | Company, Monthey | 51251 | 1002 | Mory | Alan | SAI ERP | Route de la gare 1 | 1920 | SAI ERP | 56561 | 5000 | 1200 |
1110 | Summer | Etienne | Avenue des pavillons gris | 1000 | SAI ERP | 29874 | 5000 |
La dernière ligne du tableau représente un unique intervenant principal.
A noter que le revenu peut être mensuel ou annuel. L’important est de savoir que le revenu des intervenants est enregistré dans la page revenu
des intervenants respectifs dans le datafield nommé MONTHSALARY
.
Pour rappel, par défaut, l’intervenant principal est le débiteur. Parfois, un débiteur tiers doit être le débiteur principal, par exemple dans le cas des associations caritatives. Ce fichier ajoute alors le nouvel intervenant à l’enfant en question comme nouveau débiteur de l’enfant. Du coup, le parent principal ne sera plus le débiteur.
Le débiteur tiers n’a pas de revenu.
Ordre | Nom de la colonne | Description | Format (excel) |
---|---|---|---|
1 | enfant ID | Identifiant de l’enfant | Standard (tel que défini dans enfants.csv) |
2 | parent principal ID | Identifiant de l’intervenant principal | Standard (tel que défini dans intervenants.csv) |
3 | pp Email privé | Adresse courriel de l’intervenant principal | Standard |
4 | débiteur ID | Intervenant tertiaire et débiteur | Standard |
5 | de nom | Nom de l’intervenant tertiaire et débiteur | Standard |
6 | de prénom | Prénom de l’intervenant tertiaire et débiteur | Standard |
7 | de adresse 1 | Ligne 1 de l’adresse de l’intervenant tertiaire et débiteur | Standard |
8 | de adresse 2 | Ligne 2 de l’adresse de l’intervenant tertiaire et débiteur | Standard |
9 | de npa | Numéro postal d’acheminement de l’intervnenant teritaire et débiteur | Standard |
10 | de ID Compta | Identifiant externe pour la comptabilité de l’intervenant tertiaire et débiteur | Standard |
Exemple:
enfant ID | parent principal ID | pp Email privé | débiteur ID | de nom | de prénom | de adresse 1 | de adresse 2 | de npa |
---|---|---|---|---|---|---|---|---|
10000 | 1001 | mory.mel@sai.net | 1003 | Aide financière | Commune de Martigny | Département financier | Route de la place 30 | 1920 |
Ce fichier permet de définir diverses informations à propos des intervenants.
Le courriel privé de l’intervenant principal est déjà défini dans le fichier nommé contrat
. De manière générale, si les données récupérées ne sont pas remplies, cela n’écrase pas les données existantes. Par contre, si une nouvelle adresse mail est insérée, alors l’ancienne valeur est perdue. Si l’utilisateur a choisi de rentrer des caractères spéciaux pour montrer aux autres utilisateurs que cette valeur doit être définie, alors cela écrasera les données existantes !
À noter que l’import Kibé introduit l’intervenant principal comme la mère et l’intervenant secondaire comme le père. Si cela ne convient pas, la politesse du courrier peut inverser le rôle des parents. La formule de politesse Madame
correspondra au rôle Mère
et la formule de politesse Monsieur
correspondra au rôle Père
.
Si la tâche est lancée avec le type d’opération Générer les entrées avec écrasement
et que la formule de politesse a changé par rapport au premier import, le rôle du dossier de l’intervenant est modifié. Mais cela ne changera pas le rôle de l’intervenant dans le dossier de l’enfant ! La raison est telle que le rôle du dossier de l’intervenant ne détermine pas le rôle de l’intervenant dans le dossier de l’enfant. Un même intervenant pourrait être un père pour un enfant et un oncle pour un autre enfant.
Ordre | Nom de la colonne | Description | Format (excel) |
---|---|---|---|
1 | intervenant ID | Identifiant de l’intervenant | Standard |
2 | Politesse courrier | Formule de politesse pour les lettres | Standard (Monsieur/Madame) |
3 | Téléphone privé | Téléphone privé de l’intervenant | Standard |
4 | Téléphone professionel | Téléphone professionnel de l’intervenant | Standard |
5 | Natel | Numéro de natel de l’intervenant | Standard |
6 | Email privé | Email privé de l’intervenant | Standard |
7 | Email professionnel | Email professionnel de l’intervenant | Standard |
8 | Etat civil | Etat civil de l’intervenant | Standard (célibataire/mariés/séparé/veuf/divorcés/partenariat/décédé/monoparental) |
9 | Profession | Profession de l’intervenant | Standard |
10 | Employeur | Employeur de l’intervenant | Standard |
11 | Taux | Taux de l’intervenant | Standard |
12 | Origine | Origine de l’intervenant | Standard |
Exemple:
intervenant ID | Politesse courrier | Téléphone privé | Téléphone professionel | Natel | Email privé | Email professionnel | Etat civil | Profession | Employeur | Taux | Origine |
---|---|---|---|---|---|---|---|---|---|---|---|
1001 | Madame | 026 547 89 89 | 076 547 89 88 | 079 547 89 87 | mary@mail.ch | mary@mailpro.ch | Célibataire | Boulangère | PainMary | 50 | Martigny |
Ce fichier contient toutes les prestations de l’enfant. Dans SAINet cela correspond aux pages Secteur de l’enfant. Afin qu’une page secteur soit remplie dans sa totalité, toutes les colonnes doivent être définies.
Si pour une ligne la colonne pr code
n’est pas définie et que les colonnes Groupe de structure ID
, enfant ID
, c groupe
, pr date début
, pr date fin
sont définies, alors une page Secteur sera créée uniquement avec le groupe planning de la page, c’est-à-dire que le groupe Fréquentation ne sera pas remplie.
Ordre | Nom de la colonne | Description | Format (excel) |
---|---|---|---|
1 | Groupe de structure ID | Numéro du groupe de l’enfant | Standard (tel que défini dans groups.xml) |
2 | enfant ID | Identifiant de l’enfant | Standard |
3 | c groupe | Catégorie du groupe de l’enfant | Standard (tel que défini dans groups.xml) |
4 | pr date début | Date du début du planning | Date (dd.MM.YYYY) |
5 | pr date fin | Date de fin du planning | Date (dd.MM.YYYY) |
6 | pr heure début | Heure de début du planning | Horaire (hh:mm:ss) |
7 | pr heure fin | Heure de fin du planning | Horaire (hh:mm:ss) |
8 | pr jour de la semaine | Jour de la semaine appliqué au planning | Standard |
9 | pr code | Créneaux appliqués au planning | Standard (tel que défini dans slots.xml) |
Le cas où la taille des modules est plus grande que la taille des slots n’a pas encore été traité !
Exemple:
|Groupe de structure ID|enfant ID|c groupe|pr date début|pr date fin|pr heure début|pr heure fin|pr jour de la semaine|pr code| |----------------------|---------|--------|-----|-------------|-----------|--------------|------------|---------------------|-------| | 100 |10000|Nurserie|01.03.2021|01.12.2021|07:00:00|18:15:00|lu|Pré : JOURNEE| | 100 |10000|Nurserie|01.03.2021|01.12.2021|07:00:00|18:15:00|ma|Pré : JOURNEE| | 100 |10000|Nurserie|01.03.2021|01.12.2021|06:30:00|10:15:00|je|Pré : MATIN| | 100 |10000|Nurserie|01.03.2021|01.12.2021|13:15:00|18:15:00|ve|Pré : APRESMIDI| | 100 |10000|Nurserie|01.03.2021|01.12.2021|||||
Le groupe de l’enfant est défini par la colonne Groupe de structure ID
et c groupe
. Pour que chaque groupe SAINet ait une relation avec les groupes Kibé, ce fichier doit être défini manuellement. Par exemple, l’identifiant du groupe SAI NUR1
correspond aux identifants Kibé de la structure 100
et au groupe Nurserie
.
<?xml version="1.0" encoding="ISO-8859-1"?>
<Groups>
<Group GroupSaiId="NUR1" StructureKibeId="100" GroupKibeId="Nurserie"/>
<Group GroupSaiId="GRA1" StructureKibeId="100" GroupKibeId="Grand"/>
</Groups>
La structure du paramétrage des groupes est détaillée dans ce fichier.
Le créneau utilisé par l’enfant est défini par la colonne pr code
. Ce code permet de définir le créneau Kibé et de le transformer en créneau SAINet. Quatre cas sont possibles:
- Créneau qui ne doit pas être traité.
- Créneau ayant les numéros de slots définis.
- Créneau ayant les numéros de slots à définir.
- Créneau étant des horaires libres.
Lorsque le créneau ne doit pas être traité (par exemple des prestations) ce dernier ne doit pas être inclus dans le fichier slots.xml
. N’existant pas dans le fichier, le créneau ne va pas être reconnu et ne sera volontairement pas traité.
Pour les autres cas, c’est-à-dire lorsque les créneaux doivents être gérés par l’importation, les différents libellés de la colonne pr code
doivent être reportés dans l’attribut CodeKibeId
dans slots.xml
. Si les numéros de slot sont connus pour le libellé, les numéros doivent être inscrits dans l’attribut SlotSaiId
. Si plusieurs numéros de slots correspondent au libellé, les numéros de slot doivent être séparés par une virgule.
Si les numéros de slots sont inconnus ou pas clairs, l’attribut doit alors être vide. Cela signifie que pour les horaires donnés du planning, le système va trouver les slots correspondants le mieux au groupe dont l’enfant fait partie et aux horaires indiqués.
Si le groupe est dans un département ayant le mode horaire, les horaires seront alors reportés dans la page fréquentation de l’enfant.
Par exemple, le libellé du code Pré : MATIN
correspond aux numéros des slots 1,2 et 3 du groupe fréquentation de la page secteur
de l’enfant.
<?xml version="1.0" encoding="ISO-8859-1"?>
<Slots>
<Slot CodeKibeId="Pré : MATIN" SlotSaiId="1,2,3" />
<Slot CodeKibeId="Pré : APRESMIDI" SlotSaiId="4,5,6" />
<Slot CodeKibeId="Pré : JOURNEE" SlotSaiId="1,2,3,4,5,6" />
<Slot CodeKibeId="Nur : 1/2 journée matin" SlotSaiId="" />
<Slot CodeKibeId="Nur : 1/2 journée après-midi" SlotSaiId="" />
<Slot CodeKibeId="Nur : Journée" SlotSaiId="" />
<Slot CodeKibeId="Para : 1/2 journée après-midi" SlotSaiId="" />
<Slot CodeKibeId="Para : 1/2 journée matin" SlotSaiId="" />
<Slot CodeKibeId="Para : Journée" SlotSaiId="" />
</Slots>
La structure du paramétrage des slots est détaillée dans ce fichier.
Si un message d’erreur indique que la langue n’a pas été répertoriée, cela signifie qu’elle n’a pas été déclarée dans SAINet.
Deux combos définissent les différentes langues: LANGUAGES_COMBO
et LANGUAGES_COMBO_ISO639_2
. Celles-ci se trouvent ici. Les langues maternelles emploient la première combo, avec deux lettres des codes de langue. Dans le cadre des imports de kibé, les langues peuvent parfois être en ISO639_2
. C’est-à-dire que les libellés des langues correspondent à trois lettres des codes de langue. La correspondance entre les différents codes n’existent pas forcément. La combo LANGUAGES_COMBO_ISO639_2
permet donc d’indiquer la correspondance désirée.
Codes pour la représentation des noms de langues https://www.loc.gov/standards/iso639-2/php/code_list.php.
Le message d’erreur apparaît avec des caractères spéciaux ? Les différents libellés dans SAINet à propos des noms, des prénoms, etc. ont également des caractères spéciaux ? Alors les différents fichiers en format csv
ne sont pas encodés en ISO 8859-1
. Le programme Geany
est capable de changer rapidement le format d’un fichier. Le fichier en question doit être ouvert sous ce programme, puis le changement d’encodage se fait ainsi : Document
> Définir l'encodage du document
> Européen de l'Ouest
> Occidental ISO-8859-1
.