« MyField » : différence entre les versions
(17 versions intermédiaires par la même utilisatrice non affichées) | |||
Ligne 122 : | Ligne 122 : | ||
==== Création du myField ==== | ==== Création du myField ==== | ||
La page de création d'un myField de type menu est accessible depuis le lien de menu secondaire '''Patas-tools > MyField > Nouveau myMenu.''' | La page de création d'un myField de type menu est accessible depuis le lien de menu secondaire '''Patas-tools > MyField > Nouveau myMenu.''' | ||
[[File:Myfield-Page-creation-menu.png|800px]] | [[File:Myfield-Page-creation-menu.png|800px]] | ||
Ligne 222 : | Ligne 223 : | ||
===Onglets=== | ===Onglets=== | ||
====Création du myField==== | ====Création du myField d'onglet==== | ||
La page de création d'un myField est accessible depuis le lien de menu secondaire '''Patastools > MyField > Nouveau MyTab'''. | La page de création d'un myField est accessible depuis le lien de menu secondaire '''Patastools > MyField > Nouveau MyTab'''. | ||
Ligne 243 : | Ligne 244 : | ||
Contexte d'activation | Contexte d'activation | ||
| style="vertical-align:top;" | | | style="vertical-align:top;" | | ||
Le contexte d'activation permet de limiter l'action des myFields sur les seuls champs des pages comportant le contexte indiqué ici. | |||
Si aucun | {{Note|<strong>Attention</strong>, pour les onglets, le contexte correspond au tabTitleText (le nom du premier onglet) (ex: "Tiers" pour l'élément Tiers, "Produit" pour l'élément Produit) }} | ||
Si aucun context n'est saisi, les modifications apportées à l'onglet par le myfield s'appliqueront à tous les champs du même libellé de toutes les fiches. | |||
|- | |- | ||
Ligne 298 : | Ligne 300 : | ||
Personnalisons l'onglet fiche des fiches des éléments. | Personnalisons l'onglet fiche des fiches des éléments. | ||
[[file:myfield-Param-onglet-fiche.png| | [[file:myfield-Param-onglet-fiche.png|800px]] | ||
La fiche devient alors | La fiche devient alors | ||
[[file:myfield-Natif-fiche.png| | [[file:myfield-Natif-fiche.png|800px]] | ||
{{Note|Si l'onglet est actif, la couleur sera affichée sur ses bords}} | {{Note|Si l'onglet est actif, la couleur sera affichée sur ses bords}} | ||
Ligne 331 : | Ligne 333 : | ||
Si aucun contexte n'est saisi, les modifications apportées à l'onglet par le myfield s'appliqueront à tous les champs du même libellé de toutes les fiches. | Si aucun contexte n'est saisi, les modifications apportées à l'onglet par le myfield s'appliqueront à tous les champs du même libellé de toutes les fiches. | ||
[[# | [[#Contexte d'activation|Liste des principaux contexte ]] | ||
|- | |- | ||
Ligne 454 : | Ligne 456 : | ||
Les myfield de boutons permettent de rendre invisible bouton, remplacer le libellé, l'url associé au bouton et de rendre son accès visible selon le résultat d'une requete SQL | Les myfield de boutons permettent de rendre invisible bouton, remplacer le libellé, l'url associé au bouton et de rendre son accès visible selon le résultat d'une requete SQL | ||
[[file:myfield-creation-bouton.png|600px]] | |||
{{Note|Avec le thème natif de Dolibarr, le libellé du bouton est mis en majuscule, il faut donc utiliser le texte d'origine que l'on récupère avec le click droit et le menu inspecter.}} | |||
=Requête SQL | =Requête SQL d'affichage conditionnel= | ||
La requête de traitement va conditionner l'affichage des champs selon la correspondance de l'objet à la requête. Il est alors possible, par exemple, d'afficher des champs différents selon que l'objet est un produits ou un service. | La requête de traitement va conditionner l'affichage des champs selon la correspondance de l'objet à la requête. Il est alors possible, par exemple, d'afficher des champs différents selon que l'objet est un produits ou un service. | ||
Il est possible de transmettre en paramètre deux valeurs : | Il est possible de transmettre en paramètre deux valeurs : | ||
Ligne 674 : | Ligne 677 : | ||
[[file:Erreur-dbclose.png]] | [[file:Erreur-dbclose.png]] | ||
|} | |} | ||
==Multicompany== | |||
Avec le module multicompany, il convient d'activer le module sur chaque entité |
Dernière version du 21 novembre 2024 à 12:23
Présentation
Selon le type de myfield (champs d'une fiche, liste, onglet,...), plusieurs autres options peuvent être appliquées aux champs des fiches telles qu'une couleur de fond, les afficher/ cacher, ajouter un masque de saisie, saisie en majuscule ...
Le jeu combiné des permissions utilisateurs et des droits d'accès aux myFields permet de paramétrer les accès des utilisateurs à la vue des champs, leur contenu et leur modification.
MyField permet encore de cacher des menus à des groupes d'utilisateurs et d'en modifier l'URL de destination.
Paramétrage
La configuration du module s'effectue depuis la page d'administration des modules accessible par les menus Accueil > Configuration > Modules en cliquant sur l'icône ou l'icône en bout de ligne.
Page de configuration du module
Activation du contexte pour le développement
MyField permet d'afficher sur certaines pages de Dolibarr les contextes utilisables pour limiter les actions de personnalisations des myFields. Ces contextes seront utiles lors de la création de myFields pour limiter l'action du module aux seules pages possédant dans leur code le contexte indiqué sur la fiche du myField. Paramétrer l'affichage des contexte sur vos pages vous permettra de les identifier pour paramétrer au mieux vos myfields.
L'activation de l'affichage des contextes se traduit par des messages comme ci-contre |
L'administrateurs est au dessus des règles d'accès
Vous pouvez aussi choisir de désactiver l'utilisation des droits d'accès pour l'utilisateur administrateur.
Si ce paramètre est activé, l'administrateur verra, hors de tout groupe, les myfields en fonctionnement.
Couleur de fond des zones de saisie
Par défaut les zones de saisies dans dolibarr sont transparentes, ce qui n'aide pas à la lisibilité Il est possible de changer la couleur de fond des zones de saisies
Couleur des boutons par défaut
Il y a trois types de boutons dans Dolibarr:
- Les boutons associés à une action
- Les boutons désactivés
- Les boutons effectuant une suppression
myField permet de changer la couleur de ceux-ci
Remplacement des boutons natifs
MyField permet le remplacement des boutons standards de Dolibarr par des icônes.
au lieu de |
Information de support
Vous trouverez en bas de la page de configuration les informations techniques liées à votre installation. Ces informations techniques seront utiles et pourront vous être demandées si vous rencontrez un bug dans l'utilisation du module :
Permissions
Les accès aux fonctionnalités du module peuvent être restreints aux utilisateurs et groupes existants ou créés ultérieurement à l'installation du module.
Cliquez sur le – pour ajouter un permission.
Une permission accordée est symbolisée par un coche verte ().
Attention : il y a d'autres paramètres qui peuvent impacter l'accès aux champs, notamment quand on utilise un compte administrateur |
Permissions utilisateurs et groupes
Les accès aux fonctionnalités du modules peuvent être restreints aux utilisateurs et groupes, depuis leur fiche puis onglet Permissions, selon les permissions ci-contre |
Permissions par défaut
Démarrage
Les fonctionnalités de MyField sont accessibles depuis l'onglet de menu principal Patastools. Votre menu secondaire présente alors les entrées de menu suivantes :
MyField | L'entrée principale affiche la liste de tous les myFields de votre environnement |
Nouveau mf Field |
Ces entrées afficheront la page de création d'un nouveau myField selon son type :
|
Liste des éléments | Cette entrée affichera également la liste des myFields enregistrés sur votre environnement |
Droits d'accès aux éléments | Cette page vous permettra de paramétrer les habilitations des groupes d'utilisateurs aux fonctionnalités de MyFields, tabs et menus. |
Import XML | Cette entré affichera une page permettant de copier un fichier d'import d'un myfield au format XML. |
Personnalisations
Menus
Création du myField
La page de création d'un myField de type menu est accessible depuis le lien de menu secondaire Patas-tools > MyField > Nouveau myMenu.
|
|
Suite à la création d'un myField, il sera nécessaire d'en définir les droits d'accès par groupes d'utilisateurs depuis le lien de menu secondaire du même nom (Voir plus loin)
Personnalisons le menu Accueil.
Personnalisons le menu secondaire Propositions commerciales et l'entrée de menu secondaire Nouvelle proposition.
L'entrée de menu secondaire sera déplacée d'un rang vers le bas avec le code -1 dans le champ Déplacement de sa fiche |
Suite à l'application de ces deux personnalisations, le menu secondaire devient :
plutôt que |
Pour différencier les entrées de menu secondaire du même nom, saisissez le menu de niveau supérieur auquel elles sont rattachées séparées par un dièse (#) :
Ajoutez au libellé le menu secondaire : Propositions commerciales#Liste |
Pour obtenir |
Onglets
Création du myField d'onglet
La page de création d'un myField est accessible depuis le lien de menu secondaire Patastools > MyField > Nouveau MyTab.
N'indiquez ici que la partie de l'URL suivant /htdocs/ |
Requête d'affichage : voir section Fonctionnement, ci-dessous
Suite à la création d'un myField, il sera nécessaire de définir les droits d'accès aux myFields par groupes d'utilisateurs depuis le lien de menu secondaire du même nom (Voir section Configuration des droits d'accès).
Exemple de personnalisation d'un onglet
Personnalisons l'onglet fiche des fiches des éléments.
La fiche devient alors
Si l'onglet est actif, la couleur sera affichée sur ses bords |
Champs
Création du myField
La page de création d'un myField est accessible depuis le lien de menu secondaire Patastools > MyField > Nouveau MyField.
|
|
Le déplacement d'un champ d'une fiche n'est effectué qu'au sein de son tableau. Il est donc possible de remonter ou descendre un champ, mais pas de le changer de colonne |
Suite à la création d'un myField de type champ, il sera nécessaire de définir les droits d'accès aux myFields par groupes d'utilisateurs depuis le lien de menu secondaire du même nom (Voir section Configuration des droits d'accès).
Exemple de personnalisation d'un champ
Personnalisons le champ Id. prof. 2 (SIRET) des fiches de tiers.
Le champ a été paramétré en tant qu'invisible avec un masque de saisie de chiffres (999 999 999 99999) | |
En cliquant sur le lien Show/Hide au-dessus du tableau, le champ sera affiché selon les paramètres enregistrés sur la fiche du myField
|
Listes
Il est possible de modifier les champs des listes natives de dolibarr (celle avec une icone de sélection de champs en bout de liste)
Création du myField
Les myfields de liste permettent de limiter l'affichage de champs. il est nécessaire d'ouvrir la page de liste pour récupérer des informations propre à ce type de myField
- le contexte d'activation
- le libellé non traduit du champs
Exemple de paramétrage
Nous allons modifier la colonne "Tiers" sur la liste des interventions
Selon les habilitations, le champs sera aussi inaccessible dans le sélecteur de champs.
Si vous rendez un myField de liste invisible, il sera invisible de tous les utilisateur. Pour le cacher seulement à un ou des groupes d'utilisateurs, laissez le visible et jouter ensuite avec les droits d'accès ! |
Boutons
Il est possible de modifier les boutons présent sur les fiches de dolibarr
Création du myField
Les myfield de boutons permettent de rendre invisible bouton, remplacer le libellé, l'url associé au bouton et de rendre son accès visible selon le résultat d'une requete SQL
Avec le thème natif de Dolibarr, le libellé du bouton est mis en majuscule, il faut donc utiliser le texte d'origine que l'on récupère avec le click droit et le menu inspecter. |
Requête SQL d'affichage conditionnel
La requête de traitement va conditionner l'affichage des champs selon la correspondance de l'objet à la requête. Il est alors possible, par exemple, d'afficher des champs différents selon que l'objet est un produits ou un service. Il est possible de transmettre en paramètre deux valeurs :
- #ID# : l'id de l'objet principale de la page
- #USERID# : l'id de l'utilisateur actif
Fonctionnement
Saisissez ici la requête d'affichage applicable au champs sur l'exemple suivant :
#SEL# permet de remplacer le SELECT de la requête SQL qui sera bloqué par la sécurité native de Dolibarr (SQL Injection)
#SEL# IF(fk_product_type=1, 1, 0) AS `read`, IF(fk_product_type=1, 1, 0) AS `write` FROM llx_product WHERE rowid=#ID#;
read permet d'autoriser ou non l'affichage globale du champ write permet d'autoriser ou non sa modification (pas nécessaire dans le cas d'un bouton un un onglet...)
Si la valeur est à 0, le champs est caché, dans le cas contraire il est affiché Attention, si on laisse le paramètre du champs à caché, il n'apparaitra pas quel que soit la valeur
Exemple
Avec le myfield suivant
On obtient la fiche suivante sur un produit | Tandis que sur la fiche d'un service |
Configuration des droits d'accès
En tant qu'utilisateur administrateur, tous les myFields vous sont visibles.
Sur la page d'accueil du module MyField, l'application des personnalisations est désactivée |
Si vous n'avez pas défini de groupes utilisateurs, les myfields sont affichés sur les interfaces de tous les utilsiateurs.
Depuis l'entrée de menu secondaire Patas-Tools > MyField > droits d'accès aux onglets, paramétrez les accès des groupes d'utilisateurs :
Il existe quatre droits d'accès :
Bloqué en accès | Bloqué en modification |
Comportement selon les droits d'accès
Bloqué en accès ()
Le champ sera caché aux utilisateurs du groupe. Ils ne pourront pas l'afficher
le lien Show/Hide ne sera pas actif |
Accès en lecture mais bloqué en modification ()
Les utilisateurs du groupe pourront afficher le champ, mais ne pourront pas en modifier le contenu. |
Accès en lecture et Accès en modification ()
Les utilisateurs du groupe pourront afficher le champ et le modifier si leurs permissions de groupe ou d'utilisateur le leur permettent. Les paramètres du champ s'appliquent alors (obligatoire, masque de saisie,...) |
Autres fonctionnalités
Import des myField
Il est possible d'enregistrer une liste de myfields et leurs paramétrages en important un fichier XML. Depuis la page Outils Patas-M > MyField > Importer un onglet, collez le fichier XML dans la zone de saisie et cliquez sur le bouton Lancer l'importation.
Si vous cochez la case Écraser les données précédentes, votre liste de myfields se résumera à ceux présent dans le ficher que vous importez |
Paramétrer ensuite les droits d'accès des utilisateurs au myField.
Contexte d'activation
Une liste de tous les contextes disponible est présent sur le wiki de dolibarr: https://wiki.dolibarr.org/index.php?title=Syst%C3%A8me_de_Hooks#Liste_des_Contexts_disponibles_dans_Dolibarr
quelque uns des plus courants
|
|
Questions fréquentes
Général
Ce chapitre répertorie les difficultés rencontrées avec le module. Vous y trouverez donc des éléments de réponse quant à son utilisation. Si vous rencontrez une autre erreur que celles décrites ci-dessous lors de l'utilisation de ce module :
- Désactivez et réactivez le module,
- Vérifier sur le ChangeLog si une nouvelle version a été publiée,
- Ré-installez/mettez à jour le module,
- Vérifiez que le remplacement de fichiers natifs de Dolibarr ne soit pas nécessaire au bon fonctionnement du module.
- Vérifiez qu'aucune incompatibilité avec un autre module ne soit indiquée. Le cas échéant, suivez nos préconisations.
Si, malgré ces manipulations, l'erreur persiste, contactez-nous en utilisant le formulaire dédié (http://docs.patas-monkey.com/support/). Ce formulaire est le mode de contact à privilégier pour toute difficulté d'utilisation ou remontée de bug. Aussi, nous vous remercions de ne pas multiplier les canaux d'échange pour un même objet.
Affichage d'un message en haut des pages de Dolibarr
Si vos pages de Dolibarr affichent un message semblable à l'image suivante, il ne s'agit pas d'un message d'erreur, mais de l'affichage des contextes de la page courante. Pour ne plus voir ces lignes affichées, désactivez l'affichage du contexte (voir Configuration).
Message erreur d'ordonnancement
Certaines pages de certaines versions de Dolibarr présentent un erreur dans leur code empêchant la bonne application de la personnalisation des champs. MyField permet de les identifier pour les corriger.
Le message d'erreur s'affiche en bas de page et est le suivant
En vous aidant de l'URL de la page, ouvrez le fichier du noyau de Dolibarr pour le modifier. Par exemple, si la page qui comporte le message est http://.../htdocs/custom/myField/admin/extrafields.php, ouvrez successivement les dossiers htdocs, custom, myField, admin et ouvrez le fichier extrafields.php.
L'erreur vient de l'inversion des lignes llxFooter(); et $db->close(); en fin de fichier.
Modifiez le code de la page pour obtenir | au lieu de |
Multicompany
Avec le module multicompany, il convient d'activer le module sur chaque entité