Personnalisation : référence complète
En bref
Cette page recense les réglages d'affichage de la webapp et de l'application : valeur par défaut, lieu de stockage, produit concerné. Elle décrit aussi la politique d'affichage du serveur, qui masque des éléments de la webapp pour certains utilisateurs. Elle s'adresse aux administrateurs, aux revendeurs et aux intégrateurs. La vue utilisateur est sur Personnaliser l'interface.
Disponibilité
| Fonction | Webapp | Application |
|---|---|---|
| Préférences d'affichage personnelles | oui, dans le navigateur | oui, sur l'appareil |
| Thème complet importé ou exporté (fichier JSON) | oui | oui |
| Politique d'affichage pilotée par le serveur | oui | non (aucune lecture trouvée dans l'application) |
| Droits Sage appliqués aux entrées de menu | oui | oui, dossier par dossier |
| Réglages système partagés entre appareils | non, propres au navigateur | oui, copie côté connecteur (Paramètres avancés) |
Comment lire les tableaux
Stockage
Toutes les préférences d'affichage vivent dans le stockage local du navigateur, sous la clé indiquée. Aucune n'est sauvegardée côté serveur. Conséquences :
- un réglage ne suit pas l'utilisateur d'un poste ou d'un navigateur à l'autre ;
- une navigation privée, ou un vidage des données du site, remet tout par défaut ;
- ni le connecteur ni le portail ne conservent ces préférences.
La seule chose pilotée par le serveur est la politique d'affichage (voir plus bas), qui borne ce que l'utilisateur peut voir, sans écrire ses préférences.
Les préférences du panneau de réglages (apparence, tableaux, saisie de document, favoris) sont locales à l'appareil. Les Paramètres avancés (synchronisation, pagination, diagnostic, page d'ouverture...) sont propres à l'utilisateur et au serveur, et partagés entre ses appareils par une copie côté connecteur : les modifications locales non encore envoyées sont conservées à la fusion. Hors connexion, l'enregistrement local fonctionne ; la copie échoue avec "Configuration enregistrée localement, mais la synchronisation a échoué." Voir Réglages.
Portée
Trois portées existent dans la webapp : cet appareil (le cas général), cet appareil et ce compte (les dispositions de listes, rangées sous l'adresse e-mail de connexion) et cet appareil et cet écran (les surcharges par écran). Aucune préférence n'a pour portée un serveur, un dossier Sage ou une société. Dans l'application, les favoris et la sélection de dossiers sont propres à l'utilisateur et au serveur.
1. Thème, couleurs, typographie
| Réglage | Clé de stockage (webapp) | Défaut (webapp) | Application |
|---|---|---|---|
| Clair / Sombre / Système | theme |
light (light, dark, system) |
oui |
| Personnalisation (couleurs, police, logos) | themeCustomization |
voir ci-dessous | couleurs et logos |
| Couleur Primaire | themeCustomization.colors.primary |
#00811f |
oui ("Principale") |
| Primaire (survol) | ...primaryHover |
#007219 |
oui |
| Secondaire | ...secondary |
#4361ee |
oui |
| Secondaire (survol) | ...secondaryHover |
#3550cf |
oui |
| Succès | ...success |
#00811f |
oui |
| Danger | ...danger |
#db004e |
oui ("Erreur") |
| Warning | ...warning |
#d64309 |
oui ("Avertissement") |
| Info | ...info |
#0071c3 |
oui ("Information") |
| Fond de la navigation | ...navBackground |
#000000 ; raccourcis : #000000 Noir, #0c1524 Bleu nuit, #00352c Vert Sage, #3b1d2e Prune, #f4f5f6 Clair |
non |
| Police | ...font |
sage-ui (sage-ui, sensaas-sans, sensaas-droit, inter, plus-jakarta-sans, ibm-plex-sans, roboto, system) |
non |
| Logos clair et sombre | ...logo.light, ...logo.dark |
aucun (logos livrés) ; 400 Ko au plus | oui |
| Thème actif | themePresetId |
aucun | oui (preset) |
| Thèmes importés | themeCustomPresets |
aucun | oui (presets enregistrés ou importés) |
| Réglages modifiés à la main | themeOverrides |
aucun ; renseigné dès qu'un réglage est modifié | sans objet |
| Indicateur de chargement | loaderVariant |
comete (comete, infini, ring, standalone, star) |
non |
Dans la webapp, la taille du texte (Petit, Moyen, Grand) existe dans le modèle de thème et peut être portée par un thème importé, mais aucun contrôle ne l'expose dans le panneau. Dans l'application, la rubrique Police annonce seulement que des polices supplémentaires sont à venir : cette annonce n'est pas une fonction disponible et n'est pas documentée.
Les thèmes livrés
| Webapp | Description affichée |
|---|---|
| Sage - rendu actuel | Thème par défaut Sage, vert, surfaces neutres |
| SenSaaS V2 | Charte SenSaaS V2 : action bleue, marque bleu-vert, encre |
| Sage Corporate | Surfaces neutres froides, aspect professionnel |
| Sage Warm | Surfaces chaudes, ambiance accueillante |
L'application livre Sage Default, Sage Corporate et Sage Warm. Le thème SenSaaS V2 n'y est pas proposé.
2. Mise en page et navigation
| Réglage | Clé de stockage (webapp) | Défaut (webapp) | Application |
|---|---|---|---|
| Mode de navigation | shell_nav_mode |
sidebar (sidebar Vertical, sidebar-icon Icônes, secondnav Horizontal) ; proposé au-delà de 900 pixels ; Icônes retombe sur Vertical en dessous |
Volet latéral, Volet icônes, Barre d'onglets ; ordinateur |
| Menus regroupés | menusUnified |
true (Regroupés) |
oui |
| Ordre, rattachement, libellés, entrées masquées | menuOrder, menuReparent, menuLabels, hiddenMenuKeys |
vides ; masquer n'empêche pas la navigation directe | oui, monter / descendre, renommer, masquer |
| Page affichée à l'ouverture | réglage de navigation | Automatique : dernière page consultée | oui |
| Favoris de pages | page_favorites |
aucun | oui, ordinateur et tablette |
| Applications installées | installed_apps |
aucune | voir Magasin d'applications |
| Monde actif | activeEnvironment |
gestion |
oui |
| Dernière page de chaque monde | lastPathByEnvironment |
automatique | oui |
| Interface des paramètres | shell.settings.uiMode |
panel (panel, fullscreen) |
sans objet |
Dans la webapp, le regroupement des menus n'est pas codé dans le shell : chaque module déclare le groupe de menu de ses routes dans son manifeste, et le shell en dérive les deux présentations. Les sous-catégories des catalogues et des tiers ne se déplient en menu qu'en mode "Séparés".
Huit champs hérités du store de la webapp n'ont aucun réglage exposé mais sont réinitialisés avec les autres.
3. Listes dynamiques
| Réglage | Clé de stockage (webapp) | Défaut (webapp) | Application |
|---|---|---|---|
| Mode de données | gridDataMode |
auto (server, auto, client) ; Auto reste en mode client sous 5 000 lignes et 2 Mo |
sans objet |
| Densité | gridDensity |
normal (compact, normal, comfortable) |
oui |
| Lignes horizontales | gridRowBorders |
true |
oui ("Bordures de lignes") |
| Lignes verticales | gridColumnBorders |
true |
oui ("Bordures de colonnes") |
| Filtres | gridColumnFilters |
par colonne (Par colonne, Avancé, Désactivés) | "Filtres de colonnes" |
| Filtres par écran | gridColumnFiltersByScope |
aucun | oui, Afficher les filtres par colonne dans les paramètres de la page |
| Graphiques dans les tableaux | gridCharts |
false |
non |
| Disposition d'une liste | une clé par liste et par compte | absente ; écrite 300 ms après le dernier geste | "Dispositions de colonnes" |
Dans la webapp, la disposition d'une liste contient l'état des colonnes (visibilité, ordre, largeur, tri, regroupement), le modèle de filtres s'il n'est pas vide, et les groupes dépliés. Une liste revenue à ses valeurs d'origine voit son entrée supprimée.
| Densité | Hauteur de ligne | Hauteur d'en-tête |
|---|---|---|
| Compacte | 28 px | 36 px |
| Normale | 32 px | 40 px |
| Confortable | 40 px | 48 px |
Ces hauteurs valent pour la webapp. Les notes de cellule sont aussi gardées dans le navigateur, visibles de l'utilisateur seul.
4. Fiches et saisie de documents
| Réglage | Clé de stockage (webapp) | Défaut (webapp) | Application |
|---|---|---|---|
| Zones vides des fiches | detailHideEmptyFields |
false (Affichées) |
non |
| Récapitulatif du document | sensaas:prefs:documents → recapStyle |
rail (rail, flottant) |
oui |
| Densité des lignes | ... → density |
confortable (confortable, compacte) |
oui |
| Remises multiples | ... → remiseMode |
demander (demander, cascade) |
"Colonne remise" (Champ, Badges, Les deux) |
| Contact du tiers | ... → autoSelectContact |
true |
oui |
| Colonnes du tableau de saisie | ... → lineColumns:<écran> |
colonnes de base ; <écran> vaut vente, achat, stock ou interne |
voir Saisie de document |
| Vue des lignes sur téléphone | ... → mobileLineView |
auto (auto, cartes, liste) ; bascule au-delà de 20 lignes |
pas de réglage : la bascule Cartes / Liste apparaît au-delà de 20 lignes, dans la saisie |
Les zones vides masquées ne s'appliquent qu'à l'affichage : une valeur 0 reste affichée, c'est une
information métier.
5. Langue et unités
| Réglage | Clé de stockage (webapp) | Défaut (webapp) | Application |
|---|---|---|---|
| Langue | i18n_locale |
fr (fr, en, es) |
oui |
| Devise par défaut | defaultCurrency |
EUR, limitée aux devises des dossiers accessibles |
oui |
La langue est le seul réglage de format : nombres, montants et dates suivent la locale associée à la langue.
6. Réglages contribués par les écrans (webapp)
Un module ajoute sa propre section au panneau en la déclarant dans son manifeste ; son contenu n'est chargé qu'au clic. Si le chargement échoue, un message occupe la place de la section sans gêner le reste.
| Section | Modules qui la déclarent |
|---|---|
| Documents | ventes, achats, stock, documents internes (réglages communs) |
| Indicateurs | indicateurs |
| Outils | vitrine des composants, quand elle est installée (section de démonstration sans effet métier) |
Les préférences des indicateurs (sensaas:prefs:kpi) : affichage global (globallyHidden, défaut false),
style des cartes (cardStyle, défaut soft Teinte, ou banner, ghost), largeur (cardWidth, défaut
stretch Étirées, ou fixed), masquage par écran, indicateurs désactivés, indicateurs épinglés et état replié
par écran. Voir Indicateurs clés.
Chaque module range ses préférences dans une seule clé de stockage, sensaas:prefs:<module>, au format JSON :
un module n'ajoute jamais de champ au store du shell.
7. Réinitialisation
Réinitialiser mes réglages (confirmation "Réinitialiser tous les réglages ?", irréversible) remet à zéro : thème et couleurs, disposition et libellés des menus, réglages et mises en page des tableaux, indicateurs, favoris (dont ceux de l'assistant), langue et devise. Conservés : la session, les sociétés sélectionnées, l'exercice, le monde actif et les derniers écrans visités. Succès : "Réglages réinitialisés."
Réinitialiser mes réglages remet à zéro : thème, apparence et mode de navigation ; ordre, libellés et entrées masquées du menu ; densité, bordures et filtres des tableaux ; indicateurs et filtres par écran ; dispositions des colonnes ; favoris ; langue ; applications installées du Magasin (retour à la configuration d'origine) ; questions épinglées de l'Assistant IA. Conservés : la session et les sociétés sélectionnées. Les paramètres avancés ne sont pas touchés (bouton Réinitialiser les paramètres). Succès : "Réglages réinitialisés".
Politique d'affichage du serveur (webapp)
La politique d'affichage permet à un administrateur de masquer des éléments de la webapp pour un utilisateur. Elle est compilée par le connecteur et lue au démarrage de la session.
Ce qu'elle masque
- les mondes Gestion et Comptabilité, les modules et les pages ;
- les onglets, les vues d'un écran (par exemple Cards, Catalogue, Tableau) et les actions ;
- les indicateurs et les applications du Magasin ;
- les sections du panneau de réglages (Affichage, Apparence, Navigation, Personnalisation, Tableaux, Aides, Réinitialiser) ;
- les fiches d'objets (un clic sur une ligne n'ouvre plus de fiche) et certaines colonnes.
Comment elle fonctionne
- Un droit à 1 accorde : l'élément est affiché. Une règle absente vaut tous les droits possibles. Une règle à 0 retire l'élément. Les règles viennent des niveaux licence, utilisateur, profil et dossier, combinés par un ET.
- Un monde masqué masque les modules et les pages qui n'existent que dans ce monde ; une application masquée du Magasin masque le module qui la porte. S'il ne reste aucun monde visible, aucune règle de monde ne s'applique.
- La webapp relit la politique à l'ouverture de session, au changement de compte et au retour sur l'onglet, et la garde en cache une heure, par e-mail et par serveur. Une politique absente (le serveur n'en sert pas), ou une revalidation qui échoue, ne masque rien de plus : en l'absence de politique, la webapp s'appuie sur les droits Sage de chaque dossier.
- La webapp publie au connecteur le catalogue de ce qu'elle sait afficher (modules, pages, vues, applications, indicateurs, sections de réglages), pour que l'administrateur le retrouve dans l'outil de configuration.
- Le choix de l'utilisateur est borné, jamais réécrit : quand une règle est levée, il retrouve ses réglages (vue mémorisée, applications installées, entrées de menu masquées à la main).
- Masquer n'est pas interdire : la politique agit sur l'interface, pas sur la sécurité des données.
- Si une règle masque toutes les vues d'un écran, elles sont toutes affichées : un écran ne devient jamais vide.
Un module masqué par la politique n'est plus joignable, même par un favori ou un lien direct : ce n'est pas le cas d'une entrée masquée à la main dans le menu, qui reste accessible par ces deux voies.
Rendre un écran pilotable (intégrateur)
Tout élément qu'un administrateur pourrait vouloir masquer doit être déclaré dans le manifeste du module : ce qui n'y est pas déclaré n'existe pas pour lui. Sont pilotables sans rien faire : le module entier, chaque page, chaque contribution, chaque indicateur, chaque application du magasin. Doivent être déclarés en plus les vues d'un écran et ses sections internes.
Ce qu'un revendeur peut changer
| Élément | Possible ? | Comment, et avec quelle limite |
|---|---|---|
| Couleurs | Oui, poste par poste | Réglages de personnalisation, ou thème importé. Pas de diffusion centralisée : chaque utilisateur importe le fichier sur chaque navigateur ou appareil |
| Logo | Oui, poste par poste | Logo clair et logo sombre. Un thème JSON ne porte pas de logo |
| Police | Webapp seulement | Huit polices livrées ; aucune police tierce ne s'ajoute sans modification du produit |
| Charte complète | Oui, par fichier | Thème JSON exporté depuis un poste de référence, importé sur les autres |
| Nom du produit, textes de marque | Non | Les libellés viennent des fichiers de traduction livrés |
| Éléments visibles par utilisateur | Oui, webapp | Politique d'affichage du serveur |
| Réglages communs à une équipe | Non | Les préférences ne quittent pas le navigateur ou l'appareil |
Comment le thème est construit (webapp)
La webapp pose ses couleurs en couches : les jetons de la charte (socle), puis votre personnalisation (huit couleurs d'accent, fond de navigation, police), puis le thème actif s'il y en a un, puis les réglages que vous avez explicitement choisis, qui reviennent par-dessus le thème. Un thème est un fichier JSON avec un bloc d'identité, un bloc clair obligatoire et un bloc sombre facultatif. Il porte la charte entière : accents, surfaces, bordures, champs, texte, ombres, fond de navigation, police et taille de base. Une couleur d'accent n'est jamais posée seule : le survol et les états actifs en sont dérivés, ce qui garantit qu'un changement de couleur emporte aussi la couleur de survol et de sélection d'une liste. Le fond de navigation fonctionne de même : une couleur, et le texte bascule en clair ou en foncé selon le contraste.
Le mode sombre n'est pas un thème : c'est une bascule qui fait résoudre les couleurs d'un thème par sa variante sombre. En mode "Système", la webapp suit l'appareil.
Ce que le thème n'atteint pas, d'après les documents internes : des couleurs écrites en dur ignorent le thème ; les teintes des cartes d'indicateurs ne suivent pas, volontairement, car elles sont calibrées sur le contraste ; la charte ne définit ni couleur de danger ni couleur d'avertissement, et le thème SenSaaS V2 garde les valeurs Sage pour ces deux rôles.
Questions fréquentes
Où est passée la section sur ce qui est en préparation ?
Elle est périmée : la politique d'affichage est livrée dans la webapp et décrite plus haut.
Puis-je imposer un réglage à un utilisateur ?
Vous pouvez masquer des éléments (politique d'affichage). Pour certains réglages déclarés au catalogue, le contrat prévoit une valeur imposée.
Où sont stockés les réglages de l'application ?
Sur l'appareil. Les Paramètres avancés ont en plus une copie côté connecteur, partagée entre vos appareils.