Dokos propose dans ses Paramètres ( Paramètre de la barre de navigation ) de personnaliser l'interface pour l'adapter au mieux à vos besoins.

Dokos propose de nombreux outils de visualisation :
Dokos vous offre la possibilité de créer vos propres types de documents adaptés à vos besoins spécifiques. Par exemple :
À noter : Les personnalisations que vous effectuez (ajout/suppression de champs) ne seront jamais écrasées lors des mises à jour.
Exemple — Maison Verte SARL Sur la fiche client de Maison Verte SARL, le tableau de bord affiche non seulement le nombre de factures de vente, mais aussi le total facturé (4 800,00 €) et le montant encore dû (1 200,00 €). Le commercial voit en un coup d'œil la situation financière du client sans ouvrir chaque facture.
Le tableau de bord d'une fiche (client, fournisseur, article…) affiche des liens vers les documents liés avec, en option, des totaux monétaires calculés à la volée. Cette configuration est réservée aux administrateurs et développeurs : elle se définit dans le fichier de configuration du tableau de bord du type de formulaire concerné.
Configuration pour les administrateurs et développeurs
Chaque groupe de liens dans la configuration du tableau de bord peut recevoir une clé summary_fields associant un type de formulaire à un calcul de total. Les options disponibles sont :
| Clé | Rôle |
|---|---|
field | Champ numérique dont la somme est calculée (ex. net_total) |
label | Libellé affiché pour le total (ex. "Total facturé") |
fieldtype | Type d'affichage : Currency, Float, Int |
open_field | Champ pour le calcul du sous-total "ouvert" (ex. outstanding_amount) |
open_label | Libellé du sous-total ouvert (ex. "En attente") |
open_filters | Filtres supplémentaires pour le sous-total ouvert (ex. {"docstatus": 1, "outstanding_amount": [">", 0]}) |
Exemple tiré de la fiche client :
"summary_fields": {
"Sales Invoice": {
"field": "net_total",
"label": _("Total Billed"),
"fieldtype": "Currency",
"open_field": "outstanding_amount",
"open_label": _("Outstanding"),
"open_filters": {"docstatus": 1, "outstanding_amount": [">", 0]},
},
}
Exemple — Dupont Conseil L'administrateur de Dupont Conseil crée un type de formulaire personnalisé "Dossier client" et lui attribue l'icône
folder. Partout où un lien vers ce formulaire apparaît dans l'interface — champs de recherche, listes liées, résultats de recherche globale — une petite icône dossier s'affiche à gauche pour distinguer visuellement ce type de document.
Chaque type de formulaire dans Dokos peut recevoir une icône issue de la bibliothèque d'icônes Frappe. Cette icône s'affiche à gauche des champs de saisie qui pointent vers ce formulaire, aidant les utilisateurs à identifier le type de document associé sans lire le nom complet.
La configuration de l'icône se fait directement sur le formulaire du Type de document, dans le champ Icône. Cette option est destinée aux administrateurs et développeurs qui créent ou modifient des types de formulaires personnalisés. Les types de formulaires fournis par Dokos sont déjà configurés avec leurs icônes par défaut.
Exemple — Maison Verte SARL Un gestionnaire saisit un bon de commande pour Maison Verte SARL avec vingt lignes d'articles. Il réalise que la date de livraison prévue est incorrecte sur dix d'entre elles. Au lieu de corriger chaque ligne une par une, il coche les dix lignes concernées, clique sur Modifier, saisit la nouvelle date une seule fois, et toutes les lignes sélectionnées sont mises à jour instantanément.
Lorsqu'un formulaire contient une table enfant (lignes d'articles, plannings, etc.), il est possible de modifier plusieurs lignes simultanément. Cette fonctionnalité évite les saisies répétitives et réduit les risques d'erreur.
Bon à savoir : Sur un document déjà soumis, seuls les champs autorisés à la modification après soumission apparaissent dans la fenêtre de modification en masse.
Par défaut, la modification en masse est activée sur toutes les tables enfants. Un administrateur peut la désactiver champ par champ depuis Personnaliser le formulaire :
Pour les développeurs : l'option est également configurable directement dans la définition du DocType via le champ allow_bulk_edit sur le champ de type Table. Elle peut aussi être positionnée dans le fichier JSON du DocType pour les types de formulaires personnalisés gérés en code.
Exemple — Bureau Moderne La responsable achats de Bureau Moderne consulte la liste des bons de commande. La colonne "Fournisseur" est trop étroite et tronque les noms. Elle fait glisser le bord de la colonne vers la droite pour l'élargir : la largeur est sauvegardée automatiquement et restera en place à chaque prochaine ouverture de la liste.
Dans toutes les vues liste de Dokos, vous pouvez ajuster la largeur de chaque colonne selon vos préférences. Ces réglages sont personnels et persistent d'une session à l'autre.
C'est la méthode la plus rapide pour un ajustement ponctuel :
Bon à savoir : Les poignées de redimensionnement sont toujours légèrement visibles au repos. Survolez la ligne d'en-têtes pour les faire apparaître toutes en même temps. Survolez directement une poignée pour la mettre en évidence.
Pour régler les largeurs de plusieurs colonnes à la fois :
Un administrateur peut définir une largeur par défaut directement sur un champ depuis Personnaliser le formulaire. Cette valeur s'applique à tous les utilisateurs qui n'ont pas encore défini leur propre réglage.
| Paramètre | Valeur |
|---|---|
| Largeur minimale | 50 px |
| Largeur maximale | 400 px |
| Sauvegarde | Automatique après chaque glisser-déposer |
| Portée | Par utilisateur et par vue liste |
Exemple — Maison Verte SARL Sur le bon de commande de Maison Verte SARL, la grille des articles affiche par défaut la colonne "Taux unitaire". Un développeur souhaite la masquer uniquement dans cette grille, sans affecter d'autres formulaires utilisant le même type de ligne d'article. Grâce à
set_column_disp_in_list_view, la colonne disparaît de la vue liste de cette grille uniquement, et reste visible partout ailleurs.
Dans un formulaire Dokos, une grille (table enfant) peut afficher ses lignes sous deux formes : la vue liste (lecture seule, affichage condensé des lignes) et la vue édition (formulaire d'une ligne). Il est parfois utile de masquer une colonne dans la vue liste d'une grille précise, sans impacter les autres grilles qui partagent le même type de document enfant.
Pour les développeurs — set_column_disp_in_list_view
La méthode set_column_disp_in_list_view(fieldname, show) disponible sur l'objet Grid permet de masquer ou d'afficher une colonne dans la vue liste d'une grille, de manière locale à cette grille uniquement.
Contrairement à set_column_disp qui modifie le méta-champ partagé (et affecte donc toutes les grilles du même doctype enfant sur le formulaire), set_column_disp_in_list_view stocke la visibilité comme une surcharge propre à l'instance de la grille et reconstruit la disposition des colonnes sans effet de bord.
Signature
cur_frm.fields_dict["nom_de_la_table"].grid.set_column_disp_in_list_view(fieldname, show);
| Paramètre | Type | Description |
|---|---|---|
fieldname | string | Nom interne du champ à masquer ou afficher |
show | boolean | true pour afficher, false pour masquer |
Exemple — masquer la colonne "Taux unitaire" dans la grille des articles
// Dans le script client du bon de commande
frappe.ui.form.on("Sales Order", {
refresh(frm) {
frm.fields_dict["items"].grid.set_column_disp_in_list_view("rate", false);
}
});
Différence avec set_column_disp
| Méthode | Portée | Vue affectée |
|---|---|---|
set_column_disp | Partagée entre toutes les grilles du même doctype enfant | Vue édition (lignes dépliées) |
set_column_disp_in_list_view | Locale à la grille ciblée uniquement | Vue liste (lignes condensées) |
Ces deux méthodes sont complémentaires et peuvent être utilisées conjointement selon les besoins de mise en page.