Personnaliser les grilles
Personnaliser les grilles
Une grille est une table enfant dans un formulaire, par exemple les articles d'une commande. Vous pouvez ouvrir une ligne en détail et adapter la largeur et la liste des colonnes. Ces réglages sont personnels.
Ouvrir une ligne
Cliquez sur l'icône d'édition au bout d'une ligne, ou placez-vous sur la ligne et appuyez sur Entrée.
La ligne s'ouvre dans un panneau flottant au-dessus du formulaire, intitulé « Modification de ligne #n ».
Le panneau propose ces actions :
| Bouton | Action |
|---|---|
| Insérer au-dessus, Insérer en dessous | Ajoute une ligne vide avant ou après la ligne. |
| Dupliquer | Copie la ligne juste en dessous. |
| Déplacer | Demande le numéro de ligne cible (« Move to Row Number ») et y déplace la ligne. |
| Supprimer | Supprime la ligne. |
| Réduire | Ferme le panneau. Un clic sur l'en-tête du panneau le ferme aussi. |
Redimensionner une colonne
Exemple fictif : un commercial travaille sur une commande de 20 lignes. Il élargit la colonne « Description » pour lire le texte entier. La largeur est gardée pour ses prochaines commandes.
- Placez le curseur sur le bord droit de l'en-tête de colonne.
- Faites glisser la poignée jusqu'à la largeur voulue.
- Relâchez le bouton de la souris.
La largeur est enregistrée tout de suite, pour vous seul.
| Point | Valeur |
|---|---|
| Largeur minimale | 60 px |
| Largeur maximale | 600 px |
| Portée | Le type de ligne dans ce type de document (par exemple les articles des commandes client) |
| Disponibilité | Ordinateur uniquement. Pas de redimensionnement sur mobile. |
Choisir les colonnes affichées
- Cliquez sur l'icône de réglage à droite de l'en-tête de la grille.
- Dans « Configurer les colonnes », ajoutez, retirez ou réordonnez les champs.
- Saisissez une largeur en pixels dans la colonne de largeur, si besoin. Dodock la ramène entre 60 et 600 px.
- Cliquez sur Mettre à jour.
Réinitialiser par défaut revient aux colonnes définies dans le type de document.
Sans réglage personnel, la largeur vient de la propriété « Colonnes » du champ (de 1 à 12, convertie de 60 à 600 px), puis du type de champ.
Masquer des colonnes dans la vue liste d'une grille par script
Exemple — Bureau Moderne Exemple fictif : sur la commande client de Bureau Moderne, 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.
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.
Signature
frm.fields_dict["nom_de_la_table"].grid.set_column_disp_in_list_view(fieldname, show);
| Paramètre | Type | Description |
|---|---|---|
fieldname | string ou tableau | Nom interne du champ, ou liste de champs |
show | boolean | true pour afficher, false pour masquer |
Exemple — masquer la colonne "Taux unitaire" dans la grille des articles
// Dans le script client de la commande client
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 | Change la propriété « Masqué » du champ, partagée par les grilles du même doctype enfant | Vue liste et vue édition |
set_column_disp_in_list_view | Locale à la grille ciblée uniquement | Vue liste (lignes condensées) |