Documentation PLUGIN DE CONFIGURATIONS
Breadcrumbs

Libellés HTML


      Introduction

      Le moteur de configuration commerciale comprend un outil de génération des libellés.

      A la sortie de chaque contexte, un libellé propre peut être créé par la concaténation de chaînes de caractères.

      Chaque chaine comprend un préfixe, le contenu d’une variable (c'est-à-dire la réponse à une question du contexte sous forme de valeur brute ou de désignation) et un suffixe.

      att_9_for_362905987.png

      Tous ces libellés peuvent ensuite alimenter les variables de la ligne de commande commerciale pour être exploitées dans les écrans utilisateur et les éditions.

      Pour les documents édités via Crystal Reports, il est possible de définir dans le libellé des codes de mise en forme qui seront traduits dans le document Crystal sous forme de sauts de ligne, tabulations, attributs de caractères (couleur, gras, italique et taille de police).

      Une prévisualisation de cette mise en forme est également disponible dans Diapason dans l’assistant du configurateur notamment.

      Construction des libellés

      Pour des informations complètes, se référer à la documentation du moteur de configuration commerciale.

      Accès STANDARD à la Gestion des Libellés

      Maintenance Configuration Commerciale -> Maintenance du détail du scénario -> Choix du scénario -> Actions -> Gestion des Contextes -> Choix du contexte -> Gestion des libellés

      att_10_for_362905987.png
      att_11_for_362905987.png

      Les libellés étant générés à la sortie de chaque contexte, leur conception se fait contexte par contexte.

      att_14_for_362905987.png

      N.B. : les variables alimentées dans des contextes père peuvent être disponibles pour les libellés des contextes fils (par exemple le type de fermeture est disponible dans le contexte Châssis mais aussi dans les contextes Fermeture et Manœuvre) toutefois, leur désignation (DES) n’est plus disponible.

      Accès direct à la Gestion des Libellés

      Règles Données Commerciales -> Maintenance des Libellés

      att_12_for_362905987.png

      Choisir le scénario à paramétrer et laisser le champ contexte vide.

      Sélectionner éventuellement un type de désignation à gérer.

      att_2_for_362905987.png

      Ainsi, le tableur présente directement l’ensemble des composantes de libellés pour tout le scénario.

      att_18_for_362905987.png

      Types de désignations

      On peut générer plusieurs types de désignations (par exemple à usage interne et à usage externe) qui vont chacun pouvoir alimenter une variable différente afin d’être exploités à convenance.

      A partir de la gestion des libellés -> Actions -> Gestion des types de désignation

      att_3_for_362905987.png
      att_4_for_362905987.png

      Dans cet exemple, il est prévu d’alimenter deux variables ‘standard’ du moteur de configuration (VBA.IScDesCtxLong & VBA.IScDesCtxCourt) pour une désignation Chantier et une désignation Diffus.

      Le moteur génère également automatiquement les IT correspondantes de type IScLib_TypeDeDésignation

      Conception d’un libellé

      Il faut insérer ligne après ligne les composantes du libellé à générer pour le contexte :

      att_5_for_362905987.png
      • Sélectionner un type de désignation

      • Saisir un numéro d’ordre qui, à défaut, pilotera l’ordre de concaténation des composantes et l’affichage dans le tableur

      • Saisir les trois niveaux de tri avancé (voir plus loin)

      • Sélectionner la variable à présenter (une par composante)

      • Saisir un préfixe (chaîne de caractère précédent la variable)

      • Sélectionner si on doit afficher la valeur (référence) contenue dans la variable ou la désignation associée (par exemple VAL : GTI ou DES : Gauche tirant vue ferrage)

      • Saisir un suffixe.

      • Saisir un commentaire (facultatif)

      att_6_for_362905987.png

      L’exemple précédent génèrera deux composantes qui donneraient pour résultat (avec VBA.s_gammecom = ClaraTrans et VBA.s_couleur = blanc) :

      Châssis ClaraTrans blanc

      Classement des composantes de libellés

      Afin de désigner correctement un article il convient de classer les composantes de libellés générées pour les présenter dans un ordre logique.

      Colonne N° d’ordre originale Ordre de Priorité

      Initialement un champ numérique simple permet de classer les composantes de libellés sur une dimension.

      Colonnes de classement avancé Ordre de tri Sup 1 à 3

      Afin de donner plus de souplesse à la construction de la désignation et de s’affranchir de l’arborescence des contextes du scénario commercial, 3 colonnes ont été ajoutées.

      Ces colonnes de type caractère permettent de saisir des formules ou une valeur fixe.

      att_7_for_362905987.png

      N.B. : Dans tous les cas, le résultat doit être de type numérique.


      Ces informations sont ensuite stockées dans les 3 valeurs numériques des IT (Infos Techniques) libellés générés.

      att_8_for_362905987.png

      Ces valeurs peuvent ensuite être utilisées dans diverses requêtes pour classer les libellés ou composantes de libellés générés.

      Voir chapitre suivant.

      Utilisation des colonnes de classement avancé (nécessite les requêtes appropriées GCA.CdeLibIT et la GCQ.CdeLibIT pour affichage dans l’assistant).

      L’utilisation proposée est la suivante :

      • Première colonne : niveau pris en compte dans la branche des contextes générés

      • Deuxième colonne : ordre sur le niveau

      • Troisième colonne : ordre pour le contexte


      Pour bien expliquer le fonctionnement de ce triplet, prenons l’exemple de l’arborescence de modèles de contextes suivante :


      0 Ensemble

      1 Châssis

      2 Vantail

      3 Vitrage

      2 Fermeture


      La configuration pourrait donner l’arborescence suivante


      A Ensemble

      AA Châssis 1

      AAA Vantail 1

      AAAA Vitrage 1

      AAAB Vitrage 2

      AAAC Vitrage 3


      AAB Vantail 2

      AABA Vitrage 1

      AABB Vitrage 2


      AAC Fermeture


      AB Châssis 2

      ABA Vantail 1

      ABAA Vitrage 1

      ABAB Vitrage 2


      ABB Vantail 2

      ABBA Vitrage 1


      ABC Fermeture


      Si on souhaite générer un libellé du type suivant :


      Ensemble avec fermetures AAC et ABC

      Châssis 1 avec vitrages 1,2,3

      Vantail 1

      Vantail 2

      Châssis 2 avec vitrages 1, 2

      Vantail 1

      Vantail 2


      On peut paramétrer les composantes suivantes :

      Contexte

      Condition

      Libellé

      Ordre Tri 1

      Ordre Tri 2

      Ordre Tri 3

      Ensemble


      Ensemble

      0

      10

      10

      Châssis


      Châssis

      1

      10

      10

      Vantail



      3

      10

      10

      Vitrage

      Si premier vitrage

      avec vitrage

      1

      20

      10

      Vitrage

      Si nb vitrages > 1

      s

      1

      20

      20

      Vitrage


      N° de vitrage

      1

      20

      30

      Vitrage

      Si pas dernier vitrage

      ,

      1

      20

      40

      Fermeture

      Si première fermeture

      avec fermeture

      0

      20

      10

      Fermeture

      Si nb fermetures > 1

      s

      0

      20

      20

      Fermeture


      N° fermeture

      0

      20

      30

      Fermeture

      Si pas dernière fermeture

      et

      0

      20

      40

      Fermeture

      Si dernière fermeture

      Retour chariot

      0

      20

      50

      NB : la colonne n°1 permet de remonter une composante de libellé par rapport à la branche du contexte où il est généré. On ne peut pas descendre un libellé au niveau d’un contexte inférieur par ce biais. Par contre, on peut générer la composante sur un contexte inférieur puisque toutes les VBA des contextes supérieurs sont visibles sur un contexte.

      Codification HTML des attributs

      Afin de pouvoir structurer et mettre en valeur les désignations, il est proposé de codifier directement dans la désignation les attributs et comportement grâce aux balises HTML.

      Les balises sont délimitées par les caractères <Code>.

      La chaîne de caractère à formater doit être délimitée par une balise ouvrante (par exemple <b> pour gras (bold)) et d’une balise de fin </Code> comme par exemple </b>

      Les balises HTML suivantes sont prises en charge :

      • html

      • body

      • div (applique un saut de paragraphe)

      • tr (applique uniquement un saut de paragraphe, ne conserve pas la structure de colonnes d'une table)

      • span

      • font

      • p (applique un saut de paragraphe)

      • br (applique un saut de paragraphe)

      • h1 (applique un saut de paragraphe, met la police en gras et double la taille par défaut)

      • h2 (applique un saut de paragraphe, met la police en gras et multiplie la taille par défaut par 1,5)

      • h3 (applique un saut de paragraphe, met la police en gras et multiplie la taille par défaut par 9/8)

      • h4 (applique un saut de paragraphe, met la police en gras)

      • h5 (applique un saut de paragraphe, met la police en gras et multiplie la taille par défaut par 5/6)

      • h6 (applique un saut de paragraphe, met la police en gras et multiplie la taille par défaut par 5/8)

      • center

      • big (augmente la taille de la police de 2 points)

      • small (réduit la taille de la police de 2 si elle est au moins égale à 8)

      • b

      • i

      • s

      • strike

      • u


      Les attributs suivants sont pris en charge :

      • align

      • face

      • size

      • color

      • style

      • font-family

      • font-size

      • font-style

      • font-weight


      1. Cas particulier sur la Structure

        1. Tabulation code = <dd> ou @

        2. Retour chariot code = <br> ou |


      Attention : Les attributs de mise en forme des caractères sont valables pour toute la chaîne de caractères située après la balise ouvrante et tant que la balise fermante correspondante n’est pas trouvée même pour des composantes de libellés construites éventuellement

      Exemple de formatage de libellé :


      Libellé avant :

      Châssis de <b><i><font size = 5 color = ‘blue’ face = ‘Freestyle script’> type


      Variable :

      VBA.s_gammecom


      Valeur ou désignation :

      DES


      Libellé après :

      </font></i><b>avec<br><dd><font color = ‘red’>par exemple.</font>


      Donnera :

      Châssis de type SYM avec

      par exemple.

      Paramétrage de l’alimentation des variables de la ligne de commande commerciale

      La requête GCA.CdeLibIT traite les IT de composantes de libellés en fonction des clés de tri et génère deux formats de libellés par type de désignation (par exemple Libellé long et libellé court).


      Le format ‘clean’ est structuré (retour chariot et tabulations) et débarrassé de ses attributs HTML (pour affichage dans Diapason).

      Le format ‘brut’ est utilisable dans Crystal avec interprétation des codes HTML.

      Les désignations sont aussi coupées, si nécessaire, en 3 chaînes de 1022 caractères au maximum.


      Dans l’état actuel de la requête,

      VDL.DesComGen, VDL.DesComGen2 et VDL.DesComGen3 contiennent la désignation longue brute.

      VDL.DesComGenCrt contient la désignation courte.

      SDL.CdeLigDesArt, VDL.CdeLigDesArt2 et VDL.CdeLigDesArt3 contiennent la désignation longue sans attributs.

      VDL.CdeLigDesArtCrt contient la désignation courte sans attributs.


      N.B. : la GCA doit être branchée sur les clients.

      Affichage du libellé mis en forme dans l’assistant du configurateur

      La requête GCQ.CdeLibIT génère la désignation à partir des IT de composantes de libellés.

      Celle-ci doit être branchée sur l’onglet Zone d’assistance du scénario en règle d’affichage.

      Cocher le Format HTML pour interpréter les attributs s’il y en a.

      att_13_for_362905987.png

      Programmation Crystal

      Mise en forme du champ

      Chaque champ de désignation est paramétré comme suit :

      Format par défaut souhaité (si absence de balises html)

      Le paragraphe doit utiliser l’interprétation HTML

      att_15_for_362905987.png

      N.B. : avec l’interprétation HTML, les codes Chr() ne sont pas interprétés mais sont remplacés par un espace.

      Structuration du champ

      Retour à la ligne

      Le retour à la ligne est interprété automatiquement par la balise <br> : pas de paramétrage particulier.

      Tabulation

      La notion de tabulation en tant que telle n’existe pas dans la codification HTML. Les tabulations sont en général pilotées par des instructions CSS non disponibles pour Crystal.

      Dans le cas du paramétrage en exemple, les tabulations codifiées <dd> ou @ sont simplement remplacées par un espacement fixe indépendant de la police ou de la taille des caractères grâce à la formule suivante :

      Replace(Replace(TrimLeft ({@DesComGen}),'@','<font face = "arial" size = 1 color = white>'& ReplicateString ('-', 10) & '</font>'),'|','<br>')

      Exemple de paramétrage

      Tableur des libellés

      att_19_for_362905987.png
      att_20_for_362905987.png
      att_16_for_362905987.png

      Assistant du scénario

      Résultat dans le scenario :

      att_17_for_362905987.png

      Interprétation Crystal Report (ARC)

      att_21_for_362905987.png