Bien qu’il y ait eu beaucoup de modifications quant à la structure des données, il en reste assez peu si on ne s’intéresse qu’à celles qui peuvent être pertinentes pour l’entrepôt de données, base de travail pour LDVision.
Il n’en reste pas moins qu’un travail d’adaptation de l’entrepôt de données est indispensable suite à l’installation de la version 9, pour que les extractions de données paye faites via LDETLFB continuent à fonctionner suite à la migration des données de paye en version 9.
Ce travail est décrit succinctement ci-après.
La méthodologie proposée ici fait appel à l'éditeur NotePad++, car cela est plus rapide. Mais on peut aussi faire toutes les opérations décrites ici depuis l'interface « classique » de LDETLFB.
La première chose à faire est de copier le fichier LDPayV9.wdd (celui qui donne désormais la structure de la base de données de LDPaye Version 9), depuis le répertoire des programmes de LDPaye (par exemple, C:\Ldsystem\Program\Paye) vers le sous-répertoire Analyses du répertoire contenant les données du décisionnel (en principe, sur le serveur, dans un dossier de la forme X:\Decisionnel\LDETLFB\Analyses).
La deuxième chose à faire est de copier les fichiers PAYTAB.FIC et PAYTAB.NDX depuis le répertoire des programmes de LDPaye (par exemple, C:\Ldsystem\Program\Paye) vers le sous-répertoire Analyses du répertoire contenant les données du décisionnel (en principe, sur le serveur, dans un dossier de la forme X:\Decisionnel\LDETLFB\Analyses).
Ce fichier PAYTAB contient les libellés associés à toutes les valeurs codifiées en N4DS et désormais aussi en DSN. Il est donc indispensable pour retrouver dans l’entrepôt de données ces libellés en regard des valeurs codifiées.
Puis, dans le fichier Connexion.cnx, il faut dupliquer la famille de connexion LDPaye Version 8 en LDPaye Version 9.
Exemple des lignes à créer pour cette nouvelle famille :
[FAMILLE_LDPAYEV9]
Libellé=LDPaye Version 9
Analyse=LdpayV9.wdd
Toujours dans ce fichier Connexion.cnx, il faut rattacher les connexions de paye à cette nouvelle famille (on part ici du principe que l'emplacement des données de comptabilité n'a pas changé entre la version 8 et la version 9). Il suffit donc de remplacer le nom de la famille de connexion attachée à chaque connexion Paye. Pour cela, avec NotePad++, on recherche la chaine FAMILLE=LDPAYE. Et pour chaque occurrence, on remplace le nom de la famille LDPAYEV8 par le nouveau nom LDPAYEV9.
S’il existe un grand nombre de connexions à corriger, on peut aussi effectuer une opération de Recherche/Remplacement globale : par exemple, recherche de la chaine FAMILLE=LDPAYEV8 et remplacement par FAMILLE=LDPAYEV9.
Il faut ensuite corriger tous les modèles de comptabilité, pour qu'ils référencent la nouvelle famille de connexion LDPAYEV9 créée à l’étape précédente.
On peut réaliser cela assez facilement avec la fonction Rechercher dans les fichiers d'un dossier de NotePad++. On sélectionne le dossier contenant tous les modèles, on filtre sur l'extension *.mdl, et on recherche le nom de l'ancienne famille de connexion Famille=LDPAYEV8, que l'on remplace par le nom de la nouvelle famille Famille=LDPAYEV9 :
En DSN, comme cela était le cas déjà en DADS-U, il existe de nombreuses valeurs codifiées qui sont contrôlées par rapport à un référentiel externe : code cotisations agrégées pour l’URSSAF, SIRET des URSSAF, SIRET des caisses de retraites, codes caisses MSA…
En version 9, ces « référentiels externes » sont automatiquement récupérés par Internet sur le site DSN-INFO et exploités par LDPaye, à des fins de contrôle et aussi pour afficher des libellés chaque fois que cela a du sens.
Une des conséquences de cette nouveauté est que le fichier des emplois PCSESE, qui était auparavant livré pré-rempli dans chaque dossier de paye (fichier nommé PEEMPL) a disparu en version 9. Les libellés des emplois INSEE sont désormais récupérés dans une des tables mises à disposition sur Internet.
Or, ce fichier PEEMPL était bien souvent utilisé lors de la mise à jour de l’entrepôt de données pour renseigner le libellé de l’emploi des différents salariés. Il faut donc revoir les différents modèles pour retirer la référence au fichier PEEMPL et la remplacer par une lecture dans la table correspondante.
Pour cela, la première chose à faire est de créer une nouvelle fonction dans la bibliothèque de fonction propre à LDPaye. Dans LDETLFB, ouvrez un modèle quelconque attaché à une connexion Paye, comme par exemple le modèle Paye – Salariés avec situations. Avancez jusqu’à l’étape 3/7 – Définition des rubriques. Sur ce plan, cliquez sur le bouton Editer les bibliothèques de fonction :
En partie haute de la nouvelle fenêtre présentée, sélectionnez la bibliothèque PAYE, puis cliquez sur le bouton Modifier la bibliothèque sélectionnée tout à droite.
Au sein de cette bibliothèque, placez-vous tout à la fin du code des différentes fonctions qui existent déjà, puis copiez le code de la nouvelle fonction ci-dessous :
FONCTION LireLibelléDansFichierNomenclature(pCodeTable, pCode)
Libellé est une chaîne
i est un entier
// Chargement de la table si pas déjà fait
SI VARG["DSN-"+pCodeTable]..vide ALORS
NomFic est une chaîne = fRepExe() + ChaîneConstruit("\Nomenclature\DSN-%1-P3V1.txt",pCodeTable)
TableDesCodes est une chaine = fChargeTexte(NomFic)
SI TableDesCodes <> "" ALORS
POUR TOUTE CHAÎNE UneLigne DE TableDesCodes SEPAREE PAR RC
i++
SI i > 1 ALORS // on ignore la ligne de titre
VARG["DSN-"+pCodeTable+"-"+SansEspace(ExtraitChaîne(UneLigne,1,";"))] = SansEspace(ExtraitChaîne(UneLigne,2,";"))
FIN
FIN
VARG["DSN-"+pCodeTable] = DateSys()+HeureSys()
FIN
FIN
// Lecture du libellé dans la table
Libellé = VARG["DSN-"+pCodeTable+"-"+pCode]
SI Libellé ~= "" ALORS
SI VARG["DSN-"+pCodeTable]..vide ALORS
RENVOYER "*ERR : La table "+pCodeTable+" n'existe pas."
SINON
RENVOYER "*ERR : Le code "+pCode+" n'existe pas."
FIN
SINON
RENVOYER Libellé
FIN
Une fois ce code copié, validez par OK, puis fermez la fenêtre des bibliothèques. Vous pouvez ensuite abandonner la modification du modèle courant en cliquant sur le bouton Annuler en bas à droite (la modification de la bibliothèque a déjà été enregistrée à ce stade).
La fonction décrite plus haut fait référence aux différentes tables de nomenclatures, qui sont automatiquement récupérées chaque jour par LDPaye dans un sous-répertoire Nomenclatures du répertoire des sous-répertoires de LDPaye, ce qui donne donc un nom de répertoire de la forme X:\Ldsystem\Fichiers\Paye\Nomenclatures.
Or, ce répertoire des sous-répertoires n'est bien souvent pas accessible directement par LDETLFB. C'est pourquoi, dans la fonction ci-dessus, on référence ces tables dans le répertoire des programmes de LDETLFB. Pour que cette fonction s'exécute correctement, il faut donc copier tout le dossier Nomenclatures trouvé depuis le répertoire des sous-répertoires (X:\Ldsystem\Fichiers\Paye) dans le répertoire des programmes de LDETLFB (en principe, sur le serveur, dans un dossier de la forme X:\Decisionnel\LDETLFB, là on l'on trouve déjà le sous-répertoire Analyses notamment).
Il faut ensuite modifier tous les modèles qui faisaient référence au fichier PEEMPL. En principe, la référence se faisait dans LDETLFB via un champ « lié ». Il faut supprimer ce champ du modèle et ajouter à la place un champ « calculé » dont le code fait appel à la fonction créée précédemment. Pour opérer cette modification, on peut soit le faire via NotePad ou NotePad++ directement sur le fichier .mdl, soit le faire par l’interface « classique » de LDETLFB.
Avant modification
Ce qui est en rouge est à supprimer, mais notez bien le N° d’ordre de la ligne pour reprendre le même sur le champ créé à l’étape suivante :
Ajout du champ calculé
Le nouveau champ doit être ajouté en cliquant sur le bouton Ajouter un champ autre :
Au final, on doit obtenir cela :
En dehors du problème relatif au fichier PEEMPL abordé ci-dessus, il ne devrait pas y avoir de difficulté pour exécuter vos anciens modèles avec une connexion pointant sur une base de données en version 9 de LDPaye. Il n’y a quasiment pas eu de champ supprimé dans la base de données par rapport à la version 8. Et peu de champs ajoutés qu’il serait pertinent d’ajouter également dans votre entrepôt de données.
Toutefois, si vous souhaitez mieux cerner tout ceci, reportez vous la description des modifications de structure de la base de données entre les versions 8 et 9 de LDPaye.