Éditeur de modèles de documents WYSIWYG avec publipostage pour Grist.
Fonctionnalités :
Éditeur riche** (Jodit Editor, licence MIT) avec variables Grist {{nom_colonne}}
Import Word (.docx)** avec préservation des images et de la mise en page (Mammoth.js)
Gestion multi-modèles** nommés, stockés dans les options du widget Grist (persistant, partagé)
Prévisualisation** au format A4/Letter avec découpage visuel des pages
Sauts de page manuels** — marqueur visible dans l’éditeur, invisible dans le PDF
Génération PDF** avec coupures intelligentes par bloc (jsPDF + html2canvas)
Annulation PDF** avec sauvegarde partielle
Interface bilingue** FR/EN
Modèles globaux** — non liés à une table spécifique, réutilisables
Intégrer le widget Document Template dans Grist
1. Ajouter un widget personnalisé
Ouvrez votre document Grist
Cliquez sur « Ajouter nouveau » (bouton vert en haut à gauche)
Choisissez « Ajouter un widget à la page »
Sélectionnez le type « Personnalisée »
Cliquez sur « Ajouter à la page »
2. Configurer l’URL
Dans le panneau de droite, cliquez sur l’onglet « Widget »
Bonjour
merci de votre travail
mais j’ai u soucis.
exemple j’ai des colonnes qui possedent des données
admettons des prenoms « Bruno »
quand je met {{Prenom}} le document m’affiche un chiffre et pas le texte Bruno
que dois je faire pour afficher « Bruno »?
si pour une même donnée, je veux afficher plusieurs lignes est ce possible?
exemple à la date du 16/02/26, il y a trois lignes qui correspondent et j’aimerai afficher
les 3 prenoms correspondants
ligne par ligne ou dans un tableau par exemple
Merci de votre retour mais il y a encore un dysfonctionnement
si je tape manuellement {{Prenom.Prenom}} il m’affiche « {{Prenom.Prenom}} »
si je clique sur varibla disponible {{Prenom}} impossible de rajouter ".Prenom}} à l’interieur
POUR le tableau en boucle
il m’affiche les numeros des enregistrements et si je met {{Prenom.Prenom}}
il m’affiche « {{Prenom.Prenom}} »
en fait pour les elements du tableau il y a la possibilité d ecrire à gauche au milieu et à droite
il faudrait la possibilité d ecrire horizontalement ou verticalement (quand un titre est long et que l’element de reponse est court ca evite d 'avoir une colonne trop large)
une derniere demande
quand on crée le tableau avec boucle
on doit choisir des options
il faudrait tout simplement que cela affiche les éléments suivants un autre choix
par exemple dans mon cas j’ai une vue FJS (by date by DUMZ)
cela affiche les lignes en fonction de la date et DUMZ dans la VUE FJS (et affiche autant de ligne que ça correspond à la date et DUMZ
il serait bien que votre tableau soit tout simplement relié.
on crée le tableau avec boucle avec les {{}} sans option ou ne serait que relié à une VUE (dans mon cas FJS by date by DUMZ)
juste une derniere information, c’est plutot relié le widget à une vue filtrée qu’il faudrait tout simplement
pouvoir choisir quelle vue afficher
du coup on n’aurait pas vraiment besoin de filtre. car si on est plusieurs service sur la même base il faut creer un filtre pour chaque
alors que le relier à une vue déjà filtrée ça simplifie l’affichage
L’API Grist ne fournit pas de méthode pour lister les vues disponibles (grist.docApi.listViews() n’existe pas). Le widget ne peut donc pas afficher un sélecteur de vues directement. Sauf erreur de ma part.
En revanche, quand le widget est configuré avec « Sélectionner par » dans les options Grist (panneau de droite), il reçoit automatiquement les données filtrées de la vue liée. C’est exactement ce que fait l’option « Lié à la vue (toutes les lignes) » que j’ai ajoutée.
Vous pouvez maintenant créer un tableau lié à une vue filtrée existante sans avoir besoin de configurer « Sélectionner par » :
Cliquez sur « Tableau avec boucle »
Choisir « Lié à une vue filtrée »
Sélectionnez la vue dans la liste (les vues avec filtres ont )
Le tableau affichera uniquement les lignes correspondant aux filtres de cette vue
Bouton « Actualiser »
Dans l’onglet Prévisualisation , un bouton « 🔄 Actualiser » permet de recharger les filtres sans rafraîchir la page. Utile quand vous modifiez les filtres d’une vue.
Résumé des 3 options de tableau :
Lié à la vue courante : Utilisez « Sélectionner par » (temps réel)
Lié à une vue filtrée : Sélectionnez une vue existante avec ses filtres sauvegardés
Avec filtre manuel : Filtrez par colonne/valeur directement
En résumé, on a plus besoin d’avoir toutes les pages de vue avec le widget template sur la même page.
Une question, je ne suis pas certain de comprendre comment faire appel à une variable dans une autre table, par exemple :
J’ai deux tables : Facture et Facture_details
Je souhaite afficher : La variable « Nom » dans la table « Facture » et différentes variables, en boucle, de la table facture_details.
J’arrive à créer la boucle, mais je n’arrive pas à récupérer la variable « Nom », comment puis-je procéder ?