« MyField/en » : différence entre les versions
Page créée avec « {| class="wikitable" |- style="vertical-align:top;" | File:Myfield-250x250.png | 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 |} » |
Mise à jour pour être en accord avec la nouvelle version de la source de la page |
||
| (84 versions intermédiaires par un autre utilisateur non affichées) | |||
| Ligne 10 : | Ligne 10 : | ||
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 ... | 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. | |||
MyField | |||
== Settings == | |||
The module is configured from the module administration page accessible via the menus '''Home > Configuration > Modules''' by clicking on the [[file:doli-setup.png]] icon or the [[file:doli-setup-old.png]] icon at the end of the line. | |||
[[file:myfield_Configuration_en.png|800px]] | |||
[[file: | |||
< | <span id="Page_de_configuration_du_module"></span> | ||
=== Page | === 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. | ||
MyField | 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. | |||
{| class="wikitable" | {| class="wikitable" | ||
| [[file:myfield-Message-contexte.png]] | | [[file:myfield-Message-contexte.png]] | ||
| style="vertical-align:top;" | | | style="vertical-align:top;" | | ||
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 | ||
myField | |||
==== Replacing native buttons ==== | |||
==== | MyField allows replacing standard Dolibarr buttons with icons. | ||
MyField | |||
{| class="wikitable" | {| class="wikitable" | ||
| [[file:myfield_Button-replace.png|300px]] | | [[file:myfield_Button-replace.png|300px]] | ||
| | | instead of | ||
| [[file:myfield_Button-standard.png|500px]] | | [[file:myfield_Button-standard.png|500px]] | ||
|} | |} | ||
==== Support Information ==== | |||
==== 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: | ||
[[file:Myfield_Technical-information_en.png||800px]] | |||
[[file:Myfield_Technical- | |||
===Permissions=== | ===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 ([[file:tick.png]]). | |||
{{Note|Warning: there are other settings that can impact access to fields, especially when using an administrator account}} | |||
{{Note| | |||
====User and group permissions==== | |||
= | |||
{| class="wikitable" | {| class="wikitable" | ||
| [[file:myfield-Permissions- | | [[file:myfield-Permissions-utilisateur_en.png|600px]] | ||
| style="vertical-align:top;" | | | style="vertical-align:top;" | | ||
Access to the module's features can be restricted to users and groups, from their profile then Permissions tab, according to the permissions opposite | |||
|} | |} | ||
<div | <div class="mw-translate-fuzzy"> | ||
====Permissions | ====Default Permissions==== | ||
{| class="wikitable" | {| class="wikitable" | ||
| [[file:myfield-Permissions- | | [[file:myfield-Permissions-defaut_en.png|600px]] | ||
| style="vertical-align:top;" | | | style="vertical-align:top;" | | ||
The default permissions ('''Home > Users & Group > Choose between Users or Group > Select Permissions'''), granted to any user created after the installation of the module, if he is not added to a group, are the following | |||
|} | |} | ||
</div> | </div> | ||
< | <span id="Démarrage"></span> | ||
== | == Startup == | ||
MyField features are accessible from the Patastools main menu tab. | |||
Your secondary menu then presents the following menu entries: | |||
{| class="wikitable" | |||
{| class="wikitable" | |- style="vertical-align:top;" | ||
|- style="vertical-align:top;" | |||
| style='border-style: none;' | '''MyField''' | | style='border-style: none;' | '''MyField''' | ||
| | | The main entry displays a list of all myFields in your environment | ||
|- style="vertical-align:top;" | |- style="vertical-align:top;" | ||
| style='border-style: none;' | | | style='border-style: none;' | | ||
''' | '''New mf Field'''<br /> | ||
''' | '''New mf Tab'''<br /> | ||
''' | '''New mf Tab'''<br /> | ||
''' | '''New mf List'''<br /> | ||
''' | '''New mf Menu'''<br /> | ||
''' | '''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 | ||
* menu | |- style="vertical-align:top;" | ||
|- style="vertical-align:top;" | | style='border-style: none;' | '''List of elements''' | ||
| style='border-style: none;' | ''' | | This entry will also display the list of myFields saved on your environment | ||
| | |- style="vertical-align:top;" | ||
|- style="vertical-align:top;" | | style='border-style: none;' | '''Access rights to elements''' | ||
| style='border-style: none;' | ''' | | This page will allow you to configure the authorizations of user groups to the features of MyFields, tabs and menus. | ||
| | |||
|- style="vertical-align:top;" | |- style="vertical-align:top;" | ||
| style='border-style: none;' | '''Import XML''' | | style='border-style: none;' | '''Import XML''' | ||
| | | This entry will display a page to copy an import file of a myfield in XML format. | ||
|} | |} | ||
== Customizations == | |||
=== Menus === | === Menus === | ||
==== | ==== Creating the myField ==== | ||
The page for creating a menu-type myField is accessible from the secondary menu link '''Patas-tools > MyField > New myMenu.''' | |||
[[File:Myfield-Page-creation-menu_en.png|800px]] | |||
[[File:Myfield-Page-creation- | |||
{| | |||
{| | |||
| style="vertical-align:top;width:50%;" | | | style="vertical-align:top;width:50%;" | | ||
{| class="wikitable" | {| class="wikitable" | ||
| style="vertical-align:top;width:25%;" | | | style="vertical-align:top;width:25%;" | | ||
Type | myField Type | ||
| style="vertical-align:top;" | | | style="vertical-align:top;" | | ||
the field automatically filled in based on the menu link you clicked to display this creation page (menu). | |||
|- | |- | ||
| style="vertical-align:top;" | | | style="vertical-align:top;" | | ||
Native Label | |||
| style="vertical-align:top;" | | | style="vertical-align:top;" | | ||
enter here the native label of the menu as it is displayed on your interface. | |||
|- | |- | ||
| style="vertical-align:top;" | | | style="vertical-align:top;" | | ||
Type | Menu Type | ||
| style="vertical-align:top;" | | | style="vertical-align:top;" | | ||
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. | |||
|- | |- | ||
| style="vertical-align:top;" | | | style="vertical-align:top;" | | ||
Replacement text | |||
| style="vertical-align:top;" | | | style="vertical-align:top;" | | ||
text of your choice that will be displayed instead of the native label. | |||
|- | |- | ||
| style="vertical-align:top;" | | | style="vertical-align:top;" | | ||
Author | |||
| style="vertical-align:top;" | | | style="vertical-align:top;" | | ||
the name of the creator of the myField | |||
|} | |} | ||
| style="vertical-align:top;" | | |||
| style="vertical-align:top;" | | |||
{| class="wikitable" | {| class="wikitable" | ||
| style="vertical-align:top;width:25%;" | | | style="vertical-align:top;width:25%;" | | ||
Display | |||
| style="vertical-align:top;" | | | style="vertical-align:top;" | | ||
*Visible : | *Visible: the field will be displayed. This is the standard operation of Dolibarr. | ||
*Invisible : | *Invisible: the field will be absent from the cards | ||
* | *Hidden: the field will be absent from the cards but can be displayed (Show/Hide). | ||
|- | |- | ||
| style="vertical-align:top;" | | | style="vertical-align:top;" | | ||
Background color | |||
| style="vertical-align:top;" | | | style="vertical-align:top;" | | ||
use the color selector to determine the background color of the field. | |||
|- | |- | ||
| style="vertical-align:top;" | | | style="vertical-align:top;" | | ||
Move | |||
| style="vertical-align:top;" | | | style="vertical-align:top;" | | ||
enter -1 to move the menu tab to the left, 1 to the right. | |||
|- | |- | ||
| style="vertical-align:top;" | | | style="vertical-align:top;" | | ||
URL | Redirect URL | ||
| style="vertical-align:top;" | | | style="vertical-align:top;" | | ||
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) | |||
====Example of customizing a main menu==== | |||
= | Let's customize the ''Home'' menu. | ||
[[file:myfield-Param-menu-accueil_en.png|600px]] | |||
[[file:myfield-Param-menu- | |||
[[file:Myfield-menu-resultat_en.png|600px]] | |||
[[file:Myfield-menu- | |||
====Example of customizing a menu and a secondary menu entry==== | |||
= | Let's customize the Commercial Proposals secondary menu and the New Proposal secondary menu entry. | ||
[[file:myfield-Param-menu-secondaire_en.png|800px]] | |||
[[file:myfield-Param-menu- | |||
[[file:myfield-Param-entree-menu-secondaire_en.png|800px]] | |||
[[file:myfield-Param-entree-menu- | |||
{{Note|The secondary menu entry will be moved down one rank with the code -1 in the Move field of its record}} | |||
{{Note| | Following the application of these two customizations, the secondary menu becomes: | ||
{| class="wikitable" | {| class="wikitable" | ||
| [[file:Myfield-entree-menu- | | [[file:Myfield-entree-menu-secondaire_en.png]] | ||
| style="vertical-align:top;" | | | style="vertical-align:top;" | | ||
rather than | |||
| [[file:Myfield-menu- | | [[file:Myfield-menu-secondaire_en.png]] | ||
|} | |} | ||
====Special case of secondary menu entries "List"==== | |||
=== | To differentiate secondary menu entries of the same name, enter the top-level menu to which they are attached separated by a hash mark ('''#'''): | ||
{| class="wikitable" | {| class="wikitable" | ||
| style="vertical-align:top;" | | | style="vertical-align:top;" | | ||
'' | ''Add to the label the secondary menu: Commercial proposals#List'' | ||
[[file:myfield_Liste-param_en.png|600px]] | |||
[[file:myfield_Liste- | |||
| style="vertical-align:top;" | | |||
| style="vertical-align:top;" | | To get | ||
[[file:myfield_Liste-param-menu_en.png]] | |||
[[file:myfield_Liste-param- | |||
|} | |} | ||
===Tabs=== | |||
== | ====Creating the myField tab==== | ||
==== | The myField creation page is accessible from the secondary menu link '''Patastools > MyField > New MyTab'''. | ||
[[file:myfield-Page-creation-onglet_en.png|600px]] | |||
[[file:myfield-Page-creation- | |||
{| | |||
{| | |||
| style="vertical-align:top;width:50%;" | | | style="vertical-align:top;width:50%;" | | ||
{| class="wikitable" | {| class="wikitable" | ||
| style="vertical-align:top;width:25%;" | | | style="vertical-align:top;width:25%;" | | ||
Type | myField Type | ||
| style="vertical-align:top;" | | | style="vertical-align:top;" | | ||
the field automatically filled in based on the menu link you clicked. | |||
|- | |- | ||
| style="vertical-align:top;" | | | style="vertical-align:top;" | | ||
Native Label | |||
| style="vertical-align:top;" | | | style="vertical-align:top;" | | ||
enter here the native label of the menu as it is displayed on the screen. | |||
|- | |- | ||
| style="vertical-align:top;" | | | style="vertical-align:top;" | | ||
Activation Context | |||
| style="vertical-align:top;" | | | style="vertical-align:top;" | | ||
The activation context allows you to limit the action of myFields to only the fields of the pages with the context indicated here. | |||
{{Note|<strong>Attention</strong>, | {{Note|<strong>Attention</strong>, for tabs, the context corresponds to the tabTitleText (the name of the first tab) (eg: "Third Party" for the Third Party element, "Product" for the Product element) }} | ||
If no context is entered, changes made to the tab by the myfield will apply to all fields with the same label on all records. | |||
|- | |- | ||
| style="vertical-align:top;" | | | style="vertical-align:top;" | | ||
Replacement text | |||
| style="vertical-align:top;" | | | style="vertical-align:top;" | | ||
text of your choice that will be displayed instead of the native label. | |||
|- | |- | ||
| style="vertical-align:top;" | | | style="vertical-align:top;" | | ||
Author | |||
| style="vertical-align:top;" | | | style="vertical-align:top;" | | ||
the name of the creator of the myField | |||
|} | |} | ||
| style="vertical-align:top;" | | |||
| style="vertical-align:top;" | | |||
{| class="wikitable" | {| class="wikitable" | ||
| style="vertical-align:top;width:25%;" | | | style="vertical-align:top;width:25%;" | | ||
Display | |||
| style="vertical-align:top;" | | | style="vertical-align:top;" | | ||
*Visible : | *Visible: the field will be displayed. This is the standard operation of Dolibarr. | ||
*Invisible : | *Invisible: the field will be absent from the cards | ||
* | *Hidden: the field will be absent from the cards but can be displayed (Show/Hide). | ||
|- | |- | ||
| style="vertical-align:top;" | | | style="vertical-align:top;" | | ||
Background Color | |||
| style="vertical-align:top;" | | | style="vertical-align:top;" | | ||
Use the color picker to determine the background color of the myField. | |||
|- | |- | ||
| style="vertical-align:top;" | | | style="vertical-align:top;" | | ||
Move | |||
| style="vertical-align:top;" | | | style="vertical-align:top;" | | ||
Enter -1 to move the menu tab to the left, 1 to move the right. | |||
|- | |- | ||
| style="vertical-align:top;" | | | style="vertical-align:top;" | | ||
URL | Redirect URL | ||
| style="vertical-align:top;" | | | style="vertical-align:top;" | | ||
Enter the URL of the page that will be displayed when the menu tab is clicked. If this field is left blank, the native URL of the menu will be kept. | |||
|} | |} | ||
|} | |} | ||
{{Note|Indicate here only the part of the URL following ''/htdocs/''}} | |||
{{Note| | Display request: see Operation section, below | ||
Following the creation of a myField, it will be necessary to define the access rights to the myFields by user groups from the secondary menu link of the same name (See section Configuring access rights). | |||
====Example of customizing a tab==== | |||
==== | Let's customize the tab sheet of the element sheets. | ||
[[file:myfield-Param-onglet-fiche_en.png|800px]] | |||
[[file:myfield-Param-onglet- | |||
The sheet then becomes | |||
[[file:myfield-Natif-fiche_en.png|800px]] | |||
[[file:myfield-Natif- | {{Note|If the tab is active, the color will be displayed on its edges}} | ||
{{Note| | |||
===Fields=== | |||
====Creating myField==== | |||
==== | The myField creation page is accessible from the secondary menu link '''Patastools > MyField > New MyField'''. | ||
[[file:myfield-Page-creation_en.png|600px]] | |||
[[file:myfield-Page- | |||
{| | |||
{| | |||
| style="vertical-align:top;width:50%;" | | | style="vertical-align:top;width:50%;" | | ||
{| class="wikitable" | {| class="wikitable" | ||
| style="vertical-align:top;width:25%;" | | | style="vertical-align:top;width:25%;" | | ||
Type | myField Type | ||
| style="vertical-align:top;" | | | style="vertical-align:top;" | | ||
the field automatically filled in based on the menu link you clicked. | |||
|- | |- | ||
| style="vertical-align:top;" | | | style="vertical-align:top;" | | ||
Native Label | |||
| style="vertical-align:top;" | | | style="vertical-align:top;" | | ||
enter here the native label of the field as it is displayed on the screen. | |||
|- | |- | ||
| style="vertical-align:top;" | | | style="vertical-align:top;" | | ||
Activation Context | |||
| style="vertical-align:top;" | | | style="vertical-align:top;" | | ||
the activation context allows you to limit the action of myFields to only the fields of the pages with the context indicated here. | |||
If no context is entered, changes made to the tab by the myfield will apply to all fields with the same label on all records. | |||
[[#Activation context|List of main contexts]] | |||
[[# | |||
|- | |- | ||
| style="vertical-align:top;" | | | style="vertical-align:top;" | | ||
Replacement text | |||
| style="vertical-align:top;" | | | style="vertical-align:top;" | | ||
text of your choice that will be displayed instead of the native label. | |||
|- | |- | ||
| style="vertical-align:top;" | | | style="vertical-align:top;" | | ||
Author | |||
| style="vertical-align:top;" | | | style="vertical-align:top;" | | ||
the name of the creator of the myField | |||
|} | |} | ||
| style="vertical-align:top;" | | |||
| style="vertical-align:top;" | | |||
{| class="wikitable" | {| class="wikitable" | ||
| style="vertical-align:top;width:25%;" | | | style="vertical-align:top;width:25%;" | | ||
Display | |||
| style="vertical-align:top;" | | | style="vertical-align:top;" | | ||
*Visible : | *Visible: the field will be displayed. This is the standard operation of Dolibarr. | ||
*Invisible : | *Invisible: the field will be absent from the cards | ||
* | *Hidden: the field will be absent from the cards but can be displayed (Show/Hide). | ||
{{Note| | {{Note|on the latest versions of the module, (Show/Hide) is no longer used, you must now click on the Dolibarr version number (top right)|warn}} | ||
|- | |||
| style="vertical-align:top;" | | |||
Background color | |||
| style="vertical-align:top;" | | |||
use the color selector to determine the background color of the myField. | |||
|- | |- | ||
| style="vertical-align:top;" | | | style="vertical-align:top;" | | ||
Move | |||
| style="vertical-align:top;" | | | style="vertical-align:top;" | | ||
enter 1 to move up one field, -1 to move down one field. | |||
|- | |- | ||
| style="vertical-align:top;" | | | style="vertical-align:top;" | | ||
Default value | |||
| style="vertical-align:top;" | | | style="vertical-align:top;" | | ||
|- | |- | ||
| style="vertical-align:top;" | | | style="vertical-align:top;" | | ||
Input field size | |||
| style="vertical-align:top;" | | | style="vertical-align:top;" | | ||
to be defined according to your needs. If left blank, the native value of the field is kept. | |||
|- | |- | ||
| style="vertical-align:top;" | | | style="vertical-align:top;" | | ||
Mandatory: | |||
| style="vertical-align:top;" | | | style="vertical-align:top;" | | ||
check this box to make entering values in the field mandatory to save the creation or modifications of the page | |||
{{Note|The control of the field in creation and modification is only carried out if you enter the edition of the field itself|warn}} | |||
|- | |- | ||
| style="vertical-align:top;" | | | style="vertical-align:top;" | | ||
Input mask | |||
| style="vertical-align:top;" | | | style="vertical-align:top;" | | ||
the input mask can be configured with the following characters: | |||
*a for a letter (A-Z,a-z) | |||
*9 for a number (0-9) | |||
*for an alphanumeric character (A-Z,a-z,0-9) | |||
:You can add the characters you want to the field to make up your mask. For example, if you want to add an international code to the phone field, the mask will be: +0099-(9)999999999 | |||
*UPPERCASE to force uppercase input. | |||
*LOWERCASE to force lowercase input. | |||
|- | |- | ||
| style="vertical-align:top;" | | | style="vertical-align:top;" | | ||
Display request | |||
| style="vertical-align:top;" | | | style="vertical-align:top;" | | ||
See Operation section | |||
|} | |} | ||
|} | |} | ||
{{Note|Moving a field in a form is only done within its table. It is therefore possible to move a field up or down, but not to change its column}} | |||
{{Note| | |||
Following the creation of a field type myField, it will be necessary to define the access rights to the myFields by user groups from the secondary menu link of the same name (See section Configuring access rights). | |||
====Example of customizing a field==== | |||
==== | Let's customize the field ''Id. prof. 2 (SIRET)'' of third-party files. | ||
{| class="wikitable" | {| class="wikitable" | ||
|- style="vertical-align:top;" | |- style="vertical-align:top;" | ||
| [[file:myfield_Param- | | [[file:myfield_Param-champ_en.png|600px]] | ||
| | | The field has been set to invisible with a number input mask (999 999 999 99999) | ||
|- style="vertical-align:top;" | |- style="vertical-align:top;" | ||
| [[file:Myfield- | | [[file:Myfield-champ_en.png|600px]] | ||
[[file:myfield-Masque_en.png]] | |||
[[file:myfield- | |||
| | | | ||
By clicking on the Show/Hide link above the table, the field will be displayed according to the settings saved on the myField sheet | |||
When editing the field, the mask will be activated and will only allow the predefined entry and its completion checked (made mandatory) to prevent the page from being saved without it being filled in. | |||
|} | |} | ||
===Lists=== | |||
It is possible to modify the fields of the native lists of dolibarr (the one with a field selection icon at the end of the list) | |||
====Creating myField==== | |||
= | List myfields allow you to limit the display of fields. | ||
It is necessary to open the list page to retrieve information specific to this type of myField | |||
* the activation context | |||
* | * the untranslated label of the field | ||
* | |||
====Example of setting==== | |||
= | We will modify the "Third party" column on the list of interventions | ||
[[file:Myfield-masque-tiers_en.png|600px]] | |||
[[file:Myfield-masque- | |||
Depending on the permissions, the field will also be inaccessible in the field selector. | |||
[[file:myfield_Liste-contrats_en.png|600px]] | |||
[[file:myfield_Liste- | |||
{{Note|If you make a list myField invisible, it will be invisible to all users. To hide it only from one or more groups of users, leave it visible and then add access rights!}} | |||
{{Note| | |||
=== Buttons === | |||
It is possible to modify the buttons present on the dolibarr files | |||
====Creation of myField==== | |||
= | Button myfields allow you to make the button invisible, replace the label, the url associated with the button and make its access visible according to the result of an SQL query | ||
[[file:myfield-creation-bouton_en.png|600px]] | |||
[[file:myfield-creation- | |||
{{Note|With the native Dolibarr theme, the button label is capitalized, so you must use the original text that you retrieve with the right click and the inspect menu.}} | |||
{{Note| | |||
=Conditional display SQL query= | |||
The processing query will condition the display of the fields according to the correspondence of the object to the query. It is then possible, for example, to display different fields depending on whether the object is a product or a service. | |||
It is possible to transmit two values as parameters: | |||
* #ID#: the id of the main object of the page | |||
* #ID# : | * #USERID#: the id of the active user | ||
* #USERID# : | |||
< | <span id="Fonctionnement"></span> | ||
== | ==How it works== | ||
Enter here the display query applicable to the fields in the following example: | |||
#SEL# allows you to replace the SELECT of the SQL query which will be blocked by Dolibarr's native security (SQL Injection) | |||
#SEL# | |||
''#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#; '' | ''#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 allows you to authorize or not the global display of the field | |||
read | write allows you to authorize or not its modification (not necessary in the case of a button or a tab...) | ||
write | |||
If the value is 0, the field is hidden, otherwise it is displayed | |||
Be careful, if we leave the field parameter hidden, it will not appear regardless of the value | |||
==Example== | |||
With the following myfield | |||
[[file:myfield_Creation_requete_en.png|800px]] | |||
{| class="wikitable" | |||
[[file:myfield_Creation_requete.png| | |- style="vertical-align:top;" | ||
| We obtain the following sheet on a '''product''' | |||
[[file:myfield_Creation_requete_result_en.png|400px]] | |||
| While on the sheet of a '''service''' | |||
[[file:myfield_Creation_requete-fiche_en.png|400px]] | |||
|} | |} | ||
=Setting access rights to myFields, tabs and menus= | |||
==Configuring access rights== | |||
== | As an administrator user, all myFields are visible to you. | ||
{{Note|On the MyField module home page, the application of customizations is disabled}} | |||
{{Note| | |||
If you have not defined any user groups, myfields are displayed on all users' interfaces. | |||
From the secondary menu entry '''Patas-Tools > MyField > tab access rights''', configure the accesses of the user groups: | |||
[[file:myfield-Droits-d-acces_en.png|600px]] | |||
[[file:myfield-Droits-d- | |||
There are four access rights: | |||
{| class="wikitable" | |||
{| class="wikitable" | |- style="vertical-align:top;" | ||
|- style="vertical-align:top;" | | [[File:lecture-off.png]] Access blocked | ||
| [[File:lecture-off.png]] | [[file:lecture-on.png]] Access read | ||
[[file:lecture-on.png]] | | [[file:modif-of.png]] Edit blocked | ||
| [[file:modif-of.png]] | [[file:modif-on.png]] Edit access | ||
[[file:modif-on.png]] | |||
|} | |} | ||
==Behavior according to access rights== | |||
===Blocked in access ([[file:lecture-off.png]]) === | |||
=== | |||
{| class="wikitable" | |||
{| class="wikitable" | |- style="vertical-align:top;" | ||
|- style="vertical-align:top;" | | [[file:myfield-User-lecture-_en.png|600px]] | ||
| [[file:myfield-User-lecture-.png|600px]] | | The field will be hidden from users in the group. They will not be able to view it | ||
| | |||
the ''Show/Hide'' link will not be active | |||
|} | |} | ||
=== | ===Read access but blocked from editing ([[file:lecture-on.png]][[file:modif-of.png]]) === | ||
{| class="wikitable" | {| class="wikitable" | ||
|- style="vertical-align:top;" | |- style="vertical-align:top;" | ||
| [[file:myfield-User-lecture-.png|600px]] | | [[file:myfield-User-lecture-_en.png|600px]] | ||
| | | Users in the group will be able to view the field, but will not be able to edit its content. | ||
|} | |} | ||
=== | ===Read access and Edit access ([[file:lecture-on.png]][[file:modif-on.png]]) === | ||
{| class="wikitable" | {| class="wikitable" | ||
|- style="vertical-align:top;" | |- style="vertical-align:top;" | ||
| [[file:myfield-User-lecture+-modif+.png|600px]] | | [[file:myfield-User-lecture+-modif+_en.png|600px]] | ||
| | | | ||
Users in the group will be able to view and edit the field if their group or user permissions allow them to do so. The field settings then apply (mandatory, input mask, etc.) | |||
|} | |} | ||
=Other features= | |||
==Importing myFields== | |||
== | It is possible to save a list of myfields and their settings by importing an XML file. | ||
From the '''Patas-M Tools > MyField > Import a tab''' page, paste the XML file into the input area and click on the '''Start import''' button. | |||
{{Note|If you check the Overwrite previous data box, your list of myfields will be limited to those present in the file you are importing|warn}} | |||
{{Note| | Then configure the users' access rights to the myField. | ||
==Activation context== | |||
A list of all available contexts is present on the dolibarr wiki: | |||
https://wiki.dolibarr.org/index.php?title=Hooks_System#List_of_Contexts_available_in_Dolibarr | |||
https://wiki.dolibarr.org/index.php?title= | |||
some of the most common | |||
{| | |||
{| | | | ||
| | |||
{| class="wikitable" | {| class="wikitable" | ||
|- style="background-color:orange; font-weight:bold;" | |- style="background-color:orange; font-weight:bold;" | ||
| | | Card | ||
| | | Context | ||
|- | |- | ||
| | | Member | ||
| membertypecard | | membertypecard | ||
|- | |- | ||
| | | Categories | ||
| categorycard | | categorycard | ||
|- | |- | ||
| | | Orders | ||
| ordercard | | ordercard | ||
|- | |- | ||
| | | Supplier order | ||
| ordersuppliercard | | ordersuppliercard | ||
|- | |- | ||
| Ligne 787 : | Ligne 579 : | ||
| contactcard | | contactcard | ||
|- | |- | ||
| | | Contract | ||
| contractcard | | contractcard | ||
|- | |- | ||
| | | Donation | ||
| doncard | | doncard | ||
|- | |- | ||
| | | Warehouse | ||
| warehousecard | | warehousecard | ||
|- | |- | ||
| | | Shipping | ||
| expeditioncard | | expeditioncard | ||
|- | |- | ||
| | | Customer invoice | ||
| invoicecard | | invoicecard | ||
|- | |- | ||
| | | Supplier invoice | ||
| suppliercard | | suppliercard | ||
|} | |} | ||
| style="vertical-align:top;" | | |||
| style="vertical-align:top;" | | |||
{| class="wikitable" | {| class="wikitable" | ||
|- style="background-color:orange; font-weight:bold;" | |- style="background-color:orange; font-weight:bold;" | ||
| | | Sheet | ||
| | | Context | ||
|- | |- | ||
| Intervention | | Intervention | ||
| interventioncard | | interventioncard | ||
|- | |- | ||
| | | Delivery | ||
| deliverycard | | deliverycard | ||
|- | |- | ||
| | | Expense report | ||
| tripandexpensecard | | tripandexpensecard | ||
|- | |- | ||
| | | Product | ||
| productcard | | productcard | ||
|- | |- | ||
| | | Project | ||
| projectcard | | projectcard | ||
|- | |- | ||
| | | Commercial proposal | ||
| propalcard | | propalcard | ||
|- | |- | ||
| | | Customer payment | ||
| | | paymentcard | ||
|- | |- | ||
| | | Supplier payment | ||
| paymentsupplier | | paymentsupplier | ||
|- | |- | ||
| | | Salary | ||
| salarycard | | salarycard | ||
|- | |- | ||
| | | Task | ||
| projecttaskcard | | projecttaskcard | ||
|- | |- | ||
| | | Third party | ||
| thirdpartycard | | thirdpartycard | ||
|- | |- | ||
| | | User | ||
| usercard | | usercard | ||
|} | |} | ||
|} | |} | ||
=Frequently Asked Questions= | |||
=Questions | == General == | ||
== | This chapter lists the difficulties encountered with the module. You will therefore find answers to its use. | ||
If you encounter an error other than those described below when using this module: | |||
#Disable and reactivate the module, | |||
# | #Check on the ChangeLog if a new version has been published, | ||
# | #Re-install/update the module, | ||
# | #Check that replacing native Dolibarr files is not necessary for the module to work properly. | ||
# | #Check that no incompatibility with another module is indicated. If necessary, follow our recommendations. | ||
# | |||
If, despite these manipulations, the error persists, contact us using the dedicated form (http://docs.patas-monkey.com/support/). | |||
This form is the preferred contact method for any difficulty of use or bug report. Also, we thank you for not multiplying the exchange channels for the same object. | |||
== Displaying a message at the top of Dolibarr pages== | |||
If your Dolibarr pages display a message similar to the following image, it is not an error message, but the display of the contexts of the current page. To no longer see these lines displayed, disable the display of the context | |||
(see Configuration). | |||
( | |||
[[file:Myfield-Message-contexte.png]] | [[file:Myfield-Message-contexte.png]] | ||
==Ordering error message== | |||
Some pages of some versions of Dolibarr have an error in their code preventing the correct application of field customization. MyField allows you to identify them in order to correct them. | |||
The error message is displayed at the bottom of the page and is as follows: | |||
[[file:myfield_Erreur-dbclose-message.png]] | |||
[[file:myfield_Erreur-dbclose-message.png]] | |||
Using the URL of the page, open the Dolibarr core file to edit it. For example, if the page containing the message is ''http://.../htdocs/custom/myField/admin/extrafields.php'', successively open the folders ''htdocs'', ''custom'', ''myField'', ''admin'' and open the file ''extrafields.php''. | |||
The error comes from the inversion of the lines ''llxFooter();'' and ''$db->close();'' at the end of the file. | |||
{| class="wikitable" style="width:60%;" | |||
{| class="wikitable" style="width:60%;" | |- style="vertical-align:top;" | ||
|- style="vertical-align:top;" | | Edit the page code to get | ||
| | |||
[[file:Erreur-dbclose-correction.png]] | [[file:Erreur-dbclose-correction.png]] | ||
| | | instead of | ||
[[file:Erreur-dbclose.png]] | [[file:Erreur-dbclose.png]] | ||
|} | |} | ||
==Multicompany== | ==Multicompany== | ||
With the multicompany module, it is necessary to activate the module on each entity | |||
Dernière version du 5 novembre 2025 à 18:23
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
|
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
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 |
These entries will display the page for creating a new myField according to its type:
|
| 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.
|
|
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)
Let's customize the Home menu.
Let's customize the Commercial Proposals secondary menu and the New Proposal secondary menu entry.
| The secondary menu entry will be moved down one rank with the code -1 in the Move field of its record |
Following the application of these two customizations, the secondary menu becomes:
|
rather than |
|
To differentiate secondary menu entries of the same name, enter the top-level menu to which they are attached separated by a hash mark (#):
|
Add to the label the secondary menu: Commercial proposals#List |
To get |
Tabs
Creating the myField tab
The myField creation page is accessible from the secondary menu link Patastools > MyField > New MyTab.
| Indicate here only the part of the URL following /htdocs/ |
Display request: see Operation section, below
Following the creation of a myField, it will be necessary to define the access rights to the myFields by user groups from the secondary menu link of the same name (See section Configuring access rights).
Example of customizing a tab
Let's customize the tab sheet of the element sheets.
The sheet then becomes
| If the tab is active, the color will be displayed on its edges |
Fields
Creating myField
The myField creation page is accessible from the secondary menu link Patastools > MyField > New MyField.
|
|
| Moving a field in a form is only done within its table. It is therefore possible to move a field up or down, but not to change its column |
Following the creation of a field type myField, it will be necessary to define the access rights to the myFields by user groups from the secondary menu link of the same name (See section Configuring access rights).
Example of customizing a field
Let's customize the field Id. prof. 2 (SIRET) of third-party files.
| The field has been set to invisible with a number input mask (999 999 999 99999) | |
|
By clicking on the Show/Hide link above the table, the field will be displayed according to the settings saved on the myField sheet
|
Lists
It is possible to modify the fields of the native lists of dolibarr (the one with a field selection icon at the end of the list)
Creating myField
List myfields allow you to limit the display of fields. It is necessary to open the list page to retrieve information specific to this type of myField
- the activation context
- the untranslated label of the field
Example of setting
We will modify the "Third party" column on the list of interventions
Depending on the permissions, the field will also be inaccessible in the field selector.
| If you make a list myField invisible, it will be invisible to all users. To hide it only from one or more groups of users, leave it visible and then add access rights! |
Buttons
It is possible to modify the buttons present on the dolibarr files
Creation of myField
Button myfields allow you to make the button invisible, replace the label, the url associated with the button and make its access visible according to the result of an SQL query
| With the native Dolibarr theme, the button label is capitalized, so you must use the original text that you retrieve with the right click and the inspect menu. |
Conditional display SQL query
The processing query will condition the display of the fields according to the correspondence of the object to the query. It is then possible, for example, to display different fields depending on whether the object is a product or a service. It is possible to transmit two values as parameters:
- #ID#: the id of the main object of the page
- #USERID#: the id of the active user
How it works
Enter here the display query applicable to the fields in the following example:
#SEL# allows you to replace the SELECT of the SQL query which will be blocked by Dolibarr's native security (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 allows you to authorize or not the global display of the field write allows you to authorize or not its modification (not necessary in the case of a button or a tab...)
If the value is 0, the field is hidden, otherwise it is displayed Be careful, if we leave the field parameter hidden, it will not appear regardless of the value
Example
With the following myfield
| We obtain the following sheet on a product | While on the sheet of a service |
Configuring access rights
As an administrator user, all myFields are visible to you.
| On the MyField module home page, the application of customizations is disabled |
If you have not defined any user groups, myfields are displayed on all users' interfaces.
From the secondary menu entry Patas-Tools > MyField > tab access rights, configure the accesses of the user groups:
There are four access rights:
Behavior according to access rights
Blocked in access (
)
| The field will be hidden from users in the group. They will not be able to view it
the Show/Hide link will not be active |
Read access but blocked from editing (
)
| Users in the group will be able to view the field, but will not be able to edit its content. |
Read access and Edit access (
)
|
Users in the group will be able to view and edit the field if their group or user permissions allow them to do so. The field settings then apply (mandatory, input mask, etc.) |
Other features
Importing myFields
It is possible to save a list of myfields and their settings by importing an XML file. From the Patas-M Tools > MyField > Import a tab page, paste the XML file into the input area and click on the Start import button.
| If you check the Overwrite previous data box, your list of myfields will be limited to those present in the file you are importing |
Then configure the users' access rights to the myField.
Activation context
A list of all available contexts is present on the dolibarr wiki: https://wiki.dolibarr.org/index.php?title=Hooks_System#List_of_Contexts_available_in_Dolibarr
some of the most common
|
|
Frequently Asked Questions
General
This chapter lists the difficulties encountered with the module. You will therefore find answers to its use. If you encounter an error other than those described below when using this module:
- Disable and reactivate the module,
- Check on the ChangeLog if a new version has been published,
- Re-install/update the module,
- Check that replacing native Dolibarr files is not necessary for the module to work properly.
- Check that no incompatibility with another module is indicated. If necessary, follow our recommendations.
If, despite these manipulations, the error persists, contact us using the dedicated form (http://docs.patas-monkey.com/support/). This form is the preferred contact method for any difficulty of use or bug report. Also, we thank you for not multiplying the exchange channels for the same object.
Displaying a message at the top of Dolibarr pages
If your Dolibarr pages display a message similar to the following image, it is not an error message, but the display of the contexts of the current page. To no longer see these lines displayed, disable the display of the context (see Configuration).
Ordering error message
Some pages of some versions of Dolibarr have an error in their code preventing the correct application of field customization. MyField allows you to identify them in order to correct them.
The error message is displayed at the bottom of the page and is as follows:
Using the URL of the page, open the Dolibarr core file to edit it. For example, if the page containing the message is http://.../htdocs/custom/myField/admin/extrafields.php, successively open the folders htdocs, custom, myField, admin and open the file extrafields.php.
The error comes from the inversion of the lines llxFooter(); and $db->close(); at the end of the file.
| Edit the page code to get | instead of |
Multicompany
With the multicompany module, it is necessary to activate the module on each entity








