MyField

De Documentations Patas-monkey
Version datée du 12 février 2025 à 17:15 par Liam (discussion | contributions) (Page créée avec « ====Default Permissions==== {| class="wikitable" | 600px | style="vertical-align:top;" | The default permissions ('''Home > Configuration > Security > Default Permissions'''), granted to any user created after the installation of the module, if he is not added to a group, are the following |} »)
Aller à la navigation Aller à la recherche
The myField module allows you to customize the labels of menus, tabs, buttons, fields of Dolibarr cards and lists.

You can choose the label, color and access of your menus, buttons, tabs and fields of cards and lists yourself

Presentation

Depending on the type of myfield (fields of a form, list, tab, ...), several other options can be applied to the fields of the forms such as a background color, display/hide them, add an input mask, input in uppercase ...

The combined set of user permissions and myFields access rights allows you to configure user access to the view of fields, their content and their modification.

MyField also allows you to hide menus from groups of users and change their destination URL.

Settings

The module is configured from the module administration page accessible via the menus Home > Configuration > Modules by clicking on the icon or the icon at the end of the line.

Module Configuration Page

Activating the context for development

MyField allows you to display on certain Dolibarr pages the contexts that can be used to limit the customization actions of myFields. These contexts will be useful when creating myFields to limit the action of the module to only the pages that have in their code the context indicated on the myField sheet. Configuring the display of contexts on your pages will allow you to identify them to best configure your myfields.

Enabling the display of contexts results in messages like the one opposite

Administrators are above access rules

You can also choose to disable the use of access rights for the administrator user.

If this setting is enabled, the administrator will see, outside of any group, the myfields in operation.

Background color of input areas

By default, input areas in dolibarr are transparent, which does not help readability It is possible to change the background color of input areas

Default button color

There are three types of buttons in Dolibarr:

  • Buttons associated with an action
  • Disabled buttons
  • Buttons performing a deletion

myField allows you to change the color of these

Replacing native buttons

MyField allows replacing standard Dolibarr buttons with icons.

instead of

Support Information

At the bottom of the configuration page you will find technical information related to your installation. This technical information will be useful and may be requested if you encounter a bug in using the module:

Permissions

Access to the module's features can be restricted to existing users and groups or those created after the module is installed.

Click on the – to add a permission.

A granted permission is symbolized by a green check mark ().

Warning: there are other settings that can impact access to fields, especially when using an administrator account


User and group permissions

Fichier:Myfield-Permissions-Utilisateur.png

Access to the module's features can be restricted to users and groups, from their profile then Permissions tab, according to the permissions opposite

Default Permissions

The default permissions (Home > Configuration > Security > Default Permissions), granted to any user created after the installation of the module, if he is not added to a group, are the following

Startup

MyField features are accessible from the Patastools main menu tab. Your secondary menu then presents the following menu entries:

MyField The main entry displays a list of all myFields in your environment

New mf Field
New mf Tab
New mf Tab
New mf List
New mf Menu
New mf Button

These entries will display the page for creating a new myField according to its type:
  • form field
  • tab
  • button
  • list fields
  • menu
List of elements This entry will also display the list of myFields saved on your environment
Access rights to elements This page will allow you to configure the authorizations of user groups to the features of MyFields, tabs and menus.
Import XML This entry will display a page to copy an import file of a myfield in XML format.

Customizations

Menus

Creating the myField

The page for creating a menu-type myField is accessible from the secondary menu link Patas-tools > MyField > New myMenu.

myField Type

the field automatically filled in based on the menu link you clicked to display this creation page (menu).

Native Label

enter here the native label of the menu as it is displayed on your interface.

Menu Type

select from the drop-down list the type of menu you want to customize depending on whether it is a main menu, a secondary menu or a secondary menu entry.

Replacement text

text of your choice that will be displayed instead of the native label.

Author

the name of the creator of the myField

Display

  • Visible: the field will be displayed. This is the standard operation of Dolibarr.
  • Invisible: the field will be absent from the cards
  • Hidden: the field will be absent from the cards but can be displayed (Show/Hide).

Background color

use the color selector to determine the background color of the field.

Move

enter -1 to move the menu tab to the left, 1 to the right.

Redirect URL

Enter here the URL of the page that will be displayed when clicking on the menu tab. If this field is left blank, the native URL of the menu will be kept.

Following the creation of a myField, it will be necessary to define the access rights by user groups from the secondary menu link of the same name (See further)

Exemple de personnalisation d'un menu principal

Personnalisons le menu Accueil.

Exemple de personnalisation d'un menu et d'une entrée de menu secondaire

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

Cas particulier de entrées de menu secondaire "Liste"

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.

Type de myField

le champ automatiquement rempli en fonction du lien de menu sur lequel vous avez cliqué.

Libellé natif

saisissez ici le libellé natif du menu tel qu'il est affiché à l'écran.

Contexte d'activation

Le contexte d'activation permet de limiter l'action des myFields sur les seuls champs des pages comportant le contexte indiqué ici.

Attention, 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.


Texte de remplacement

texte de votre choix qui sera affiché à la place du libellé natif.

Auteur

le nom du créateur du myField

Affichage

  • Visible : le champ sera affiché. Il s'agit du fonctionnement standard de Dolibarr.
  • Invisible : le champ sera absent des fiches
  • Caché : le champ sera absent des fiches mais pourra être affiché (Show/Hide).

Couleur de fond

utilisez le sélecteur de couleur pour déterminer la couleur de fond du myField.

Déplacement

saisissez -1 pour déplacer l'onglet du menu vers la gauche, 1 vers la droite.

URL de redirection

saisissez ici l'URL de la page qui s'affichera au clic sur l'onglet de menu. Si ce champ est laissé libre, l'URL native du menu sera conservée.


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.


Type de myField

le champ automatiquement rempli en fonction du lien de menu sur lequel vous avez cliqué.

Libellé natif

saisissez ici le libellé natif du champ tel qu'il est affiché à l'écran.

Contexte d'activation

le contexte d'activation permet de limiter l'action des myFields sur les seuls champs des pages comportant le contexte indiqué ici. 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.

Texte de remplacement

texte de votre choix qui sera affiché à la place du libellé natif.

Auteur

le nom du créateur du myField

Affichage

  • Visible : le champ sera affiché. Il s'agit du fonctionnement standard de Dolibarr.
  • Invisible : le champ sera absent des fiches
  • Caché : le champ sera absent des fiches mais pourra être affiché (Show/Hide).
sur les dernières versions du module, (Show/Hide) n'est plus employé, il faut à présent cliquer sur le numéro de version de Dolibarr (en haut à droite)

Couleur de fond

utilisez le sélecteur de couleur pour déterminer la couleur de fond du myField.

Déplacement

saisissez 1 pour remonter d'un champ, -1 pour descendre.

Valeur par défaut

Taille du champ de saisie

à définir selon vos besoins. Si laissé vide, la valeur native du champ est conservée.

Obligatoire :

cochez cette case pour rendre la saisie de valeurs dans le champ obligatoire pour enregistrer la création ou les modifications de la page

Le contrôle du champ en création et modification n'est effectué que si l'on rentre en édition du champ lui-même

Masque de saisie

le masque de saisie est paramétrable avec les caractères suivants :

  • a pour une lettre (A-Z,a-z)
  • 9 pour un chiffre (0-9)
  • pour un caractère alphanumérique (A-Z,a-z,0-9)
Vous pouvez ajouter dans le champ les caractères que vous souhaitez pour constituer votre masque. Par exemple, si vous souhaitez ajouter un indicatif international au champ téléphone, le masque sera : +0099-(9)999999999
  • UPPERCASE pour forcer la saisie en majuscule.
  • LOWERCASE pour forcer la saisie en minuscule.

Requête d'affichage

Voir section Fonctionnement

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


Lors de l'édition du champ, le masque sera activé et ne permettra que la saisie prédéfinie et sa complétion vérifiée (rendu obligatoire) pour empêcher l'enregistrement de la page sans qu'il ne soit rempli.

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 :

  1. 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

Paramétrage des droits d'accès aux myFields, tabs et menus

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

Accès en lecture

Bloqué en modification

Accès 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

Fiche Contexte
Adhérent membertypecard
Catégories categorycard
Commandes ordercard
Commande fournisseur ordersuppliercard
Contact contactcard
Contrat contractcard
Don doncard
Entrepôt warehousecard
Expédition expeditioncard
Facture client invoicecard
Facture fournisseur suppliercard


Fiche Contexte
Intervention interventioncard
Livraison deliverycard
Note de frais tripandexpensecard
Produit productcard
Projet projectcard
Proposition commerciale propalcard
Règlement client paiementcard
Règlement fournisseur paymentsupplier
Salaire salarycard
Tache projecttaskcard
Tiers thirdpartycard
Utilisateur usercard

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 :

  1. Désactivez et réactivez le module,
  2. Vérifier sur le ChangeLog si une nouvelle version a été publiée,
  3. Ré-installez/mettez à jour le module,
  4. Vérifiez que le remplacement de fichiers natifs de Dolibarr ne soit pas nécessaire au bon fonctionnement du module.
  5. 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é