Cegid XRP Ultimate

Fondations

Document de release de la version H5.01

Sommaire

   Ce document présente les évolutions survenues sur l'application Cegid XRP Ultimate Fondations en H5.01.


   extend   Afficher / Masquer le détail                                                   Format PDF


Comment garder l'iso fonctionnalité


   Version de Java
A partir de cette version, java version 1.8 est un prérequis au fonctionnement du serveur de traitements.


Fonctionnalités


   Nouveautés


      CTHDU : Historique des délégations entre utilisateurs

   Une consultation permettant de visualiser l'historique des délégations.

      Explications

   Il est désormais possible d'historiser :
   - les délégations qui ont pu exister entre un utilisateur/profil et un autre utilisateur/profil. Par exemple les délégations entre utilisateurs, les délégations des signatures multicritères achats (GGSMA). Dans ce cas, il s'agit de l'historisation des délégations ;
   - des actions en lien avec ces délégations comme par exemple retrouver la délégation qui a permis à un utilisateur de signer une commande. Dans ce cas, il s'agit de l'historisation des actions de délégations.


      Transactions concernées (ou liste des modifications)

CTHDU - Historique des délégations entre utilisateurs (Transaction GTCHDU)


      Mise en place

   Par défaut l'historisation des délégations n'est pas active. Pour l'activer, se référer au paramètre AUTHDU


      GTRDEN : Requêtes de confidentialité des entités des documents

   Lors de l'appel d'un WebService pour récupérer un document dans la GED il est désormais possible de gérer la confidentialité.

      Explications

   A partir du mnémonique GTRDEN, il faut définir une requête SQL liée à une entité de document.
Exemple de requête sur la confidentialité des factures de ventes :
   select 'X' from svfav@ svfav where etssvfav = ? and numsvfav = ?
Ensuite, spécifier dans l'entrée 1 le paramètre de synchronisation de GTDEN qui contient le code établissement et en entrée 2 le paramètre de synchronisation de GTDEN qui contient le numéro de facture
Lors de l'accès au document cette requête sera exécutée et en fonction du résultat le document sera accessible ou non.


      Transactions concernées (ou liste des modifications)

GTRDEN - Requêtes de confid. des entités des documents (Transaction GTIRDE)


      ETUFP : Edition des profils et habilitations

   Nouvelle édition du paramétrage des profils et habilitations.

      Explications

   A partir du mnémonique ETUFP, l'édition permet de visualiser les profils et fonctions autorisés par établissement pour une liste d'utilisateurs à une date spécifiée.
Possibilité de spécifier de 2 à 4 niveaux de tri sur les zones "Etablissement", "Utilisateur", "Profil" et "Fonction".
Deux fichiers de sortis sont disponibles :
- Extrait de l'édition (PDF)
- Extrait de l'édition (Excel)


      Transactions concernées (ou liste des modifications)

ETUFP - Edition des profils et habilitations (Transaction GTEUFP)


   Modifications


      ECFPDF : Concaténation des fichiers résultats PDF

   Ajout de la possibilité d'ajouter un numéro de page général à l'ensemble des pages concaténées sur toutes les pages du document.

      Explications

   L'ajout d'un nouveau champ « options spécifiques » permet de spécifier la syntaxe à mettre en place pour gérer ce numéro de page. Pour plus de détail voir la documentation de la soumission ECFPDF


      Transactions concernées (ou liste des modifications)

ECFPDF - Concaténation des fichiers résultats PDF (Transaction GTECPDF)


Modules


   Nouveautés


      RGPD : Traitement de modification de données personnelles

   Traitement de modifications d'informations personnelles d'une personne.
Ce traitement est accessible suite à une recherche dans le contrôle des données personnelles (GKRGPD).
Il permet de modifier l'information d'une personne depuis un seul et même écran.

      Explications

   Ce traitement permet par exemple de remplacer un numéro de téléphone par un autre, dans toutes les tables liées à cette personne en une seule action.


      Transactions concernées (ou liste des modifications)

TMRGPD - Trt. de modification des données personnelles (Transaction GTMRGPD)


      RGPD : Edition et consultation des traces des données personnelles

   L'édition des traces des données personnelles est maintenant disponible pour les traces du module RGPD.
Une consultation permettant de visualiser les informations modifiées pour une donnée est elle aussi disponible afin de visualiser facilement les modifications opérées sur les informations personnelles.

      Transactions concernées (ou liste des modifications)

ETRCRG - Traces d'informations personnelles (Transaction GTETRC)
CTDECRG - Consult. des traces d'informations personnelles (Transaction GTCTDEC)


      Mise en place

   Pour l'édition des traces, il faut préalablement, définir dans le référencement des données personnelles (GTRGR) les colonnes que l'on souhaite tracer.
Ensuite depuis cette gestion, il faut générer le paramétrage des traces en cliquant sur le bouton "Mise à jour du paramétrage des traces". Lorsque cette génération est effectuée, il faut lancer de traitement de génération des trigger (TTRG).

   Ensuite toutes les modifications effectuées sur ces zones seront tracées, et pourront être consultées par l'édition des "traces d'informations personnelles".

   Il est aussi possible depuis une gestion concernée par la trace d'informations personnelles (Exemple : La gestion des adresses de tiers) de consulter les différentes modifications réalisées sur les colonnes tracées, en appelant en transaction synchronisé la "Consultation des traces d'informations personnelles" (Exemple : consulter les modifications effectuées sur le numéro de téléphone).


      RGPD : Saisie des consentements ou des demandes d'anonymisation

   Une nouvelle gestion de saisie et visualisation des consentements est disponible.

      Explications

   Il est maintenant possible depuis une gestion comportant des données personnelles, de saisir le consentement (ou une demande d'anonymisation) de la personne concernée.


      Transactions concernées (ou liste des modifications)

GTRGCL - Consentement (Transaction GTRGCL)


      Mise en place

   Si l'on souhaite pouvoir saisir depuis la fiche client le consentement de la personne, il suffit d'ajouter dans les associations de mnémoniques, l'appel de la gestion des consentements (GTRGCL).
Ensuite, il faut ajouter en sortie de la transaction SVICLI, les paramètres de synchronisations "ID1GTRGL" (avec le champ NUMSVCLI), "ID1GTRGL" (avec le champ ETSSVCLI) et "TRCGTRGL" avec la constante "SVCLI".


      RGPD : Contrôle des données de la base d'archive

   Prise en compte dans les contrôles de durées légale avant anonymisation des données présentes sur la base d'archive.

      Explications

   Afin de réaliser des contrôles avant l'anonymisation d'une personne, il est nécessaire de contrôler qu'une donnée n'est pas inférieure à la durée légale.

   Comme ces durées sont particulièrement importantes, lors de l'archivage d'une écriture, commande de ventes ou d'achats, nous marquons pour cette personne qu'une donnée de la base d'archive empêche légalement d'anonymiser cette dernière.


      Transactions concernées (ou liste des modifications)

TIRGE - Traitement d'initialisation des exceptions (Transaction GTTRGE)
TCEX - Epuration écritures et/ou pièces (Transaction OCTCEX)
TPSV - Préparation de suppression des commandes (Transaction SVTPSV)
PCDA - Purge des demandes et des commandes d'achats (Transaction SAPCDA)
GTRGE - Exceptions de durées légales de conservation (Transaction GTIRGE)


      Mise en place

   Lors de la mise en place du module RGPD, il faut lancer une première fois le traitement d'initialisation des exceptions (TIRGE) sur la base de production, en précisant le nom de la base d'archive où les données doivent être contrôlées.

   Ensuite lors des différents traitements d'archivage, les exceptions seront mise à jour par ces derniers.


      RGPD : Traitement d'anonymisation par liste

   Il est possible de traiter l'anonymisation de plusieurs personnes en constituant au préalable des listes.

      Explications

   Afin de réaliser l'anonymisation de plusieurs personnes, il est possible de lancer l'anonymisation suivant différentes listes (Tiers, Clients, Fournisseurs ou Contacts).


      Transactions concernées (ou liste des modifications)

TLRGPD - Anonymisation par liste (Transaction GTTLRGPD)


      Traçabilité des modifications historisées

   Une consultation permettant de visualiser les informations modifiées pour une donnée est disponible.

      Transactions concernées (ou liste des modifications)

CTDEC - Consultation des traces (Transaction GTCTDEC)


      Mise en place

   Depuis une gestion concernée par les traces, il est possible de consulter les différentes modifications réalisées sur les colonnes tracées, en appelant en transaction synchronisé la "Consultation des traces".


      QIN - XLinks

   Transport par export / import d'une interface

      Explications

   En H4_01, une fonctionnalité d'export était proposée mais pas son pendant : l'import. Ce manque est désormais comblé avec la mise à disposition d'un bouton dédié dans le gestionnaire d'interfaces qui permet le chargement d'un fichier export dans l'environnement courant.
Les fichiers issus d'un export d'interface portent l'extension .qetz. Pour les importer dans l'environnement courant :
- Se rendre dans le gestionnaire d'interfaces ;
- Dans la barre d'outils supérieure, activer le bouton d'upload ;
- Choisir le fichier à importer puis valider ;
A l'issu de cette action, l'interface ainsi que son mnémonique, transaction, traitement et critères de soumission est chargée dans l'environnement courant


      Transactions concernées

Sans objet


      Mise en place

   Disponible dans le concepteur dès passage de la release H5.01.


      QIN - XLinks

   Mise à disposition des méthodes d'extension permettant de gérer des fichiers depuis les directives

      Explications

   La librairie "Files" a été ajoutée au module. Elle permet de créer des fichiers, de les copier, de les supprimer, de les lire ou les compresser.

   


Ecrire des fichiers

Sur le principe, nous travaillons avec des objets de la classe FileHandle qui constituent le point d'accès privilégié pour réaliser la lecture écriture de fichiers.

   Pour créer un objet de ce type, utiliser l'une des macros permettant d'ouvrir un fichier en écriture :

   "openParametrizedPatternForWrite" si le fichier à lire est présent sur un chemin Cegid XRP Ultimate (GPTH) ;
Exemple de code généré :
FileHandle fileHandle1 = new FileHandle(this);
fileHandle1.openParametrizedPatternForWrite("result-parametrized.txt", "ETL", "UTF-8");

   "openExplicitFileForWrite" si le chemin du fichier est connu et sera passé dans son entier.
Exemple de code généré :
FileHandle fileHandle2 = new FileHandle(this);
fileHandle2.openExplicitPatternForWrite("/tmp/result-explicit.txt", "UTF-8");

   "openETLPatternForWrite" si le fichier généré doit être créé dans le répertoire standard XLink/HTML5.
Exemple de code généré :
FileHandle fileHandle3 = new FileHandle(this);
fileHandle3.openETLPatternForWrite("${id}/result-standard.txt", "UTF-8");

   Une fois le fichier ouvert, utiliser la méthode "write" de l'objet FileHandle pour envoyer du texte dans le fichier.

   Exemple :
fileHandle1.write("TEXT-1");

   Il est évidement possible de faire appel autant de fois que voulu à cette méthode pour générer le contenu souhaité.
Exemple : fileHandle3.writeln("List of available applications");
forEachData(data in "/Query/R") {
  fileHandle3.writeln(data.attr("numgtapp"));
}

   Lorsque le contenu est intégralement généré, fermer enfin le fichier en faisant explicitement appel à la méthode "close" de l'objet FileHandle.
Exemple :
fileHandle1.close();

   


Lire des fichiers

   Symétriquement à l'écriture dans un fichier, les macros "openParametrizedPatternForRead", "openExplicitPatternForRead" et "openETLPatternForRead" vont permettre de générer les syntaxe d'appel à l'ouverture d'un fichier en écriture.

   Exemple :
FileHandle fileHandle4 = new FileHandle(this);
fileHandle4.openETLPatternForRead("${id}/result-standard.txt", "UTF-8");

   La méthode "readLine" permet ensuite de parcourir les lignes composant le fichier ouvert.

   Exemple :
FileHandle fileHandle4 = new FileHandle(this);
fileHandle4.openETLPatternForRead("${id}/result-standard.txt", "UTF-8");
String line = fileHandle4.readLine();
while (line != null) {
  report("$1", line);
  line = fileHandle4.readLine();
}
fileHandle4.close();


      Transactions concernées

Sans objet


      Mise en place

   Pour que ces méthodes soient proposées par le concepteur pour une interface, il faut procéder à la montée de version du moteur embarqué de celle-ci.


      QIN - XLinks

   Mise à disposition des méthodes d'extension permettant de gérer des mails depuis les directives

      Explications

   La librairie "Mails" a été mise à disposition.

   Sur le principe, commencer à décrire le mail à envoyer grâce à la classe XTMail. Pour cela, fait appel à la macro "newMail" qui génèrera un code ressemblant à celui exposé ci-après :

   Exemple :
XTMail mail = new XTMail("j.martin@zzz.com","XLINK@cegid.com");

   Nous créons ici un objet de la classe XTMail, à qui il est fourni au titre de destinataire l'adresse "j.martin@zzz.com", et au titre d'émetteur l'adresse "XLINK@cegid.com".

   Compléter ensuite les propriétés du mail :
Le corps du message : mail.setMessage("Hello world");
L'objet du message : mail.setObject("DEMO");

   Enfin, envoyer le message :
xtMails.sendMail(mail);


      Transactions concernées

Sans objet


      Mise en place

   Mise à disposition des méthodes d'extension permettant de gérer des fichiers depuis les directives


      QIN - XLinks

   Duplication d'une interface existante

      Explications

   Il est désormais possible de créer une interface à partir d'une autre. Pour cela, dans la fenêtre de création, sélectionner l'onglet "More..." et cocher la case "Create from model".

   Choisir ensuite l'interface source et valider.

   La nouvelle interface sera créée avec l'identifiant demandé, mais reprendra le flux et le code des directives de l'interface source.


      Transactions concernées

Sans objet


      Mise en place

   Disponible dans le concepteur dès le passage de release.


      QIN - XLinks

   Capacité à compresser un fichier généré en sortie d'une transformation

      Explications

   La case à cocher "Compress" a été mise à disposition dans les options des jeux de données de type fichier. Elle permet de disposer en fin d'exécution de l'interface d'une archive contenant le fichier compressé. L'archive porte le nom du fichier, suivi de l'extension .zip. Elle est accessible depuis les fichiers liés au travail dans CJOBU (GTCFIJ).


      Transactions concernées

Sans objet


      Mise en place

   Effectuer une montée de version du moteur embarqué de l'interface.


      QIN - XLinks

   Gestion des Byte Order Mark (BOM) dans les fichiers générés

      Explications

    L'indicateur d'ordre des octets ou BOM (byte order mark) est une donnée généralement situé au début de certains fichiers texte qui donne des précisions quant au jeu de caractère utilisé.

   Il est possible de demander à XLinks de générer des fichiers UTF-8 ou UTF-16 marqué de ces séquences en positionnant le jeu de caractère "UTF-8 with BOM", ou "UTF-16BE" ou "UTF-16LE" dans les options.

   A la lecture, XLinks détecte désormais automatiquement ces séquences lorsqu'elles sont présentes et en déduit le jeu de caractères du fichier lu.


      Transactions concernées

Sans objet


      Mise en place

   Pour bénéficier de cette fonctionnalité dans une interface donnée, procéder à une mise à jour de son moteur embarqué.


      QIN - XLinks

   Proposition des méthodes et attributs possibles dans l'éditeur de directives

      Explications

   Lorsque nous travaillons dans l'éditeur de directives, il est maintenant possible de consulter la liste des attributs, variables, paramètres de fonction et méthodes disponibles à l'endroit où nous nous trouvons.

   Pour cela, activer la séquence de touches "CTRL + espace". Une fenêtre modale s'affiche alors avec la liste des propositions.

   Exemple :
Une variable "version" de type String a été déclarée en amont. Je saisis le mot "version." puis active la séquence de touche CTRL + espace. La liste des méthodes disponibles pour la classe String m'est alors proposée.


      Transactions concernées

Sans objet


      Mise en place

   Disponible dans le concepteur dès le passage de release.


   Modifications


      RGPD : Extraction des données personnelles

   L'extraction des données personnelles peut désormais être directement envoyée par mail.

      Explications

   Lors de l'extraction il est possible d'envoyer les fichiers générés à une ou plusieurs adresses e-mail en le précisant à la soumission.


      Transactions concernées (ou liste des modifications)

ERGPDE - Extraction des données personnelles (Transaction GTERGPDE)


      QIN - XLinks

   Modification de la façon de définir des champs positionnés / délimités

      Explications

   


Connecteur délimités

   Pour mémoire, en écriture, il est   possible de forcer le connecteur à placer les valeurs des attributs qui lui sont adressées dans des champs bien précis du fichier généré.

   Exemple : le flux reçu comporte des éléments de balise "R", possédant tous des attributs "numoette", "noroette" et "ucroette". Par défaut, le connecteur va placer les valeurs de ces attributs dans l'ordre dans lequel il les reçoit. Dans le fichier de sortie, chaque enregistrement aura donc un premier champ contenant la valeur reçue pour l'attribut "numoette", puis un second champ contenant la valeur reçue pour "noroette" et ainsi de suite.

   Le connecteur peut demander à ce qu'un autre ordre soit mis en place. Pour cela, il faudra se rendre dans les propriétés, cocher la case "Use specific fields" et décrire l'ordre attendu.

   C'est la façon dont cette description est fournie qui a changé. En effet, le concepteur proposait jusque-là une description sous la forme d'une table. Elle a été remplacée par une saisie libre, plus facile à utiliser.

   Symétriquement, en lecture, le nom à donner aux attributs du flux est par défaut déduit de la première ligne de données. Ce nom peut être changé et forcé via la case à cocher "Use specific fields". Il suffit alors de décrire le nom attendu pour chaque attribut. cela se fait désormais aussi par une saisie libre.

   


Connecteur fixes

Pour mémoire, en écriture comme en lecture, il est nécessaire de décrire la structure des enregistrements. Dans la précédente version, la configuration des champs se faisait par l'activation de boutons "Add" et "Remove" puis par la saisie des noms et position dans des zones dédiées. Cette mécanique a été remplacée par une saisie directe s'appuyant sur une syntaxe simple :

   balise = taille [, balise = taille]

   Exemple :
numoette=10,noroette=20


      Transactions concernées (ou liste des modifications)

Sans objet


      Mise en place

   Cette fonctionnalité est disponible dans le concepteur dès le passage de release.


   Suppressions


      QIN - XLinks

   Obsolescence des mnémoniques servant à alimenter les sas

   Depuis de nombreuses années, des traitements sont proposés pour permettre d'alimenter les tables sas à partir de fichiers texte.

   Ces traitements s'appuient sur une version désormais obsolète de XLinks et nous déconseillons leur utilisation.

   Pour la release H5.01, un traitement substitutif unique est proposé : TODL. Vous retrouverez dans l'aide en ligne les indications qui vous permettront de le mettre en place.



      QIN - XLinks

   Version Xalan du module / Fin de support prévue pour la I1_01

   Le module a connu à travers son existence 3 grandes versions.

   La version originelle du module s'appuyant sur le moteur Xalan ne sera plus supportée à partir de la release I1_01.

   Il est fortement recommandé de procéder à la migration des interfaces fonctionnant avec ce moteur vers une version plus récente.

   Pour mémoire, ces interfaces se reconnaissent car elles utilisent des fichiers aux extensions ".seq" et ".xsl".


   Les interfaces utilisant le moteur Xalan continuent à fonctionner en H5_01 et continueront à fonctionner en I1_01. Dans cette dernière release toutefois, aucune maintenance ne sera plus assurée.


Structures de données


   Créations de tables


      GTRGR - Référentiels des données personnelles


      GTRGO - Contexte des données personnelles


      GTRGZ - Colonnes de la table dans le contexte


      GTRGC - Consentements


      GTRGL - Liens du consentement


      GTRGD - Durées légales de conservation


      GTRGE - Exceptions de durées légales de conservation