Gonexa University

Formation Avancée


La solution Gonexa Doc est la solution historique de Gonexa permettant de générer un document à partir d'un modèle au format .docx .xlsx .pptx .pdf

Les extensions de balises

Les caractères compris dans la chaine de format Date est interprêtée comme une chaine de format et d'heure personnalisée. Ajoutez un spécificateur standard pour définir l'affichage de l'information souhaitée.

Formater la date & les nombres

Le format des dates peut être important pour faciliter la lecture du document

Prérequis de la formation

  • Installer paramétrer et savoir créer un modèle de document
  • Ajouter une balise à l'aide de l'assistant

📅 Personnaliser le format Date

CHOIX DES EXTENSIONS

SPÉCIFICATEUR DE FORMAT

DESCRIPTION

Exemple

{!Etiquette|NomAPI(d)}

Modèle de date courte

01/09/2023

{!Etiquette|NomAPI(D)}

Modèle de date longue

Lundi 10 septembre 2023

{!Etiquette|NomAPI(f)}

Modèle de date longue + heure courte

Lundi 10 septembre 2023 13:30

{!Etiquette|NomAPI(F)}

Modèle de date longue + heure longue

Lundi 10 septembre 2023 13:30:50

{!Etiquette|NomAPI(g)}

Modèle de date courte + heure courte

10/09/2023 13:30:50

{!Etiquette|NomAPI(G)}

Modèle de date courte + heure courte

10/09/2023 13:30

{!Etiquette|NomAPI(M)}

Modèle de mois + jour

10 septembre

{!Etiquette|NomAPI(R)}

Modèle RFC1123

Lundi, 10 Septembre 2023 13:30:3

{!Etiquette|NomAPI(T)}

Modèle d'heure longue

13:30:50

{!Etiquette|NomAPI(t)}

Modèle d'heure court

13:30

{!Etiquette|NomAPI(Y)}

Modèle de date + mois

septembre 2023

{!Etiquette|NomAPI(dd MMMM yyyy)}

Vous pouvez créer des balises complexes avec les spécificateurs de formats suivants sous la forme {!obj|champ(dd MMMM yyyy)} par exemple. Vous pouvez également choisir d'utiliser les tirets ou les "/" entre chaque format de date.

01 09 2023

{!Etiquette|NomAPI(d)}

Jour du mois, de 1 à 31

1

{!Etiquette|NomAPI(dddd)}

Nom complet du jour de la semaine

lundi

{!Etiquette|NomAPI(yyyy)}

Année à 4 chiffres

2023

🔢 Personnaliser le format Nombre

GENERER UN FORMAT NOMBRE

SPÉCIFICATEUR DE FORMAT

TYPE DE CHAMP

Exemple

{!Etiquette|NomAPI(C4)}

DEVISE

123,45 €

{!Etiquette|NomAPI(D)}
Facultatif : spécificateur de précision
{!Etiquette|NomAPI(D6)}

DÉCIMAL

1234
-001234

{!Etiquette|NomAPI(F)}
Facultatif : spécificateur de précision
{!Etiquette|NomAPI(F4)}

VIRGULE FIXE

1234,56
1234,5600

{!Etiquette|NomAPI(P)}
Facultatif : spécificateur de précision
{!Etiquette|NomAPI(P4)}

POURCENTAGE

100,00 %
-39,7 %

{!Etiquette|NomAPI(N)}
Facultatif : nombre souhaité de décimales
{!Etiquette|NomAPI(N3)}

NOMBRE

1,234567
1,234

Pour aller plus loin, consultez l'article suivant : https://learn.microsoft.com/fr-fr/dotnet/standard/base-types/standard-date-and-time-format-strings

Faire des calculs

Faire un sous-total de produit ou tout simplement un compte du nombre de produit

⚠️ L'utilisation des extensions nécessite d'être sur une version du package ultérieur à la version 1.7. Veuillez mettre à jour le package via l'AppExchange, le cas échéant.

Utiliser les extensions de balises dans un tableau

Faire des sommes avec la balise "SUM"

Additionnez les montants d’un même objet enfant, d’un groupement voire même d’une information cachée et cumulez les multi devises. Evitez ainsi les champs de type formule dans Salesforce et affichez facilement des sous totaux.

  • Après avoir paramétré un objet enfant dans Salesforce, ouvert l'assistant et placé votre balise dans votre modèle de document, ajoutez l'extension (SUM) dans votre balise pour additionner les devises ou quantités : Ex. {!Produit|Amount(SUM)}
  • Placez la nouvelle balise à l’endroit de votre page souhaité en suivant l'une des deux options.

    Configuration Word vs résultat à la génération

Limites
  • Il est possible d’afficher une balise SUM toute seule si elle se trouve en dehors d'un tableau Word (option 2)
  • Une balise SUM est impérativement une balise sur un objet enfant
  • La gestion des mutli devises est prise en compte.
Compter le nombre d'enregistrements dans le tableau

Faîtes le cumul des enregistrements de l'objet enfant pour afficher le nombre de ligne d'un tableau ou qui répondent à un critère renseigné dans Salesforce.

  • Après avoir paramétré un objet enfant dans Salesforce, ouvrez l'assistant.
  • Accédez aux balises de l'objet enfant souhaité.
  • Scrollez la liste des balises disponibles jusqu'en bas et accédez à la balise "Nombre d'enregistrements"
  • Cliquez dessus pour la copier et collez-là à l’endroit de votre page souhaité.
Limites
  • Il est possible d’afficher une balise COUNT dans un tableau ou en dehors d'un tableau.
  • Une balise COUNT est impérativement une balise sur un objet enfant.

    Additionnez les montants d’un même objet enfant, d’un groupement voire même d’une information cachée et cumulez les multi devises. Evitez ainsi les champs de type formule dans Salesforce et affichez facilement des sous totaux.

Gérer les champs "Rich Text"

La mise en page Salesforce est appliquée par défaut au contenu d'un champ rich text placé dans un document Word à la génération. Ajoutez une ou plusieurs extensions de balise pour modifier ces paramètres.

Pour appliquer le format appliqué sur la balise dans le modèle word à la place du format utilisé dans le champ Salesforce, il faudra utiliser une extension de balise pour permettre de choisir exactement le bon format.

Il existe 5 types de formats que l'on peut modifier :
"f" pour "font" = police
"s" pour "size" = taille
"c" pour color = couleur
"t" pour "type form" = forme de caractère,
"i" pour "indentation" = indentation

  • Depuis l'assistant, accédez à la balise Rich Text à odifier
  • Cliquez sur les 3 petits points à droite
  • Cliquez sur "Formater le richtext"
  • Sélectionnez la mise en forme à prendre du Word
  • Votre balise est copiée et pourra être collée dans votre modèle avec le format suivant :Ex : {!Account|Description(HTML,f,s)} pour un cas où je souhaite appliquer la police et la taille qui est définie dans le modèle

Gérer les images

Assurez vous d'afficher l'image exactement comme vous le souhaitez

Il est possible d’afficher des images dynamiques à la génération d’un document. Les images peuvent être directement stockées dans des champs de type zone de texte enrichi ou URL.

Nous recommandons néanmoins de stocker l’image en tant que fichier Salesforce, puis de stocker l’ID de la version de contenu (Content Version) sur l’enregistrement

  • Dans votre modèle de document, ouvrez l’assistant pour accéder à l’objet souhaité
  • Recherchez le champ zone de texte enrichi ou URL qui contient l’image, ou encore le champ texte contenant l’ID de la version de contenu
  • Cliquez sur les 3 petits points "..." puis sur Configurer l’image
  • 💡 Vous pouvez définir une taille personnalisée de l’image en modifiant la largeur et la hauteur, ou conserver la taille d’origine
  • Copiez puis collez la balise dans votre docume
  • La balise contient alors l’extension de balise img indiquant qu’il s’agit d’une image
  • Par exemple :

    {!Account|Champtexte__c(img)} dans le cas où vous conservez la taille d’origine

    {!Account|Champtexte__c(img,w=30,h=15)} dans le cas où vous définissez une taille personnalisée, avec une largeur de 30 et une hauteur de 15
Chargement et test du modèle
  • Retournez dans Salesforce et chargez le modèle Word avec la balise image en cliquant sur "Charger version"
  • Assurez vous d'avoir un enregistrement de test avec une image

Affichage partiel d'un champ texte

Choisissez le nombre de caractère d'un champ

La fonctionnalité “Affichage partiel” vous sera grandement utile pour tronquer un champ de type texte.

  • Si vous souhaitez afficher seulement une partie du champ dont la valeur renvoie 5A123 sur le document, pour afficher 5A d’une part et afficher 123 d’autres part, à un autre endroit sur le document.
  • Dans ce cas, il faudra ajouter à la première balise (0,2), le zéro signifiant que nous partons de la gauche et le deux que nous prenons les deux premiers chiffres. Et (2,3) à la seconde balise, pour indiquer que nous souhaitons prendre les 3 derniers chiffres à partir du 2ème caractère.


    Nous utiliserons la balise {!obj|champ(0,2)} = pour renvoyer 5Aet la balise {!obj|champ(2,3)} pour renvoyer 123

⚠️ Attention
  • Cependant, cette fonctionnalité est limitée aux champs de texte ne contenant que des lettres ou des chiffres, et dont le nombre total de caractères est connu
  • Ex : un champ de code produit qui contient toujours 5 caractères.