SymbifoxGuide d'utilisation English

Partie 7 · Plateforme, hébergement et intelligence artificielle

Forge (personnalisation sans code)

Ajouter des champs, des boutons compteurs, des valeurs par défaut et des filtres partagés aux formulaires de Symbifox, sans écrire de code.

Symbifox 18.0 (catalogue de septembre 2026) · Modules : Forge · Révisé le 2026-09-12

Forge ajoute aux formulaires de Symbifox les champs qui manquent à votre métier : un numéro de membre sur un contact, une date de renouvellement, un statut interne sur un dossier. Tout se fait au point-et-clic, sans module à écrire et sans redémarrage. L'application s'adresse à la personne qui administre Symbifox et connaît bien ses écrans, pas à toute l'équipe. Les ajouts restent en place quand Symbifox se met à jour.

Vue d'ensemble#

Forge reste volontairement étroit : il ajoute des champs à des formulaires existants, et rien d'autre. Il ne crée pas de nouveau type de fiche, ne dessine pas de rapport et ne remplace pas un développement sur mesure.

Cinq objets forment l'application.

  • Champ personnalisé : un champ ajouté à un type de fiche existant. Texte, nombre, montant, case à cocher, date, liste de choix, lien vers une autre fiche, fichier joint ou image.
  • Injection de vue : l'endroit où le champ paraît. Un champ peut s'afficher dans le formulaire, dans la liste, sur la carte et dans les filtres de recherche.
  • Bouton stat : un des boutons d'accès rapide en haut d'un formulaire, qui affiche un compte et mène aux fiches comptées.
  • Valeur par défaut : la valeur qu'un champ prend à la création, pour une personne ou pour toute la société.
  • Filtre partagé : une recherche enregistrée offerte à toute l'équipe plutôt qu'à son auteur seul.

L'écran Ajouter un champ personnalisé est le point d'entrée de l'application.

Écran Ajouter un champ personnalisé, avec le modèle, le libellé, le type de champ et les cases d'affichage dans les vues
Ajouter un champ personnalisé

Ce qui distingue l'approche : Forge conserve la description de chaque ajout, puis reconstruit ce qu'il faut si une mise à jour de Symbifox efface le montage sous-jacent. Les données saisies dans un champ personnalisé ne sont jamais touchées.

Configuration#

Accès et droits#

Deux groupes existent, et l'entrée Forge du menu principal n'apparaît qu'au premier.

Groupe Ce qu'il ouvre
Forge: Administrator Créer des champs, des boutons compteurs et des injections sur les types de fiche ordinaires.
Forge: Bypass model lock Lever le verrou et opérer sur les types de fiche protégés. À réserver à l'administration système.

Certains types de fiche sont protégés par défaut : les comptes et les groupes d'utilisateurs, les réglages, les pièces jointes, les actions, les règles de sécurité, la comptabilité, les paiements et la messagerie interne. Forge refuse d'y toucher tant que le second groupe n'est pas accordé.

Paramètres#

L'application n'a pas de page de réglages. Tout se passe dans ses écrans.

Données de base#

Rien à créer d'avance. Sachez toutefois sur quel formulaire vous voulez intervenir et à côté de quel champ existant votre ajout doit paraître : l'écran de création demande ce point d'ancrage.

Premiers pas#

Ce parcours ajoute un champ « Niveau de service » à la fiche des contacts de la démo Boréal, et le rend visible dans la liste.

  1. Allez à ForgeAjouter un champ personnalisé.
  2. Dans Model, choisissez « Contact ».
  3. Dans Field label, saisissez « Niveau de service ». Le nom technique se remplit tout seul.
  4. Dans Field Type, choisissez la liste de choix, puis saisissez une option par ligne dans Selection values.
  5. Laissez Show in form view coché et saisissez le champ d'ancrage dans Place after field.
  6. Cochez Show in list view et Show in search filters.
  7. Sélectionnez Enregistrer.

Le champ est créé, les vues sont retouchées, et la fiche de création se range dans ForgeChamps personnalisés. Ouvrez n'importe quel contact : le champ est là, utilisable tout de suite.

Tâches courantes#

Ajouter un champ personnalisé#

C'est le geste principal de l'application, et il suit toujours la même trame.

  1. Allez à ForgeAjouter un champ personnalisé.
  2. Choisissez le Model, c'est-à-dire le type de fiche à enrichir.
  3. Saisissez le Field label et choisissez le Field Type.
  4. Facultatif : saisissez un texte dans Help text shown to users, qui paraîtra en infobulle.
  5. Cochez Required si le champ doit être rempli.
  6. Choisissez où le champ paraît, avec Show in form view, Show in list view, Show in kanban card et Show in search filters.
  7. Sélectionnez Enregistrer.

Le champ apparaît immédiatement sur les écrans choisis, pour toutes les personnes qui y ont accès. Le bouton Ignorer abandonne la création.

Ajouter un champ qui lit une autre fiche#

Un champ peut afficher une information qui vit ailleurs, sans double saisie : le pays du client sur une commande, par exemple.

  1. Allez à ForgeAjouter un champ personnalisé.
  2. Choisissez le Model et saisissez le Field label.
  3. Cochez Computed from another field.
  4. Dans Related path, saisissez le chemin qui mène à l'information voulue, en séparant chaque étape par un point.
  5. Sélectionnez Enregistrer.

Le champ est créé en lecture seule : il suit la fiche source et ne se saisit pas. Les chemins qui mènent à un mot de passe, à un jeton ou à un autre secret sont refusés, comme ceux qui traversent un type de fiche protégé.

Rendre un champ conditionnel#

Un champ peut n'apparaître, ou ne devenir obligatoire, que dans certaines situations.

  1. Allez à ForgeChamps personnalisés.
  2. Ouvrez le champ.
  3. Saisissez la condition dans Invisible when, Required when ou Readonly when, sous la forme d'une comparaison simple.
  4. Enregistrez.

La condition s'applique à tous les endroits où Forge a posé le champ. Les expressions admises restent élémentaires : une comparaison entre un champ et une valeur, sans appel de fonction ni construction compliquée.

Ajouter un bouton compteur#

Un bouton compteur mène d'une fiche aux fiches qui s'y rattachent, avec leur nombre affiché.

  1. Allez à ForgeAjouter un bouton stat.
  2. Dans Source model, choisissez le type de fiche qui portera le bouton.
  3. Dans Target model, choisissez le type de fiche à compter.
  4. Dans Relation field on target, choisissez le champ qui, sur la fiche comptée, désigne la fiche porteuse.
  5. Saisissez le Label affiché sous le compte, puis choisissez l'Icon et la Color.
  6. Facultatif : restreignez le compte avec Extra domain (optional).
  7. Sélectionnez Enregistrer.

Le bouton paraît en haut du formulaire choisi. Quand Open On Click est coché, le sélectionner ouvre la liste des fiches comptées.

Écran Ajouter un bouton stat, avec le modèle source, le modèle cible, le champ de relation, le libellé et la couleur
Ajouter un bouton stat

Poser une valeur par défaut#

Une valeur par défaut évite de ressaisir la même chose à chaque création.

  1. Allez à ForgeValeurs par défaut.
  2. Sélectionnez Nouveau.
  3. Choisissez le Champ visé.
  4. Saisissez la Valeur par défaut.
  5. Choisissez l'Utilisateur pour que le défaut ne vaille que pour cette personne, ou laissez vide pour toute la société.
  6. Enregistrez.

La valeur s'applique à la prochaine création de fiche. La démo compte neuf défauts, dont la langue des nouveaux contacts et les comptes comptables des nouvelles catégories de produits.

Partager un filtre à l'équipe#

Une recherche utile gagne à être offerte à tout le monde plutôt que gardée par son auteur.

  1. Sur la liste concernée, composez la recherche puis enregistrez-la comme filtre favori.
  2. Allez à ForgeFiltres partagés.
  3. Ouvrez le filtre.
  4. Videz le champ Utilisateur.
  5. Enregistrez.

Le filtre paraît désormais dans les favoris de toute l'équipe, sur ce type de fiche. La démo en compte douze, sur les factures, les articles de blogue, les candidatures et les tâches.

Liste des filtres partagés de la démo, avec le nom du filtre, le modèle, l'utilisateur et l'action associée
Filtres partagés

Retirer un champ de l'écran#

Un champ devenu inutile se retire sans perdre ce qu'il contient.

  1. Allez à ForgeChamps personnalisés.
  2. Ouvrez le champ.
  3. Décochez Active.
  4. Enregistrez.

Le champ disparaît des formulaires, des listes et des filtres. Les valeurs saisies restent en base et reparaissent si vous le réactivez.

Les menus, un à un#

La barre de l'application montre Forge, Ajouter un champ personnalisé, Ajouter un bouton stat et Champs personnalisés; les autres entrées se trouvent sous le signe plus, au bout de la barre. Le menu Forge lui même est un regroupement : il n'ouvre aucun écran.

  • ForgeAjouter un champ personnalisé : l'écran de création d'un champ, décrit dans Vue d'ensemble. Il s'ouvre vide à chaque fois : ce n'est pas une liste, mais un formulaire de saisie.
  • ForgeAjouter un bouton stat : l'écran de création d'un bouton compteur.
  • ForgeChamps personnalisés : la liste des champs créés, six sur la démo, avec leur nom technique. La fiche d'un champ donne son libellé, son type de fiche, son type de donnée, ses options de liste, ses conditions d'affichage et les injections de vue qui en découlent.
Liste des six champs personnalisés de la démo, avec leur nom technique
Champs personnalisés
  • ForgeBoutons stat : les boutons compteurs créés. Aucun sur la démo; l'écran affiche alors le rappel de ce qu'est un bouton compteur.
  • ForgeInjections de vue : la liste des retouches de vue posées par Forge, une par endroit où un champ ou un bouton paraît. On les consulte pour comprendre où un ajout s'affiche, rarement pour les modifier.
  • ForgeValeurs par défaut : les valeurs préremplies, avec les colonnes Champ, Valeur par défaut (format JSON), Utilisateur et Société.
Liste des valeurs par défaut de la démo, avec le champ visé, la valeur, l'utilisateur et la société
Valeurs par défaut
  • ForgeFiltres partagés : les recherches enregistrées, avec les colonnes Nom de filtre, Modèle, Utilisateur, Filtre par défaut et Action.

Référence#

Champs de l'écran Ajouter un champ personnalisé#

Champ Description Obligatoire ou par défaut
Model Type de fiche à enrichir, par exemple un contact ou une tâche. Obligatoire
Field label Libellé affiché à l'écran. Obligatoire
Technical name Nom interne, déduit du libellé. Rempli automatiquement
Field Type Texte, texte long, nombre entier, décimal, montant, case à cocher, date, date et heure, liste de choix, lien vers une fiche, fichier joint ou image. Texte sur une ligne
Required Rend le champ obligatoire à la saisie. Décoché
Help text shown to users Texte d'aide affiché en infobulle. Vide
Selection values Une option par ligne, pour une liste de choix. Vide
Linked model Type de fiche visé, pour un lien vers une autre fiche. Vide
Allowed reference models Liste des types de fiche autorisés, pour un champ de référence. Vide
Computed from another field, Related path Lecture d'une information qui vit sur une fiche liée. Décoché
Show in form view, Place after field Affichage dans le formulaire, et champ d'ancrage. Coché
Show in list view, Show in kanban card, Show in search filters Affichage dans la liste, sur la carte et dans les filtres. Décochés

Champs de l'écran Ajouter un bouton stat#

Champ Description Obligatoire ou par défaut
Source model Type de fiche dont le formulaire portera le bouton. Obligatoire
Target model Type de fiche dont les fiches sont comptées. Obligatoire
Relation field on target Champ, sur la fiche comptée, qui désigne la fiche porteuse. Obligatoire
Label Texte affiché sous le compte. Obligatoire
Icon, Color Pictogramme et couleur du bouton. Valeurs proposées
Extra domain (optional) Restriction du compte, sous forme de conditions simples. Vide
Open On Click Ouvre la liste des fiches comptées quand on sélectionne le bouton. Coché

Rapports et exports#

L'application ne produit pas de rapport. Les listes de champs, de boutons, d'injections, de valeurs par défaut et de filtres s'exportent par ActionExporter.

Automatisations#

  • Un contrôle d'intégrité passe une fois par jour : si le montage d'un champ ou d'un bouton a disparu, par exemple après la réinstallation d'un module, il est reconstruit à partir de la description conservée. Les données en base ne sont pas touchées.
  • Le même contrôle a lieu à l'installation de l'application et à chacune de ses mises à jour.
  • Le compte affiché par un bouton compteur est calculé à l'ouverture du formulaire, et non conservé : il est donc toujours à jour.
  • Un champ ou un bouton dont la reconstruction échoue plusieurs fois de suite porte un compteur d'échecs et un message expliquant le dernier refus.

Pages publiques et portail#

L'application n'a ni page publique ni page de portail. Une seule adresse interne, réservée aux personnes connectées, sert à calculer le compte affiché par un bouton compteur.

Modules qui enrichissent cette application#

Aucun module satellite n'enrichit cette application. Forge s'installe seul et fonctionne dès son installation, avec un panneau d'étapes de démarrage en haut de son écran principal, que l'on referme une fois les premières personnalisations faites.

Comprendre#

Pourquoi vos ajouts survivent aux mises à jour. Une personnalisation bricolée directement dans les vues saute à la première mise à jour. Forge garde la description de chaque ajout dans ses propres fiches, indépendamment du montage technique. Si une mise à jour efface ce montage, le contrôle quotidien le refait à l'identique. Les colonnes de la base, elles, ne sont jamais touchées : seule la description que Symbifox a du champ est reconstruite.

Pourquoi certains types de fiche sont verrouillés. Ajouter un champ sur les comptes d'utilisateurs, les règles de sécurité, les pièces jointes ou la comptabilité peut casser des mécanismes dont dépend tout le reste. Le verrou n'est pas un caprice : il sépare ce qu'un administrateur fonctionnel peut faire seul de ce qui demande une personne qui en mesure les conséquences.

Pourquoi aucun code n'est produit. Forge ne génère jamais de programme à partir de ce que vous saisissez. Un champ calculé se limite à lire une information sur une fiche liée, une condition d'affichage se limite à une comparaison, et un bouton compteur repose sur une action assemblée à partir d'éléments déjà vérifiés. C'est la raison pour laquelle les possibilités sont bornées : ce qui n'est pas offert est ce qui ouvrirait la porte à l'exécution de code arbitraire.

Ce que Forge ne fait pas. Il ne crée pas de nouveau type de fiche, seulement des champs sur ceux qui existent. Il ne dessine ni rapport ni page. Il ne réorganise pas un formulaire par glisser-déposer. Il n'ajoute pas d'options à une liste de choix livrée par Symbifox, seulement aux listes qu'il a lui même créées. Pour ces besoins, il faut un module écrit pour l'occasion.

Pourquoi un champ se désactive au lieu de se supprimer. Retirer un champ retire aussi ce que les gens y ont saisi. La désactivation le fait disparaître des écrans en gardant les valeurs, ce qui laisse le temps de constater qu'il manquait à quelqu'un.

Dépannage#

Symptôme Cause probable Correctif
L'entrée Forge n'apparaît pas dans le menu principal. Le compte n'a pas le groupe d'administration de Forge. Ajoutez le groupe sur la fiche de l'utilisateur, dans les réglages généraux.
La création refuse le type de fiche choisi. Le type est protégé par défaut. Faites accorder le groupe de levée du verrou, ou renoncez à ce type de fiche.
Le champ créé n'apparaît pas sur le formulaire. Show in form view est décoché, ou le champ d'ancrage n'existe pas sur cette vue. Ouvrez le champ, corrigez l'ancrage, puis rechargez la page.
Un chemin de lecture est refusé. Il mène à un champ sensible ou traverse un type de fiche protégé. Choisissez une autre information, ou passez par un champ saisi à la main.
Le bouton compteur affiche toujours zéro. Le champ de relation choisi ne désigne pas la fiche porteuse, ou la restriction est trop étroite. Ouvrez le bouton et vérifiez le champ de relation et la restriction.
Un champ a disparu après une mise à jour. Le montage a été effacé et le contrôle d'intégrité n'est pas encore passé. Attendez le contrôle du lendemain, ou relancez une mise à jour de l'application.
Un filtre reste invisible pour l'équipe. Il porte encore un utilisateur. Videz le champ Utilisateur sur la fiche du filtre.

Voir aussi#