https://wiki.patas-monkey.com/api.php?action=feedcontributions&user=Nomi&feedformat=atomDocumentations Patas-monkey - Contributions de l’utilisateur [fr]2024-03-28T10:24:49ZContributions de l’utilisateurMediaWiki 1.34.2https://wiki.patas-monkey.com/index.php?title=Accueil&diff=941Accueil2021-03-30T12:50:54Z<p>Nomi : </p>
<hr />
<div>Bonjour et Bienvenue sur notre wiki, vous trouverez ce site les documentations des modules que nous développons et maintenons.<br />
<br />
Le but étant de rendre accessible la documentation directement à partir des pages du module<br />
<br />
<br />
{{Note|L'ensemble des modules s'installent de manière standard à Dolibarr.<br />
<br />
Vous trouverez dans notre '''[[Guide d'installation]]''' les informations nécessaires pour les installer sur votre environnement.<br />
}}<br />
<br />
== Liste des documentations ==<br />
<br />
{|<br />
|-<br />
| <br />
{| class="wikitable"<br />
|-<br />
! scope="col"| GPAO<br />
! scope="col"| RH<br />
! scope="col"| Amélioration<br />
! scope="col"| Personnalisation<br />
|-<br />
| style="background: lightyellow;" | [[Equipement]]<br />
| style="background: lightgreen;" | [[MatchR]]<br />
| style="background: lightyellow;" | [[customLine]]<br />
| style="background: lightgreen;" | [[myField]]<br />
|-<br />
| style="background: lightyellow;" | [[Factory]]<br />
| style="background: lightblue;" | [[Management]]<br />
| style="background: lightgreen;" | [[customTabs]]<br />
| style="background: lightyellow;" | [[myList]]<br />
|- <br />
| style="background: lightyellow;" | [[reStock]]<br />
| style="background: lightgreen;" | [[mySchedule]]<br />
| style="background: lightyellow;" | [[customTooltip]]<br />
| style="background: lightgreen;" | [[myClock]]<br />
|-<br />
| style="background: lightblue;" | [[Localise]]<br />
| style="background: lightblue;" | [[RmindR]]<br />
| style="background: lightblue;" | [[customLink]]<br />
| style="background: lightblue;" | [[myPrint]]<br />
|-<br />
| style="background: lightyellow;" | [[StockMovR]]<br />
| Process<br />
| moreDesc<br />
| style="background: lightblue;" | [[myDoliboard]]<br />
|-<br />
| style="background: lightblue;" | [[Transporteur]]<br />
| style="background: lightblue;" | [[Portofolio]] <br />
| style="background: lightblue;" | [[extraOdt]]<br />
| myDiscount<br />
|-<br />
| myBooking <br />
| <br />
| style="background: lightblue;" | [[coefPricR]]<br />
| Periodic<br />
|-<br />
| <br />
| <br />
| SupplierPricR <br />
| Vadrouille<br />
|-<br />
| <br />
| <br />
| myBroadcast <br />
| ExtraHoney<br />
|-<br />
| <br />
| <br />
| style="background: lightgreen;" | [[Extraprice]]<br />
| style="background: lightblue;" | [[ProjectBudget]]<br />
|}<br />
<br />
| style="vertical-align:top;" |<br />
''' Légende '''<br />
* sans couleur : documentation pas encore en ligne<br />
* <span style="background-color:lightblue">en bleue </span>: ancienne documentation au format pdf<br />
* <span style="background-color:lightyellow">en jaune </span> : documentation en cours de réécriture au format wiki<br />
* <span style="background-color:lightgreen">en vert </span> : documentation ok<br />
<br />
|}<br />
<br />
Vous trouverez aussi bientôt quelques tutoriaux et autres réponses à des questions fréquemment posées.</div>Nomihttps://wiki.patas-monkey.com/index.php?title=MyField&diff=940MyField2021-03-30T12:49:51Z<p>Nomi : </p>
<hr />
<div>{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[File:Myfield-250x250.png]]<br />
| Ce module permet de personnaliser les libellés des menus, onglets, champs des fiches et listes de Dolibarr.<br />
Vous pouvez choisir vous-même le libellé de vos menus, le libellé des onglets et champs des fiches et listes<br />
|}<br />
<br />
== Présentation ==<br />
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...<br />
<br />
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.<br />
<br />
MyField permet encore de cacher des menus à des groupes d'utilisateurs et d'en modifier l'URL de destination.<br />
<br />
== Paramétrage ==<br />
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 [[file:doli-setup.png]] ou l'icône [[file:doli-setup-old.png]] en bout de ligne.<br />
<br />
[[file:myfield_Configuration.png|600px]]<br />
<br />
=== Page de configuration du module ===<br />
==== Activation du contexte pour le développement====<br />
MyField permet d'afficher sur certaines pages de Dolibarr les contextes utilisables pour limiter les actions de personnalisations des myFields.<br />
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.<br />
Paramétrer l'affichage des contexte sur vos pages vous permettra de les identifier pour paramétrer au mieux vos myfields.<br />
<br />
{| class="wikitable"<br />
| [[file:myfield-Message-contexte.png]]<br />
| style="vertical-align:top;" | <br />
L'activation de l'affichage des contextes se traduit par des messages du type ci-contre<br />
|} <br />
<br />
==== Droits des administrateurs====<br />
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.<br />
<br />
==== Remplacement des boutons natifs====<br />
MyField permet le remplacement des boutons standards de Dolibarr par des icônes.<br />
{| class="wikitable"<br />
| [[file:myfield_Button-replace.png|300px]]<br />
| au lieu de <br />
| [[file:myfield_Button-standard.png|500px]]<br />
|}<br />
<br />
==== Information de support ==== <br />
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 :<br />
[[file:Myfield_Technical-information.png||800px]]<br />
<br />
===Permissions===<br />
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 ([[file:tick.png]]).<br />
<br />
====Permissions utilisateurs et groupes====<br />
{| class="wikitable"<br />
| [[file:myfield-Permissions-utilisateur.png|600px]]<br />
| style="vertical-align:top;" | <br />
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<br />
|}<br />
<br />
====Permissions par défaut====<br />
{| class="wikitable"<br />
| [[file:myfield-Permissions-defaut.png|600px]]<br />
| style="vertical-align:top;" | <br />
Les permissions par défaut ('''Accueil > Configuration > Sécurité > Permissions par défaut'''), accordées à tout utilisateur créé ultérieurement à l'installation du module, si il n'est pas ajouté à un groupe, sont les suivantes<br />
|}<br />
<br />
== Démarrage ==<br />
<br />
Les fonctionnalités de MyField sont accessibles depuis l'onglet de menu principal Patastools.<br />
Votre menu secondaire présente alors les entrées de menu suivantes :<br />
<br />
{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| style='border-style: none;' | '''MyField'''<br />
| L'entrée principale affiche la liste de tous les myFields de votre environnement<br />
|- style="vertical-align:top;" <br />
| style='border-style: none;' | <br />
'''Nouveau myField'''<br /><br />
'''Nouveau myTab'''<br /><br />
'''Nouveau myField de liste'''<br /> <br />
'''Nouveau myMenu'''<br />
| Ces entrées afficheront la page de création d'un nouveau myField selon son type :<br />
* champ de fiche <br />
* onglet<br />
* champs de liste <br />
* menu <br />
|- style="vertical-align:top;" <br />
| style='border-style: none;' | '''Liste des éléments'''<br />
| Cette entrée affichera également la liste des myFields enregistrés sur votre environnement <br />
|- style="vertical-align:top;" <br />
| style='border-style: none;' | '''Droits d'accès aux éléments'''<br />
| Cette page vous permettra de paramétrer les habilitations des groupes d'utilisateurs aux fonctionnalités de MyFields, tabs et menus.<br />
|- style="vertical-align:top;"<br />
| style='border-style: none;' | '''Import XML'''<br />
| Cette entré affichera une page permettant de copier un fichier d'import d'un myfield au format XML.<br />
|}<br />
<br />
== Personnalisation d'un menu avec myField ==<br />
=== Création du myField ===<br />
La page de création d'un myField de type menu est accessible depuis le lien de menu secondaire '''Patas-tools > MyField > Nouveau myMenu.'''<br />
[[File:Myfield-Page-creation-menu.png|800px]]<br />
<br />
<br />
{| <br />
| style="vertical-align:top;width:50%;" |<br />
{| class="wikitable"<br />
| style="vertical-align:top;width:25%;" |<br />
Type de myField <br />
| style="vertical-align:top;" | <br />
le champ automatiquement rempli en fonction du lien de menu sur lequel vous avez cliqué pour afficher cette page de création (menu).<br />
|-<br />
| style="vertical-align:top;" |<br />
Libellé natif <br />
| style="vertical-align:top;" | <br />
saisissez ici le libellé natif du menu tel qu'il est affiché sur votre interface.<br />
|-<br />
| style="vertical-align:top;" |<br />
Type de menu <br />
| style="vertical-align:top;" | <br />
sélectionnez dans la liste déroulante le type de menu que vous souhaitez personnaliser selon qu'il s'agit d'un menu principal, d'un menu secondaire ou d'une entrée de menu secondaire.<br />
|-<br />
| style="vertical-align:top;" |<br />
Texte de remplacement <br />
| style="vertical-align:top;" | <br />
texte de votre choix qui sera affiché à la place du libellé natif.<br />
|-<br />
| style="vertical-align:top;" |<br />
Auteur<br />
| style="vertical-align:top;" | <br />
le nom du créateur du myField<br />
|}<br />
<br />
| style="vertical-align:top;" | <br />
{| class="wikitable"<br />
| style="vertical-align:top;width:25%;" |<br />
Affichage<br />
| style="vertical-align:top;" | <br />
*Visible : le champ sera affiché. Il s'agit du fonctionnement standard de Dolibarr.<br />
*Invisible : le champ sera absent des fiches<br />
*Caché : le champ sera absent des fiches mais pourra être affiché (Show/Hide).<br />
|-<br />
| style="vertical-align:top;" |<br />
Couleur de fond <br />
| style="vertical-align:top;" | <br />
utilisez le sélecteur de couleur pour déterminer la couleur de fond du champ.<br />
|-<br />
| style="vertical-align:top;" |<br />
Déplacement <br />
| style="vertical-align:top;" | <br />
saisissez -1 pour déplacer l'onglet du menu vers la gauche, 1 vers la droite.<br />
|-<br />
| style="vertical-align:top;" |<br />
URL de redirection <br />
| style="vertical-align:top;" | <br />
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.<br />
|}<br />
<br />
|}<br />
<br />
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)<br />
<br />
===Exemple de personnalisation d'un menu principal===<br />
Personnalisons le menu ''Accueil''.<br />
<br />
[[file:myfield-Param-menu-accueil.png|600px]]<br />
<br />
[[file:Myfield-menu-resultat.png|600px]]<br />
<br />
===Exemple de personnalisation d'un menu et d'une entrée de menu secondaire===<br />
Personnalisons le menu secondaire Propositions commerciales et l'entrée de menu secondaire Nouvelle proposition.<br />
<br />
[[file:myfield-Param-menu-secondaire.png|600px]] <br />
<br />
[[file:myfield-Param-entree-menu-secondaire.png|600px]] <br />
<br />
{{Note|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}}<br />
Suite à l'application de ces deux personnalisations, le menu secondaire devient :<br />
<br />
{| class="wikitable"<br />
| [[file:Myfield-entree-menu-secondaire.png]]<br />
| style="vertical-align:top;" |<br />
plutôt que<br />
| [[file:Myfield-menu-secondaire.png]] <br />
|}<br />
<br />
===Cas particulier de entrées de menu secondaire "Liste"===<br />
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 ('''#''') :<br />
<br />
{| class="wikitable"<br />
| style="vertical-align:top;" |<br />
''Ajoutez au libellé le menu secondaire : Propositions commerciales#Liste''<br />
<br />
[[file:myfield_Liste-param.png|600px]] <br />
<br />
| style="vertical-align:top;" | <br />
Pour obtenir <br />
<br />
[[file:myfield_Liste-param-menu.png]]<br />
|}<br />
<br />
==Personnalisation d'un onglet avec myField==<br />
===Création du myField===<br />
La page de création d'un myField est accessible depuis le lien de menu secondaire '''Patastools > MyField > Nouveau MyTab'''.<br />
<br />
[[file:myfield-Page-creation-onglet.png|600px]]<br />
<br />
{| <br />
| style="vertical-align:top;width:50%;" |<br />
{| class="wikitable"<br />
| style="vertical-align:top;width:25%;" |<br />
Type de myField <br />
| style="vertical-align:top;" | <br />
le champ automatiquement rempli en fonction du lien de menu sur lequel vous avez cliqué.<br />
|-<br />
| style="vertical-align:top;" |<br />
Libellé natif <br />
| style="vertical-align:top;" | <br />
saisissez ici le libellé natif du menu tel qu'il est affiché à l'écran.<br />
|-<br />
| style="vertical-align:top;" |<br />
Contexte d'activation <br />
| style="vertical-align:top;" | <br />
le contexte d'activation permet de limiter l'action des myFields sur les seuls champs des pages comportant le contexte indiqué ici. <br />
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.<br />
<br />
[[#Context_d.27activation|Liste des principaux contexte ]]<br />
<br />
|-<br />
| style="vertical-align:top;" |<br />
Texte de remplacement <br />
| style="vertical-align:top;" | <br />
texte de votre choix qui sera affiché à la place du libellé natif.<br />
|-<br />
| style="vertical-align:top;" |<br />
Auteur<br />
| style="vertical-align:top;" | <br />
le nom du créateur du myField<br />
<br />
|}<br />
<br />
| style="vertical-align:top;" | <br />
{| class="wikitable"<br />
| style="vertical-align:top;width:25%;" |<br />
Affichage<br />
| style="vertical-align:top;" | <br />
*Visible : le champ sera affiché. Il s'agit du fonctionnement standard de Dolibarr.<br />
*Invisible : le champ sera absent des fiches<br />
*Caché : le champ sera absent des fiches mais pourra être affiché (Show/Hide).<br />
<br />
|-<br />
| style="vertical-align:top;" |<br />
Couleur de fond <br />
| style="vertical-align:top;" | <br />
utilisez le sélecteur de couleur pour déterminer la couleur de fond du myField.<br />
|-<br />
| style="vertical-align:top;" |<br />
Déplacement <br />
| style="vertical-align:top;" | <br />
saisissez -1 pour déplacer l'onglet du menu vers la gauche, 1 vers la droite.<br />
|-<br />
| style="vertical-align:top;" |<br />
URL de redirection <br />
| style="vertical-align:top;" | <br />
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.<br />
|}<br />
<br />
|}<br />
<br />
<br />
{{Note|N'indiquez ici que la partie de l'URL suivant ''/htdocs/''}}<br />
Requête d'affichage : voir section Fonctionnement, ci-dessous<br />
<br />
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).<br />
<br />
===Exemple de personnalisation d'un onglet===<br />
Personnalisons l'onglet fiche des fiches des éléments.<br />
<br />
[[file:myfield-Param-onglet-fiche.png|600px]] <br />
<br />
La fiche devient alors <br />
<br />
[[file:myfield-Natif-fiche.png|600px]] <br />
{{Note|Si l'onglet est actif, la couleur sera affichée sur ses bords}}<br />
<br />
==Personnalisation d'un champ avec myField==<br />
===Création du myField===<br />
La page de création d'un myField est accessible depuis le lien de menu secondaire '''Patastools > MyField > Nouveau MyField'''.<br />
[[file:myfield-Page-creation.png|600px]] <br />
<br />
<br />
{| <br />
| style="vertical-align:top;width:50%;" |<br />
{| class="wikitable"<br />
| style="vertical-align:top;width:25%;" |<br />
Type de myField <br />
| style="vertical-align:top;" | <br />
le champ automatiquement rempli en fonction du lien de menu sur lequel vous avez cliqué.<br />
|-<br />
| style="vertical-align:top;" |<br />
Libellé natif <br />
| style="vertical-align:top;" | <br />
saisissez ici le libellé natif du champ tel qu'il est affiché à l'écran.<br />
|-<br />
| style="vertical-align:top;" |<br />
Contexte d'activation <br />
| style="vertical-align:top;" | <br />
le contexte d'activation permet de limiter l'action des myFields sur les seuls champs des pages comportant le contexte indiqué ici. <br />
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.<br />
<br />
[[#Context_d.27activation|Liste des principaux contexte ]]<br />
<br />
|-<br />
| style="vertical-align:top;" |<br />
Texte de remplacement <br />
| style="vertical-align:top;" | <br />
texte de votre choix qui sera affiché à la place du libellé natif.<br />
|-<br />
| style="vertical-align:top;" |<br />
Auteur<br />
| style="vertical-align:top;" | <br />
le nom du créateur du myField<br />
<br />
|}<br />
<br />
| style="vertical-align:top;" | <br />
{| class="wikitable"<br />
| style="vertical-align:top;width:25%;" |<br />
Affichage<br />
| style="vertical-align:top;" | <br />
*Visible : le champ sera affiché. Il s'agit du fonctionnement standard de Dolibarr.<br />
*Invisible : le champ sera absent des fiches<br />
*Caché : le champ sera absent des fiches mais pourra être affiché (Show/Hide).<br />
<br />
|-<br />
| style="vertical-align:top;" |<br />
Couleur de fond <br />
| style="vertical-align:top;" | <br />
utilisez le sélecteur de couleur pour déterminer la couleur de fond du myField.<br />
|-<br />
| style="vertical-align:top;" |<br />
Déplacement <br />
| style="vertical-align:top;" | <br />
saisissez 1 pour remonter d'un champ, -1 pour descendre. <br />
|-<br />
| style="vertical-align:top;" |<br />
Valeur par défaut <br />
| style="vertical-align:top;" | <br />
<br />
|-<br />
| style="vertical-align:top;" |<br />
Taille du champ de saisie <br />
| style="vertical-align:top;" | <br />
à définir selon vos besoins. Si laissé vide, la valeur native du champ est conservée.<br />
|-<br />
| style="vertical-align:top;" |<br />
Obligatoire : <br />
| style="vertical-align:top;" | <br />
cochez cette case pour rendre la saisie de valeurs dans le champ obligatoire pour enregistrer la création ou les modifications de la page<br />
{{Note|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|warn}}<br />
|-<br />
| style="vertical-align:top;" |<br />
Masque de saisie<br />
| style="vertical-align:top;" | <br />
le masque de saisie est paramétrable avec les caractères suivants :<br />
*a pour une lettre (A-Z,a-z)<br />
*9 pour un chiffre (0-9)<br />
*pour un caractère alphanumérique (A-Z,a-z,0-9)<br />
: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<br />
*UPPERCASE pour forcer la saisie en majuscule.<br />
|-<br />
| style="vertical-align:top;" |<br />
Requête d'affichage<br />
| style="vertical-align:top;" | <br />
Voir section Fonctionnement<br />
|}<br />
<br />
|}<br />
<br />
{{Note|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}}<br />
<br />
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).<br />
<br />
===Exemple de personnalisation d'un champ===<br />
Personnalisons le champ ''Id. prof. 2 (SIRET)'' des fiches de tiers.<br />
<br />
{| class="wikitable"<br />
|- style="vertical-align:top;"<br />
| [[file:myfield_Param-champ.png|600px]]<br />
| Le champ a été paramétré en tant qu'invisible avec un masque de saisie de chiffres (999 999 999 99999) <br />
<br />
|- style="vertical-align:top;"<br />
| [[file:Myfield-champ.png|600px]] <br />
<br />
[[file:myfield-Masque.png]]<br />
<br />
|<br />
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<br />
<br />
<br />
<br />
<br />
<br />
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.<br />
|}<br />
<br />
==Personnalisation d'un myField de liste==<br />
===Création du myField===<br />
Les mylist de liste permettent de limiter l'affichage de champs.<br />
Masquons le champ Tiers de la liste des contrats avec le myField suivant :<br />
[[file:Myfield-masque-tiers.png|600px]]<br />
<br />
[[#Context_d.27activation|Liste des principaux contexte ]]<br />
<br />
La liste ne contient plus le champs Tiers, et il n'est pas possible de le sélectionner dans le sélecteur de champs.<br />
<br />
[[file:myfield_Liste-contrats.png|600px]]<br />
<br />
{{Note|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 !}}<br />
<br />
=Requête SQL de traitement=<br />
==Fonctionnement==<br />
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.<br />
<br />
Saisissez ici la requête d'affichage applicable au champs sur l'exemple suivant :<br />
<br />
''#SEL# if llx_product.type=1 FROM llx_product WHERE rowid=#ID#''<br />
<br />
==Exemple==<br />
Avec le myfield suivant<br />
<br />
[[file:myfield_Creation_requete.png|800px]] <br />
<br />
{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| On obtient la fiche suivante sur un produit<br />
[[file:myfield_Creation_requete_result.png|500px]] <br />
| Tandis que sur la fiche d'un service <br />
[[file:myfield_Creation_requete-fiche.png|500px]]<br />
<br />
|}<br />
<br />
=Paramétrage des droits d'accès aux myFields, tabs et menus=<br />
==Configuration des droits d'accès==<br />
En tant qu'utilisateur administrateur, tous les myFields vous sont visibles.<br />
{{Note|Sur la page d'accueil du module MyField, l'application des personnalisations est désactivée}}<br />
<br />
Si vous n'avez pas défini de groupes utilisateurs, les myfields sont affichés sur les interfaces de tous les utilsiateurs.<br />
<br />
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 :<br />
<br />
[[file:myfield-Droits-d-acces.png|600px]]<br />
<br />
Il existe quatre droits d'accès :<br />
<br />
{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[File:lecture-off.png]] Bloqué en accès<br />
[[file:lecture-on.png]] Accès en lecture<br />
| [[file:modif-of.png]] Bloqué en modification<br />
[[file:modif-on.png]] Accès en modification<br />
|}<br />
<br />
==Comportement selon les droits d'accès==<br />
===Bloqué en accès ([[file:lecture-off.png]]) ===<br />
<br />
{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[file:myfield-User-lecture-.png|600px]]<br />
| Le champ sera caché aux utilisateurs du groupe. Ils ne pourront pas l'afficher<br />
<br />
le lien ''Show/Hide'' ne sera pas actif<br />
|}<br />
===Accès en lecture mais bloqué en modification ([[file:lecture-on.png]][[file:modif-of.png]]) ===<br />
{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[file:myfield-User-lecture-.png|600px]]<br />
| Les utilisateurs du groupe pourront afficher le champ, mais ne pourront pas en modifier le contenu.<br />
|}<br />
===Accès en lecture et Accès en modification ([[file:lecture-on.png]][[file:modif-on.png]]) ===<br />
{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[file:myfield-User-lecture+-modif+.png|600px]]<br />
| <br />
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,...)<br />
|}<br />
<br />
=Autres fonctionnalités=<br />
==Import des myField==<br />
Il est possible d'enregistrer une liste de myfields et leurs paramétrages en important un fichier XML.<br />
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'''.<br />
{{Note|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|warn}}<br />
Paramétrer ensuite les droits d'accès des utilisateurs au myField.<br />
<br />
==Contexte d'activation==<br />
Une liste de tous les contextes disponible est présent sur le wiki de dolibarr.<br />
<br />
{| <br />
| <br />
{| class="wikitable"<br />
|- style="background-color:orange; font-weight:bold;"<br />
| Fiche<br />
| Contexte<br />
|-<br />
| Adhérent<br />
| membertypecard<br />
|-<br />
| Catégories<br />
| categorycard<br />
|-<br />
| Commandes<br />
| ordercard<br />
|-<br />
| Commande fournisseur<br />
| ordersuppliercard<br />
|-<br />
| Contact<br />
| contactcard<br />
|-<br />
| Contrat<br />
| contractcard<br />
|-<br />
| Don<br />
| doncard<br />
|-<br />
| Entrepôt<br />
| warehousecard<br />
|-<br />
| Expédition<br />
| expeditioncard<br />
|-<br />
| Facture client<br />
| invoicecard<br />
|-<br />
| Facture fournisseur<br />
| suppliercard<br />
|} <br />
<br />
<br />
| style="vertical-align:top;" | <br />
{| class="wikitable"<br />
|- style="background-color:orange; font-weight:bold;"<br />
| Fiche<br />
| Contexte<br />
|-<br />
| Intervention<br />
| interventioncard<br />
|-<br />
| Livraison<br />
| deliverycard<br />
|-<br />
| Note de frais<br />
| tripandexpensecard<br />
|-<br />
| Produit<br />
| productcard<br />
|-<br />
| Projet<br />
| projectcard<br />
|-<br />
| Proposition commerciale<br />
| propalcard<br />
|-<br />
| Règlement client<br />
| paiementcard<br />
|-<br />
| Règlement fournisseur<br />
| paymentsupplier<br />
|-<br />
| Salaire<br />
| salarycard<br />
|-<br />
| Tache<br />
| projecttaskcard<br />
|-<br />
| Tiers<br />
| thirdpartycard<br />
|-<br />
| Utilisateur<br />
| usercard<br />
<br />
|}<br />
<br />
|}<br />
<br />
=Questions fréquentes=<br />
== Général ==<br />
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.<br />
Si vous rencontrez une autre erreur que celles décrites ci-dessous lors de l'utilisation de ce module :<br />
#Désactivez et réactivez le module,<br />
#Vérifier sur le ChangeLog si une nouvelle version a été publiée,<br />
#Ré-installez/mettez à jour le module,<br />
#Vérifiez que le remplacement de fichiers natifs de Dolibarr ne soit pas nécessaire au bon fonctionnement du module.<br />
#Vérifiez qu'aucune incompatibilité avec un autre module ne soit indiquée. Le cas échéant, suivez nos préconisations.<br />
<br />
Si, malgré ces manipulations, l'erreur persiste, contactez-nous en utilisant le formulaire dédié (http://docs.patas-monkey.com/support/).<br />
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.<br />
<br />
== Affichage d'un message en haut des pages de Dolibarr==<br />
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<br />
(voir Configuration).<br />
<br />
[[file:Myfield-Message-contexte.png]]<br />
<br />
==Message erreur d'ordonnancement==<br />
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.<br />
<br />
Le message d'erreur s'affiche en bas de page et est le suivant<br />
<br />
[[file:myfield_Erreur-dbclose-message.png]] <br />
<br />
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''.<br />
<br />
L'erreur vient de l'inversion des lignes ''llxFooter();'' et ''$db->close();'' en fin de fichier.<br />
<br />
{| class="wikitable" style="width:60%;" <br />
|- style="vertical-align:top;" <br />
| Modifiez le code de la page pour obtenir <br />
[[file:Erreur-dbclose-correction.png]]<br />
| au lieu de<br />
<br />
[[file:Erreur-dbclose.png]]<br />
|}</div>Nomihttps://wiki.patas-monkey.com/index.php?title=CustomTooltip&diff=939CustomTooltip2021-03-30T12:49:27Z<p>Nomi : </p>
<hr />
<div>{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[File:customtooltip_250x250.png]]<br />
| Ce module customTooltip permet de personnaliser le contenu des tooltips de Dolibarr.<br />
<br />
La durée d'affichage donne le temps de cliquer sur les liens contenus dans les customTooltips.<br />
|}<br />
<br />
==Présentation==<br />
Le module permets ma personnalisation du contenu des Tootltips et de leur durée d'affichage<br />
<br />
Les customTooltips sont actifs sur les liens vers :<br />
*les tiers<br />
*les contacts<br />
*les adhérents<br />
*les produits et les services<br />
*les événements de l'agenda<br />
<br />
[[file:customtooltip_Resultat.png|600px]] <br />
<br />
Les customTooltips peuvent afficher différentes informations selon les paramétrages appliqués :<br />
*Champs supplémentaires des fiches <br />
*État des stocks pour les produits <br />
*En-cours et limite de facturation des tiers<br />
<br />
==Paramétrage==<br />
===Configuration des fonctionnalités du module===<br />
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 [[file:doli-setup.png]] ou [[file:doli-setup-old.png]] en bout de ligne.<br />
<br />
[[file:customtooltip_Configuration.png|600px]] <br />
<br />
Les lignes du tableau vous permettent d'activer ou non, dans les customTooltips, l'affichage des données présentes dans les champs supplémentaires créés dans les modules relatifs à l'élément source des customTooltips, l'état des stocks pour les produits et l'en-cours de facturation des tiers.<br />
===Permissions===<br />
CustomTooltip n'ajoute pas de permissions aux utilisateurs. Les données qui leur sont visibles sont gérées par les permissions utilisateurs et groupes des autres modules.<br />
<br />
==Fonctionnement==<br />
===Persistance d'affichage===<br />
Une fois la durée de l'affichage des customTooltips enregistrée, au passage de votre pointeur sur les noms ou libellés des tiers, contacts, adhérents, produits/services et événements de l'agenda, vous obtiendriez :<br />
<br />
[[file:customtooltip_Resultat.png|600px]] <br />
<br />
{{Note|Contrairement aux tooltips natifs, la durée de persistance des customTooltips vous laisse le temps de cliquer sur les liens}}<br />
<br />
Au lieu de :<br />
<br />
[[file:customtooltip_Tootip_natif.png|600px]] <br />
<br />
{{Note|Le tootlip disparaît dès que votre pointeur quitte le lien de l'élément}} <br />
<br />
===Affichage des champs supplémentaires===<br />
Les champs supplémentaires créés sur les fiches de vos éléments s'affichent sur les customTooltips :<br />
[[file:Customtooltip_champ_supp.png|600px]] <br />
<br />
===Affichage des stocks des produits===<br />
Le customTooltip affichera la liste des entrepôts qui contiennent le produits et la quantités présentes pour chacun. Si un produit est en quantité nulle dans un entrepôt, ce dernier ne sera pas affiché.<br />
<br />
[[file:Customtooltip_produit.png|600px]]<br />
<br />
{{Note|La durée de persistance des customTooltips vous laisse le temps de cliquer sur les liens. Dans le cas des tooltips de produits, vous pourrez accéder à la fiche des entrepôts contenant le produit}}<br />
<br />
===Affichage de l'en-cours de facturation des tiers===<br />
L'en-cours de facturation et la limité saisie sur la fiche du tiers peuvent apparaître sur les customTooltip des tiers :<br />
<br />
[[file:Customtooltip_encours_facturation.png|600px]]</div>Nomihttps://wiki.patas-monkey.com/index.php?title=CustomTooltip&diff=938CustomTooltip2021-03-30T12:49:12Z<p>Nomi : </p>
<hr />
<div>{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[File:customtooltip_250x250.png]]<br />
| ce Module customTooltip permet de personnaliser le contenu des tooltips de Dolibarr.<br />
<br />
La durée d'affichage donne le temps de cliquer sur les liens contenus dans les customTooltips.<br />
|}<br />
<br />
==Présentation==<br />
Le module permets ma personnalisation du contenu des Tootltips et de leur durée d'affichage<br />
<br />
Les customTooltips sont actifs sur les liens vers :<br />
*les tiers<br />
*les contacts<br />
*les adhérents<br />
*les produits et les services<br />
*les événements de l'agenda<br />
<br />
[[file:customtooltip_Resultat.png|600px]] <br />
<br />
Les customTooltips peuvent afficher différentes informations selon les paramétrages appliqués :<br />
*Champs supplémentaires des fiches <br />
*État des stocks pour les produits <br />
*En-cours et limite de facturation des tiers<br />
<br />
==Paramétrage==<br />
===Configuration des fonctionnalités du module===<br />
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 [[file:doli-setup.png]] ou [[file:doli-setup-old.png]] en bout de ligne.<br />
<br />
[[file:customtooltip_Configuration.png|600px]] <br />
<br />
Les lignes du tableau vous permettent d'activer ou non, dans les customTooltips, l'affichage des données présentes dans les champs supplémentaires créés dans les modules relatifs à l'élément source des customTooltips, l'état des stocks pour les produits et l'en-cours de facturation des tiers.<br />
===Permissions===<br />
CustomTooltip n'ajoute pas de permissions aux utilisateurs. Les données qui leur sont visibles sont gérées par les permissions utilisateurs et groupes des autres modules.<br />
<br />
==Fonctionnement==<br />
===Persistance d'affichage===<br />
Une fois la durée de l'affichage des customTooltips enregistrée, au passage de votre pointeur sur les noms ou libellés des tiers, contacts, adhérents, produits/services et événements de l'agenda, vous obtiendriez :<br />
<br />
[[file:customtooltip_Resultat.png|600px]] <br />
<br />
{{Note|Contrairement aux tooltips natifs, la durée de persistance des customTooltips vous laisse le temps de cliquer sur les liens}}<br />
<br />
Au lieu de :<br />
<br />
[[file:customtooltip_Tootip_natif.png|600px]] <br />
<br />
{{Note|Le tootlip disparaît dès que votre pointeur quitte le lien de l'élément}} <br />
<br />
===Affichage des champs supplémentaires===<br />
Les champs supplémentaires créés sur les fiches de vos éléments s'affichent sur les customTooltips :<br />
[[file:Customtooltip_champ_supp.png|600px]] <br />
<br />
===Affichage des stocks des produits===<br />
Le customTooltip affichera la liste des entrepôts qui contiennent le produits et la quantités présentes pour chacun. Si un produit est en quantité nulle dans un entrepôt, ce dernier ne sera pas affiché.<br />
<br />
[[file:Customtooltip_produit.png|600px]]<br />
<br />
{{Note|La durée de persistance des customTooltips vous laisse le temps de cliquer sur les liens. Dans le cas des tooltips de produits, vous pourrez accéder à la fiche des entrepôts contenant le produit}}<br />
<br />
===Affichage de l'en-cours de facturation des tiers===<br />
L'en-cours de facturation et la limité saisie sur la fiche du tiers peuvent apparaître sur les customTooltip des tiers :<br />
<br />
[[file:Customtooltip_encours_facturation.png|600px]]</div>Nomihttps://wiki.patas-monkey.com/index.php?title=Fichier:Customtooltip_encours_facturation.png&diff=937Fichier:Customtooltip encours facturation.png2021-03-30T12:49:02Z<p>Nomi : </p>
<hr />
<div></div>Nomihttps://wiki.patas-monkey.com/index.php?title=Fichier:Customtooltip_produit.png&diff=936Fichier:Customtooltip produit.png2021-03-30T12:48:18Z<p>Nomi : </p>
<hr />
<div></div>Nomihttps://wiki.patas-monkey.com/index.php?title=Fichier:Customtooltip_champ_supp.png&diff=935Fichier:Customtooltip champ supp.png2021-03-30T12:47:41Z<p>Nomi : </p>
<hr />
<div></div>Nomihttps://wiki.patas-monkey.com/index.php?title=Fichier:Customtooltip_Tootip_natif.png&diff=934Fichier:Customtooltip Tootip natif.png2021-03-30T12:46:53Z<p>Nomi : </p>
<hr />
<div></div>Nomihttps://wiki.patas-monkey.com/index.php?title=Fichier:Customtooltip_Configuration.png&diff=933Fichier:Customtooltip Configuration.png2021-03-30T12:43:55Z<p>Nomi : </p>
<hr />
<div></div>Nomihttps://wiki.patas-monkey.com/index.php?title=Fichier:Customtooltip_Resultat.png&diff=932Fichier:Customtooltip Resultat.png2021-03-30T12:41:16Z<p>Nomi : </p>
<hr />
<div></div>Nomihttps://wiki.patas-monkey.com/index.php?title=MyClock&diff=931MyClock2021-03-30T12:38:26Z<p>Nomi : /* Présentation */</p>
<hr />
<div>{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[File:Myclock-250x250.png]]<br />
| MyClock est une petite horloge toujours visible dans Dolibarr pour garder à l'oeil vos principaux widgets et actions du jours (interventions, tâches, actions commerciales,...).<br />
Il permet d'afficher des breadcrumps et d'accéder rapidement à une calculatrice <br />
L'apparence et le contenu des widgets de MyClock sont personnalisable selon vos goûts et vos besoins par la présence de plug-in.<br />
|}<br />
== Présentation ==<br />
Les interactions avec myClock s'effectuent à partir des quatre icones réparties autour de l'horloge<br />
Dans le sens horaire on a :<br />
* L'affichage de la calculatrice<br />
* L'affichage des widgets<br />
* L'affichage des évènements<br />
* L'affichage du fil d'arianne (breadcrump)<br />
<br />
== Paramétrage ==<br />
L'accès à l'administration du module s'effectue en cliquant sur l'icone en bout de ligne dans la liste des modules.<br />
Il y a 4 onglets :<br />
{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[File:Myclock-Configuration-tab.png|500px]]<br />
|<br />
* L'onglet principal permet de paramétrer l'affichage de l'horloge<br />
* L'onglet "widget", les boites que l'on souhaite afficher au niveau de la fenetre des widgets<br />
* L'onglet "évènement" la liste des évènements qui seront présenté dans la fenetre des évènements<br />
* L'onglet "a propos" présente les évolutions du modules<br />
|}<br />
<br />
=== Onglet principal ===<br />
A partir de l'écran principal il est possible de paramétrer <br />
{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[File:myclock-configuration1.png|600px]]<br />
|<br />
* Le thème de l'horloge<br />
* Si on souhaite afficher par défaut le fil d'Arianne ou l'horloge<br />
* Si on souhaite positionner l'horloge au dessus des menus ou en dessous<br />
|}</div>Nomihttps://wiki.patas-monkey.com/index.php?title=Fichier:Customtooltip_250x250.png&diff=930Fichier:Customtooltip 250x250.png2021-03-30T12:36:50Z<p>Nomi : </p>
<hr />
<div></div>Nomihttps://wiki.patas-monkey.com/index.php?title=MyList&diff=929MyList2021-03-30T12:33:16Z<p>Nomi : /* Page de création */</p>
<hr />
<div>{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[File:mylist_250x250.png]]<br />
| Ce Module permet la création de listes personnalisées,<br />
il est aussi possible :<br />
* de créer des sommes et moyennes des champs numérique présent dans la liste<br />
* de créer une éditions au format PDF de la liste <br />
* de générer des export au format CSV des listes<br />
|}<br />
<br />
==Présentation==<br />
Le Module myList permet de créer vos propres listes personnalisées à partir des informations contenues dans votre base de données et de les rendre accessibles depuis les menus de Dolibarr. La récupération des informations est effectué par une requête SQL.<br />
<br />
[[file:mylist_Liste_affichee.png|600px]]<br />
<br />
Depuis les listes personnalisées, différentes actions peuvent être effectuées à partir de requêtes complémentaire de traitement (suppression, mise à jour …).<br />
<br />
[[file:mylist_Liste_traitement.png|600px]]<br />
<br />
MyList est livré avec trois fichiers d'import de listes desquels vous inspirer pour créer vos propres listes : contacts à rappeler, liste des factures impayées et chiffre d'affaires.<br />
<br />
MyListMore ajoute à myList :<br />
{| class="wikitable"<br />
|- style="vertical-align:top;" <br />
| [[file:mylist_Champs-mylistmore-ecran.png|600px]]<br />
|<br />
*Les sommes et moyennes des champs calculés des myList à l'écran et sur l'édition<br />
|- style="vertical-align:top;" <br />
| [[file:mylist_Champs-mylistmore-resultat.png|600px]]<br />
|<br />
*des éditions PDF<br />
|}<br />
<br />
MyListMore apporte aussi à myList deux nouveaux types de champs permettant l'affichage d'un tooltip des valeurs d'un champ supplémentaire issue d'une liste ou de dictionnaires.<br />
<br />
==Configuration des fonctionnalités du module==<br />
===Configuration===<br />
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 [[file:doli-setup.png]] ou [[file:doli-setup-old.png]] en bout de ligne.<br />
<br />
La page de configuration du module myList contient les paramétrage apportés par myListMore. Mylistmore ne nécessite donc pas de paramétrage propre.<br />
<br />
{| class="wikitable"<br />
| [[file:mylist_Configuration.png|600px]]<br />
| style="vertical-align:top;" |<br />
L'activation de Datatables est facultative mais ajoute des fonctionnalités d'affichage intéressantes dans l'utilisation de myList tels que la pagination, l'affichage et le déplacement de colonnes.<br />
<br />
L'activation de l'export permettra l'extraction des données présentes dans les listes au format CSV pour un retraitement ultérieur.<br />
<br />
Vous pourrez enfin activer les éditions et choisir celle utilisée par défaut dans le '''tableau de génération des éditions'''.<br />
|}<br />
<br />
===Permissions===<br />
es 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 ([[file:tick.png]] ).<br />
<br />
*Permissions utilisateurs et groupes<br />
{| class="wikitable"<br />
| [[file:myliste_Permissions-utilisateurs.png|600px]]<br />
| style="vertical-align:top;" | Les accès aux fonctionnalités du modules peuvent être restreints aux utilisateurs et groupes, depuis leur fiche puis onglet Permissions, selon les permissions<br />
|}<br />
<br />
*Permissions par défaut<br />
{| class="wikitable"<br />
| [[file:mylist_Permissions-defaut.png|600px]]<br />
| style="vertical-align:top;" | Les permissions par défaut (Accueil > Configuration > Sécurité > Permissions par défaut), accordées à tout utilisateur créé ultérieurement à l'installation du module, si il n'est pas ajouté à un groupe, sont les suivantes<br />
|}<br />
<br />
==Démarrage==<br />
Les fonctionnalités de myList sont accessibles depuis l'onglet de menu principal Outils Patas-M. Les fonctionnalités de MyListMore s'ajoute à celles de MyList lors de la création de nouvelles listes. Votre menu secondaire présente alors les entrées de menu suivantes :<br />
{| class="wikitable"<br />
|- style="vertical-align:top;" <br />
| [[file:mylist_Menusecondaire.png]]<br />
| <br />
*myList : l'entrée principale '''myList''' permet d’afficher toutes les listes définies dans votre environnement (même si celles-ci ne sont pas actives). En cliquant sur le titre de la liste, on peut visualiser la liste. Cet écran est très utile lors du développement d’une liste qui n’est pas encore active. Il est cependant préférable de tester ces listes sur un environnement de test puis d’utiliser la fonction d’import/export pour la mettre en place en production.<br />
*Nouvelle liste : cette entrée vous affichera la page de création d'une nouvelle liste.<br />
*Mes Listes : le lien '''Mes listes''' permet d’afficher la liste des listes présentes dans votre environnement. Le lien en début de ligne vous permet d’afficher le résultat de la requête de la liste en plus de ses résultats.<br />
*Importer une liste : cette entré affichera une page permettant de copier un fichier d'import d'une liste au format XML. (Voir "Import d'une liste" plus bas).<br />
|}<br />
<br />
==Création d'une liste==<br />
===Champs de la page de création d'une liste===<br />
Ouvrez la page de création d'une liste depuis le lien de menu '''Outils Patas-M > Mylist > Nouvelle liste''' :<br />
<br />
[[file:mylist_Page_nouvelle_liste.png|600px]]<br />
<br />
{| class="wikitable"<br />
| style="vertical-align:top;width:15%;" | <br />
Libellé<br />
| le libellé sera affiché en tant que titre de la page d'affichage de la liste.<br />
|-<br />
| Titre du menu<br />
| le titre sera affiché dans les menus de Dolibarr en tant que lien d'accès à la liste<br />
|-<br />
| Menu principal et Menu secondaire<br />
| pour déterminer l'emplacement de la liste dans les menus Dolibarr, Il est nécessaire de les indiquer en remplissant les champs avec leur nom exact.<br />
<br />
Les valeurs à renseigner ici sont présentes dans les URL des menus :<br />
<br />
Exemple du menu principal tiers :<br />
<br />
<code>...htdocs/societe/index.php?mainmenu=companies&leftmenu=</code><br />
<br />
Exemple d'un menu secondaire :<br />
<br />
<code>...htdocs/societe/index.php?leftmenu=thirdparties</code><br />
|-<br />
| Onglet dans l'élément<br />
| les résultats de la liste peuvent être affichés dans un onglet ajouté sur les fiches de l'élément sélectionné dans cette liste (tiers, produits, projets, catégories de tiers et de produits) et filtrés pour n'afficher que les résultats en lien avec lui-même.<br />
|-<br />
| Habilitations<br />
| Dolibarr possède nativement des fonctionnalités avancées pour gérer les droits d'accès à ses menus. Il est possible d'utiliser ce champ pour saisir une condition d'habilitation afin d'accéder au contenu de la page si la condition n'est pas respectée, le menu sera grisé.<br />
<br />
Généralement les habilitations sont définies de la manière suivante :<br />
<code>$user->rights->élément->droit</code> où élément correspond à un module de Dolibarr (devis, commande, projet, …) et droit à l’habilitation sur le module (lire, écrire, paramétrer...).<br />
<br />
Par exemple pour autoriser l’accès uniquement aux utilisateurs ayant accès en lecture aux propositions commerciales il faut saisir <code>$user->rights->propale->lire</code>.<br />
<br />
Pour repérer l’habilitation que l’on souhaite utiliser, une astuce consiste à aller dans le fichier de configuration du module gérant cette habilitation.<br />
|-<br />
| Fichier de langue<br />
| afin de rendre plus explicite les noms de variable lors de leur saisie et les entêtes de colonnes sur les tableaux, il est possible d’utiliser les fichiers de traductions.<br />
<br />
Il suffit d’ajouter un ou plusieurs noms de fichiers de langues séparé par un #<br />
<br />
Si le fichier de langue n’est pas déposé dans le dossier du noyau de Dolibarr, il faut ajouter <code>@nomdumodule</code> à celui-ci.<br />
|-<br />
| Auteur<br />
|-<br />
| Export CSV<br />
| conditionne l'affichage d'un bouton d'export CSV du résultat de la liste<br />
|-<br />
| Document imprimable<br />
| sélectionnez ici l'orientation du PDF qui vous sera proposé par défaut pour générer les résultats de vos listes.<br />
{{Note|Note : Pour pouvoir sélectionnez les documents, ils doivent avoir été activés dans la configuration du module}}<br />
|-<br />
| Requête du tableau<br />
| requête SQL qui va définir l'affichage des données<br />
|-<br />
| Requête de traitement<br />
| permettra de paramétrer un traitement sur les résultats de la liste comme <code>DELETE</code>, <code>UPDATE</code> …<br />
|-<br />
| Champs personnalisés par défaut<br />
| les champs personnalisés saisis ici permettent de définir un ensemble de variables utilisées par la requête pour pré-filtrer des champs qui ne sont pas forcément affichés.<br />
<br />
|}<br />
<br />
==Exemple de création d'une liste simple==<br />
===Page de création===<br />
Pour l'exemple, créons une liste des produits et services affichant leur prix de vente, de revient et PMP, accessible depuis le menu principal Produits/Services :<br />
{| class="wikitable"<br />
|- style="vertical-align:top;"<br />
| [[file:mylist_Page_nouvelle_liste.png|600px]]<br />
| Ouvrez la page de création d'une nouvelle liste et saisissez les données ci-contre puis terminez la première étape de création de la liste en cliquant sur le bouton '''Créer'''<br />
|- style="vertical-align:top;"<br />
| [[file:mylist_Liste_cree.png|600px]]<br />
| Une fois la liste créée, trois nouveaux champs sont affichés et peuvent être modifié en édition de la fiche :<br />
*Export CSV autorisé : cette fonctionnalité permettra l'export CSV des résultats de la liste pour un retraitement ultérieur.<br />
*Forcer l'affichage de tous les résultats : cette fonctionnalité forcera l'affichage de tous les résultat de la liste sans filtrage.<br />
{{Note|Selon la complexité de votre requête et la quantité d'information à traiter, activer cette fonctionnalité peut ralentir le système}}<br />
*Liste active : suite à sa création, une liste est par défaut, '''Inactive'''. Modifiez son état pour permettre son affichage depuis les liens de menus déclarés sur sa fiche.<br />
<br />
<br />
<br />
<br />
<br />
Trois boutons sont présent en bas de l'écran :<br />
* '''Modifier''' vous permettra d'entrer en édition de la liste pour en modifier la requête ou tout autre élément (menus d'accès, onglets d'affichage …<br />
* '''Importation / Exportation de la page''' générera le fichier XML que vous pourrez modifier avant de le copier pour l'exporter<br />
* '''Supprimer''' effacera la liste de votre base de données. Désactivez toujours une liste avant de la supprimer. Si vous effectuez une suppression sans avoir désactivé la liste auparavant, elle restera présente dans votre base de donnée et sur votre interface, mais vidée de son contenu|warn<br />
<br />
|}<br />
<br />
===Champs de la liste===<br />
Depuis la page affichée suite à la création de la liste, cliquez sur le bouton Nouveau champ :<br />
*Nom du champ : nom du champ tel qu'il est présent dans les tables de Dolibarr<br />
*Alias : il s’agit de l’alias du champ dans le sens base de données. Cet alias n’est pas obligatoire<br />
*Nom : titre de colonne affiché dans la liste<br />
*Type : ce paramètre suit le fonctionnement des champs supplémentaires natifs de Dolibarr. Cependant, 4 champs ont une mise en forme spécifique :<br />
**Prix : affiche un nombre en utilisant le format de précision défini dans Dolibarr<br />
**Pourcent : affiche un nombre en pourcentage<br />
**Date : affiche une date au format « jour »<br />
**Boolean : affiche un oui ou un non dans la cellule de la ligne<br />
**Tooltip : DescTooltip<br />
**Extrafield de type liste : pour faire ressortir sur une myList la valeur d'un champ supplémentaire sur les fiches, sélectionnez ce type de champ. Son paramètre sera alors <code>NomDeLElement:NomDuCHamp</code>. Par exemple, pour affiche le contenu de l'extrafield <code>extrafield</code> enregistré sur la fiche d'un produit, saisissez <code>product:extrafield</code>.<br />
*Paramètre du champ : cette fonctionnalité est liée au paramétrage des champs de type clé (<code>rowid</code> et <code>fk_xxx</code>) pour les champs de liste de type texte, liste et statut. Elle permet de rendre cliquable et/ou filtrable par liste déroulante.<br />
:L'alimentation de ce champ nécessite une connaissance des tables et de l'organisation des classes des différents éléments de Dolibarr.<br />
:Quelques exemples de formation du paramètre :<br />
** 1er cas : liste issue d'une table<br />
::Table : <code>c_typent</code> (sans le préfixe)<br />
::Clé : <code>id</code><br />
::Libellé : <code>libelle</code><br />
::Paramètre à indiquer dans le paramétrage du champ de myList : <code>c_typent:id:libelle</code><br />
** 2ème cas : rendre cliquables les résultats de liste<br />
::Nom de la classe de l'élément à rendre cliquable : <code>Facture:</code><br />
::Chemin du fichier définissant la classe : <code>/compta/facture/class/facture.class.php</code><br />
::Nom de la table : <code>:facture</code><br />
::Champ à afficher : <code>nom_du_champ</code><br />
::Paramètre à indiquer dans le paramétrage du champ de myList : <code>Facture:/compta/facture/class/facture.class.php:facture:nom_du_champ</code><br />
** Paramètres les plus fréquemment utilisés :<br />
::Tiers : <code>Societe:/societe/class/societe.class.php</code><br />
::Contact : <code>Contact:/contact/class/contact.class.php</code><br />
::Utilisateurs : <code>User:/user/class/user.class.php:user:lastname </code><br />
::Produit : <code>Product:/product/class/product.class.php</code><br />
::proposition commerciale : <code>Propal:/comm/propal/class/propal.class.php</code><br />
::Commande client :<code>Commande:/commande/class/commande.class.php:commande:ref</code><br />
::Facture client : <code>Facture:/compta/facture/class/facture.class.php</code><br />
::Projet : <code>Project:/projet/class/project.class.php</code><br />
::Taches : <code>Task:/project/class/task.class.php</code><br />
::Contrat : <code>Contrat:/contrat/class/contrat.class.php</code><br />
::Intervention : <code>Fichinter:/fichinter/class/fichinter.class.php</code><br />
::Expédition : <code>Expedition:/expedition/class/expedition.class.php</code><br />
::Commande fournisseur : <code>CommandeFournisseur:/fourn/class/fournisseur.commande.class.php</code><br />
::Facture fournisseur : <code>FactureFournisseur:/fourn/class/fournisseur.facture.class.php</code><br />
::Entrepôt : <code>Entrepot:/product/stock/class/entrepot.class.php</code><br />
::Événement : <code>ActionComm:/comm/action/class/actioncomm.class.php</code><br />
::Banque : <code>Account:/compta/bank/class/account.class.php</code><br />
::Catégorie : <code>Categorie:/categories/class/categorie.class.php</code><br />
*Largeur : la largeur saisie ici s'appliquera au champ à l'écran<br />
*Alignement<br />
*Actif : le champ sera présent et affiché par défaut. Son affichage pourra être modifié depuis le bouton autres colonnes.<br />
*Visible : le champ sera affiché dans la liste<br />
*Filtrable : <br />
:Options de filtrage sur les valeurs du champ.<br />
:{| class="wikitable" <br />
|- style="background-color:orange; font-weight:bold;" <br />
| Durée, Nombre, Somme, Prix <br />
| Résultat<br />
|- <br />
| < 20000 <br />
| nombres < et = à 200000<br />
|- <br />
| 200000-300000<br />
| nombres de 200000 à 300000 inclus<br />
|- style="background-color: orange; font-weight:bold;"<br />
| Date <br />
| <br />
|- <br />
|2008<br />
| toutes les dates de 2008 du 01/01 au 31/12 inclus<br />
|- <br />
| 2006-2009<br />
| toutes les dates du 01/01/2006 au 31/12/2009 inclus<br />
|- <br />
| >2004<br />
| toutes les dates supérieures (ou =) au 01/01/2004<br />
|- <br />
| 20060401<br />
| Tous les éléments correspondant au jour saisi au format AAAMMJJ<br />
|}<br />
::Boolean, Liste, Statut : dans le cas d’un filtre booléen, trois valeurs sont sélectionnables dans la liste :<br />
:::vide : le champ n’est pas filtré<br />
:::<code>vrai</code> : sélectionne les valeurs saisies à « vrai »<br />
:::<code>faux</code> : sélection des valeurs saisies à « faux »<br />
:::Dans les autres cas, cela dépend du paramétrage additionnel du champ.<br />
{{Note|Une zone au format Check n’est pas filtrable}}<br />
*Filtre par défaut : ajouter un filtre par défaut permet l'enregistrement d'une valeur de filtrage active dès l'affichage de la liste.<br />
{{Note|Les champs ci-dessous sont apportés par '''myListMore'''}}<br />
*Largeur sur l'édition : la largeur saisie ici s'appliquera à l'édition PDF<br />
{{Note|Les champs ci-dessous ne s'appliquent qu'aux champs de type prix ou nombre.|warn}}<br />
*Totalisation du champ : affichera un tableau avec les totaux des champs pour lesquels la fonctionnalité aura été activée.<br />
* Moyenne du champ :affichera un tableau avec les moyennes des champs pour lesquels la fonctionnalité aura été activée.<br />
<br />
===Gestion des clés spécifiques (<code>rowid</code>, <code>fk_statut</code>)===<br />
*Champs rowid : les champs rowid ont un fonctionnement particulier dans myList, associés à des paramètres, ils permettent de créer un lien vers l’élément dont ils sont la clé.<br />
:Rendre un champ cliquable est sans doute la problématique la plus complexe de myList car elle implique de comprendre un peu l’architecture de Dolibarr.<br />
:Tout d’abord il est nécessaire de repérer dans les répertoires de Dolibarr où se trouve la classe de l’élément que l’on souhaite appeler et comment celle-ci se nomme dans le fichier<br />
:Si l’on souhaite par exemple rendre cliquable une commande fournisseur, il faut trouver le fichier de la classe associée à cet élément (<code>/fourn/class/fournisseur.commande.class.php</code>) puis regarder le nom de la classe objet (CommandeFournisseur).<br />
*Champs fk_statut : les champs fk_statut servent à connaître l'état d'un élément. Cependant, le nombre et le type d'état est propre à chaque élément. Les choix sélectionnables sont donc à ajouter aux paramètres supplémentaires des champs. Comme pour le <code>rowid</code>, il convient donc de repérer la classe utilisée pour définir l'élément mis ajouter les états que l'on souhaite utiliser en les séparant par des #.<br />
<br />
{| class="wikitable"<br />
| [[file:mylist_Exemple_champs.png|600px]]<br />
| style="vertical-align:top;" | Terminez la création des champs sur le modèle ci-contre<br />
|}<br />
<br />
Pour que la liste soit accessible depuis les menus de Dolibarr, il vous suffit de modifier la liste pour la rendre active.<br />
{{Note|Avant de rendre la liste active, vous pouvez l'afficher avec sa requête en utilisant le lien de menu '''Outils Patas-M > MyList'''.<br />
Cette astuce ne fonctionne que sur les liste non encore activées.}}<br />
<br />
[[file:mylist_Liste_test.png|600px]]<br />
<br />
{| class="wikitable"<br />
| [[file:mylist_Liste_affichee.png|600px]]<br />
| style="vertical-align:top;" | Une fois la liste activée, elle apparaîtra depuis les liens définis sur sa page de création.<br />
Le bouton '''Export en CSV''' permet d'effectuer un export des résultats de la liste au format CSV pour un traitement externe. Il est nécessaire d'avoir activé la fonctionnalité d'export dans la "Configuration" et dans le paramétrage enregistré lors de la "Champs de la page de création d'une liste".<br />
|}<br />
<br />
{| class="wikitable"<br />
| [[file:mylist_Liste_test.png|600px]]<br />
| style="vertical-align:top;" | Si vous avez paramétré la liste pour l'afficher dans l'onglet d'une fiche, les résultats seront filtrés selon l'élément. <br />
{{Note|Le filtrage de l'affichage des résultats de la liste nécessite la présence d'une condition dans sa requête SQL. Si aucune n'est présente, ajoutez par exemple WHERE <nowiki>1 = 1</nowiki> }}<br />
|}<br />
<br />
==Autres fonctionnalités==<br />
===Import d'une liste===<br />
<br />
Il est possible d'enregistrer une liste et le paramétrage de ses champs en important un fichier '''XML'''.<br />
{{Note|Des exemples de liste sont livrés avec le module MyList dans le dossier XMLsample}}<br />
<br />
{| class="wikitable"<br />
| [[file:mylist_Import.png|600px]]<br />
| style="vertical-align:top;" | Depuis la page '''Outils Patas-M > MyList > Importer une liste''', collez le fichier XML dans la zone de saisie et cliquez sur le bouton '''Lancer l'importation'''.<br />
Activez la liste depuis sa fiche et elle sera accessible depuis vos menus de Dolibarr<br />
|}<br />
<br />
Activez la liste depuis sa fiche et elle sera accessible depuis vos menus de Dolibarr.<br />
<br />
===Requêtes de traitement===<br />
En complément de la requête d'affichage de la liste, une requête de traitement peut donner la possibilité d'effectuer de nouvelles actions, toujours à partir de requêtes SQL.<br />
<br />
{| class="wikitable"<br />
| [[file:mylist_Fiche_liste_traitement.png|600px]]<br />
| style="vertical-align:top;" | Partons d'une liste de contacts et ajoutons dans le champ '''Requête de traitement'' la ligne <code>DELETE FROM 'llx_socpeople' WHERE rowid=#ROWID#</code> permettant leur suppression.<br />
|}<br />
<br />
{| class="wikitable"<br />
| [[file:mylist_Liste_traitement.png|600px]]<br />
| style="vertical-align:top;" | Modifiez l'un des champs pour l'enregistrer au type checkable. La liste devient alors tel que ci-contre.<br />
Les cases à cocher serviront à sélectionner les résultats de la liste auxquels appliquer le traitement indiqué dans la requête. Dans notre exemple, les contacts sélectionnés seront supprimés de la base de données.<br />
|}<br />
<br />
===Sélection des champs à l'affichage des listes===<br />
{| class="wikitable"<br />
| [[file:mylist_Datatables.png|600px]]<br />
| style="vertical-align:top;" | En activant DataTables dans la "Configuration", vous pouvez choisir les colonnes de la liste à afficher ou non par cases à cocher depuis le bouton '''Autres colonnes'''<br />
|}<br />
<br />
==Questions fréquentes==<br />
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.<br />
Si vous rencontrez une autre erreur que celles décrites ci-dessous lors de l'utilisation de ce module :<br />
#Désactivez et réactivez le module,<br />
#Vérifier sur le ChangeLog si une nouvelle version a été publiée,<br />
#Ré-installez/mettez à jour le module,<br />
#Vérifiez que le remplacement de fichiers natifs de Dolibarr ne soit pas nécessaire au bon fonctionnement du module.<br />
#Vérifiez qu'aucune incompatibilité avec un autre module ne soit indiquée. Le cas échéant, suivez nos préconisations.<br />
<br />
Si, malgré ces manipulations, l'erreur persiste, contactez-nous en utilisant le formulaire dédié (http://docs.patas-monkey.com/support/).<br />
<br />
*Les résultats de la liste ne sont pas ceux attendus <br />
:Le meilleur moyen de s'assurer de la qualité de votre requête SQL est d'interroger directement votre base de données via phpmyadmin ou logiciel équivalent. Adapter la requête de la liste pour la coller dans la zone SQL de phpmyadmin. Si les résultats sont les mêmes que la liste, revoyez votre requête.<br />
:Dans le cas contraire, myList peut présenter un bug. Contactez-nous ! (docs.patas-monkey.com/support).<br />
*Vos listes n'apparaissent pas/plus dans vos menus<br />
:Suite à une mise à jour du module ou des listes elles-mêmes, même si vos listes indiquent qu'elles sont activées, vous devrez les réactivez en entrant en édition du champ Active et en enregistrant à nouveau.<br />
*Message d'erreur DB_ERROR_NOSUCHFIELD ou DB_ERROR_NOSUCHTABLE<br />
{| class="wikitable"<br />
| [[file:Mylist-erreur.png|600px]]<br />
| style="vertical-align:top;" | <br />
Vous avez indiqué dans votre requête un champ ou une table qui n'existent pas dans votre base de donnée ou qui n'est pas identifiable. Revoyez votre requête SQL. Il s'agit souvent d'une faute de frappe ou d'une mauvaise liaison dans votre requête.<br />
<br />
Le contenu du message vous aidera à identifier l'erreur avec les lignes '''Code retour dernier accès en base en erreur et Information sur le dernier accès en base en erreur'''.<br />
|}<br />
*Liste supprimée toujours présente<br />
:Vous avez supprimé la liste sans la désactiver d'abord. Mylist ne peut plus supprimer la liste : vous devrez nettoyer votre base de données en supprimant la liste de la table llx_mylist depuis phpmyadmin.<br />
*Message d'erreur à la création de la liste<br />
:Si vous avez effectué une mise à jour de MyListmore depuis une ancienne version, il est possible que vous rencontriez un message d'erreur à la création d'une liste.<br />
:Pour le corriger, vous devrez effectuer la requête suivante sur votre base de données : <code>ALTER TABLE `llx_mylist` CHANGE `model_pdf` `model_pdf` VARCHAR(255) NULL DEFAULT NULL;</code></div>Nomihttps://wiki.patas-monkey.com/index.php?title=MyList&diff=928MyList2021-03-30T12:31:33Z<p>Nomi : /* Champs de la page de création d'une liste */</p>
<hr />
<div>{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[File:mylist_250x250.png]]<br />
| Ce Module permet la création de listes personnalisées,<br />
il est aussi possible :<br />
* de créer des sommes et moyennes des champs numérique présent dans la liste<br />
* de créer une éditions au format PDF de la liste <br />
* de générer des export au format CSV des listes<br />
|}<br />
<br />
==Présentation==<br />
Le Module myList permet de créer vos propres listes personnalisées à partir des informations contenues dans votre base de données et de les rendre accessibles depuis les menus de Dolibarr. La récupération des informations est effectué par une requête SQL.<br />
<br />
[[file:mylist_Liste_affichee.png|600px]]<br />
<br />
Depuis les listes personnalisées, différentes actions peuvent être effectuées à partir de requêtes complémentaire de traitement (suppression, mise à jour …).<br />
<br />
[[file:mylist_Liste_traitement.png|600px]]<br />
<br />
MyList est livré avec trois fichiers d'import de listes desquels vous inspirer pour créer vos propres listes : contacts à rappeler, liste des factures impayées et chiffre d'affaires.<br />
<br />
MyListMore ajoute à myList :<br />
{| class="wikitable"<br />
|- style="vertical-align:top;" <br />
| [[file:mylist_Champs-mylistmore-ecran.png|600px]]<br />
|<br />
*Les sommes et moyennes des champs calculés des myList à l'écran et sur l'édition<br />
|- style="vertical-align:top;" <br />
| [[file:mylist_Champs-mylistmore-resultat.png|600px]]<br />
|<br />
*des éditions PDF<br />
|}<br />
<br />
MyListMore apporte aussi à myList deux nouveaux types de champs permettant l'affichage d'un tooltip des valeurs d'un champ supplémentaire issue d'une liste ou de dictionnaires.<br />
<br />
==Configuration des fonctionnalités du module==<br />
===Configuration===<br />
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 [[file:doli-setup.png]] ou [[file:doli-setup-old.png]] en bout de ligne.<br />
<br />
La page de configuration du module myList contient les paramétrage apportés par myListMore. Mylistmore ne nécessite donc pas de paramétrage propre.<br />
<br />
{| class="wikitable"<br />
| [[file:mylist_Configuration.png|600px]]<br />
| style="vertical-align:top;" |<br />
L'activation de Datatables est facultative mais ajoute des fonctionnalités d'affichage intéressantes dans l'utilisation de myList tels que la pagination, l'affichage et le déplacement de colonnes.<br />
<br />
L'activation de l'export permettra l'extraction des données présentes dans les listes au format CSV pour un retraitement ultérieur.<br />
<br />
Vous pourrez enfin activer les éditions et choisir celle utilisée par défaut dans le '''tableau de génération des éditions'''.<br />
|}<br />
<br />
===Permissions===<br />
es 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 ([[file:tick.png]] ).<br />
<br />
*Permissions utilisateurs et groupes<br />
{| class="wikitable"<br />
| [[file:myliste_Permissions-utilisateurs.png|600px]]<br />
| style="vertical-align:top;" | Les accès aux fonctionnalités du modules peuvent être restreints aux utilisateurs et groupes, depuis leur fiche puis onglet Permissions, selon les permissions<br />
|}<br />
<br />
*Permissions par défaut<br />
{| class="wikitable"<br />
| [[file:mylist_Permissions-defaut.png|600px]]<br />
| style="vertical-align:top;" | Les permissions par défaut (Accueil > Configuration > Sécurité > Permissions par défaut), accordées à tout utilisateur créé ultérieurement à l'installation du module, si il n'est pas ajouté à un groupe, sont les suivantes<br />
|}<br />
<br />
==Démarrage==<br />
Les fonctionnalités de myList sont accessibles depuis l'onglet de menu principal Outils Patas-M. Les fonctionnalités de MyListMore s'ajoute à celles de MyList lors de la création de nouvelles listes. Votre menu secondaire présente alors les entrées de menu suivantes :<br />
{| class="wikitable"<br />
|- style="vertical-align:top;" <br />
| [[file:mylist_Menusecondaire.png]]<br />
| <br />
*myList : l'entrée principale '''myList''' permet d’afficher toutes les listes définies dans votre environnement (même si celles-ci ne sont pas actives). En cliquant sur le titre de la liste, on peut visualiser la liste. Cet écran est très utile lors du développement d’une liste qui n’est pas encore active. Il est cependant préférable de tester ces listes sur un environnement de test puis d’utiliser la fonction d’import/export pour la mettre en place en production.<br />
*Nouvelle liste : cette entrée vous affichera la page de création d'une nouvelle liste.<br />
*Mes Listes : le lien '''Mes listes''' permet d’afficher la liste des listes présentes dans votre environnement. Le lien en début de ligne vous permet d’afficher le résultat de la requête de la liste en plus de ses résultats.<br />
*Importer une liste : cette entré affichera une page permettant de copier un fichier d'import d'une liste au format XML. (Voir "Import d'une liste" plus bas).<br />
|}<br />
<br />
==Création d'une liste==<br />
===Champs de la page de création d'une liste===<br />
Ouvrez la page de création d'une liste depuis le lien de menu '''Outils Patas-M > Mylist > Nouvelle liste''' :<br />
<br />
[[file:mylist_Page_nouvelle_liste.png|600px]]<br />
<br />
{| class="wikitable"<br />
| style="vertical-align:top;width:15%;" | <br />
Libellé<br />
| le libellé sera affiché en tant que titre de la page d'affichage de la liste.<br />
|-<br />
| Titre du menu<br />
| le titre sera affiché dans les menus de Dolibarr en tant que lien d'accès à la liste<br />
|-<br />
| Menu principal et Menu secondaire<br />
| pour déterminer l'emplacement de la liste dans les menus Dolibarr, Il est nécessaire de les indiquer en remplissant les champs avec leur nom exact.<br />
<br />
Les valeurs à renseigner ici sont présentes dans les URL des menus :<br />
<br />
Exemple du menu principal tiers :<br />
<br />
<code>...htdocs/societe/index.php?mainmenu=companies&leftmenu=</code><br />
<br />
Exemple d'un menu secondaire :<br />
<br />
<code>...htdocs/societe/index.php?leftmenu=thirdparties</code><br />
|-<br />
| Onglet dans l'élément<br />
| les résultats de la liste peuvent être affichés dans un onglet ajouté sur les fiches de l'élément sélectionné dans cette liste (tiers, produits, projets, catégories de tiers et de produits) et filtrés pour n'afficher que les résultats en lien avec lui-même.<br />
|-<br />
| Habilitations<br />
| Dolibarr possède nativement des fonctionnalités avancées pour gérer les droits d'accès à ses menus. Il est possible d'utiliser ce champ pour saisir une condition d'habilitation afin d'accéder au contenu de la page si la condition n'est pas respectée, le menu sera grisé.<br />
<br />
Généralement les habilitations sont définies de la manière suivante :<br />
<code>$user->rights->élément->droit</code> où élément correspond à un module de Dolibarr (devis, commande, projet, …) et droit à l’habilitation sur le module (lire, écrire, paramétrer...).<br />
<br />
Par exemple pour autoriser l’accès uniquement aux utilisateurs ayant accès en lecture aux propositions commerciales il faut saisir <code>$user->rights->propale->lire</code>.<br />
<br />
Pour repérer l’habilitation que l’on souhaite utiliser, une astuce consiste à aller dans le fichier de configuration du module gérant cette habilitation.<br />
|-<br />
| Fichier de langue<br />
| afin de rendre plus explicite les noms de variable lors de leur saisie et les entêtes de colonnes sur les tableaux, il est possible d’utiliser les fichiers de traductions.<br />
<br />
Il suffit d’ajouter un ou plusieurs noms de fichiers de langues séparé par un #<br />
<br />
Si le fichier de langue n’est pas déposé dans le dossier du noyau de Dolibarr, il faut ajouter <code>@nomdumodule</code> à celui-ci.<br />
|-<br />
| Auteur<br />
|-<br />
| Export CSV<br />
| conditionne l'affichage d'un bouton d'export CSV du résultat de la liste<br />
|-<br />
| Document imprimable<br />
| sélectionnez ici l'orientation du PDF qui vous sera proposé par défaut pour générer les résultats de vos listes.<br />
{{Note|Note : Pour pouvoir sélectionnez les documents, ils doivent avoir été activés dans la configuration du module}}<br />
|-<br />
| Requête du tableau<br />
| requête SQL qui va définir l'affichage des données<br />
|-<br />
| Requête de traitement<br />
| permettra de paramétrer un traitement sur les résultats de la liste comme <code>DELETE</code>, <code>UPDATE</code> …<br />
|-<br />
| Champs personnalisés par défaut<br />
| les champs personnalisés saisis ici permettent de définir un ensemble de variables utilisées par la requête pour pré-filtrer des champs qui ne sont pas forcément affichés.<br />
<br />
|}<br />
<br />
==Exemple de création d'une liste simple==<br />
===Page de création===<br />
Pour l'exemple, créons une liste des produits et services affichant leur prix de vente, de revient et PMP, accessible depuis le menu principal Produits/Services :<br />
{| class="wikitable"<br />
|- style="vertical-align:top;"<br />
| [[file:mylist_Page_nouvelle_liste.png|600px]]<br />
| Ouvrez la page de création d'une nouvelle liste et saisissez les données ci-contre puis terminez la première étape de création de la liste en cliquant sur le bouton '''Créer'''<br />
|- style="vertical-align:top;"<br />
| [[file:mylist_Liste_cree.png|600px]]<br />
Trois boutons sont présent en bas de l'écran :<br />
* '''Modifier''' vous permettra d'entrer en édition de la liste pour en modifier la requête ou tout autre élément (menus d'accès, onglets d'affichage …<br />
* '''Importation / Exportation de la page''' générera le fichier XML que vous pourrez modifier avant de le copier pour l'exporter<br />
* '''Supprimer''' effacera la liste de votre base de données. Désactivez toujours une liste avant de la supprimer. Si vous effectuez une suppression sans avoir désactivé la liste auparavant, elle restera présente dans votre base de donnée et sur votre interface, mais vidée de son contenu|warn<br />
| Une fois la liste créée, trois nouveaux champs sont affichés et peuvent être modifié en édition de la fiche :<br />
*Export CSV autorisé : cette fonctionnalité permettra l'export CSV des résultats de la liste pour un retraitement ultérieur.<br />
*Forcer l'affichage de tous les résultats : cette fonctionnalité forcera l'affichage de tous les résultat de la liste sans filtrage.<br />
{{Note|Selon la complexité de votre requête et la quantité d'information à traiter, activer cette fonctionnalité peut ralentir le système}}<br />
*Liste active : suite à sa création, une liste est par défaut, '''Inactive'''. Modifiez son état pour permettre son affichage depuis les liens de menus déclarés sur sa fiche.<br />
|}<br />
<br />
===Champs de la liste===<br />
Depuis la page affichée suite à la création de la liste, cliquez sur le bouton Nouveau champ :<br />
*Nom du champ : nom du champ tel qu'il est présent dans les tables de Dolibarr<br />
*Alias : il s’agit de l’alias du champ dans le sens base de données. Cet alias n’est pas obligatoire<br />
*Nom : titre de colonne affiché dans la liste<br />
*Type : ce paramètre suit le fonctionnement des champs supplémentaires natifs de Dolibarr. Cependant, 4 champs ont une mise en forme spécifique :<br />
**Prix : affiche un nombre en utilisant le format de précision défini dans Dolibarr<br />
**Pourcent : affiche un nombre en pourcentage<br />
**Date : affiche une date au format « jour »<br />
**Boolean : affiche un oui ou un non dans la cellule de la ligne<br />
**Tooltip : DescTooltip<br />
**Extrafield de type liste : pour faire ressortir sur une myList la valeur d'un champ supplémentaire sur les fiches, sélectionnez ce type de champ. Son paramètre sera alors <code>NomDeLElement:NomDuCHamp</code>. Par exemple, pour affiche le contenu de l'extrafield <code>extrafield</code> enregistré sur la fiche d'un produit, saisissez <code>product:extrafield</code>.<br />
*Paramètre du champ : cette fonctionnalité est liée au paramétrage des champs de type clé (<code>rowid</code> et <code>fk_xxx</code>) pour les champs de liste de type texte, liste et statut. Elle permet de rendre cliquable et/ou filtrable par liste déroulante.<br />
:L'alimentation de ce champ nécessite une connaissance des tables et de l'organisation des classes des différents éléments de Dolibarr.<br />
:Quelques exemples de formation du paramètre :<br />
** 1er cas : liste issue d'une table<br />
::Table : <code>c_typent</code> (sans le préfixe)<br />
::Clé : <code>id</code><br />
::Libellé : <code>libelle</code><br />
::Paramètre à indiquer dans le paramétrage du champ de myList : <code>c_typent:id:libelle</code><br />
** 2ème cas : rendre cliquables les résultats de liste<br />
::Nom de la classe de l'élément à rendre cliquable : <code>Facture:</code><br />
::Chemin du fichier définissant la classe : <code>/compta/facture/class/facture.class.php</code><br />
::Nom de la table : <code>:facture</code><br />
::Champ à afficher : <code>nom_du_champ</code><br />
::Paramètre à indiquer dans le paramétrage du champ de myList : <code>Facture:/compta/facture/class/facture.class.php:facture:nom_du_champ</code><br />
** Paramètres les plus fréquemment utilisés :<br />
::Tiers : <code>Societe:/societe/class/societe.class.php</code><br />
::Contact : <code>Contact:/contact/class/contact.class.php</code><br />
::Utilisateurs : <code>User:/user/class/user.class.php:user:lastname </code><br />
::Produit : <code>Product:/product/class/product.class.php</code><br />
::proposition commerciale : <code>Propal:/comm/propal/class/propal.class.php</code><br />
::Commande client :<code>Commande:/commande/class/commande.class.php:commande:ref</code><br />
::Facture client : <code>Facture:/compta/facture/class/facture.class.php</code><br />
::Projet : <code>Project:/projet/class/project.class.php</code><br />
::Taches : <code>Task:/project/class/task.class.php</code><br />
::Contrat : <code>Contrat:/contrat/class/contrat.class.php</code><br />
::Intervention : <code>Fichinter:/fichinter/class/fichinter.class.php</code><br />
::Expédition : <code>Expedition:/expedition/class/expedition.class.php</code><br />
::Commande fournisseur : <code>CommandeFournisseur:/fourn/class/fournisseur.commande.class.php</code><br />
::Facture fournisseur : <code>FactureFournisseur:/fourn/class/fournisseur.facture.class.php</code><br />
::Entrepôt : <code>Entrepot:/product/stock/class/entrepot.class.php</code><br />
::Événement : <code>ActionComm:/comm/action/class/actioncomm.class.php</code><br />
::Banque : <code>Account:/compta/bank/class/account.class.php</code><br />
::Catégorie : <code>Categorie:/categories/class/categorie.class.php</code><br />
*Largeur : la largeur saisie ici s'appliquera au champ à l'écran<br />
*Alignement<br />
*Actif : le champ sera présent et affiché par défaut. Son affichage pourra être modifié depuis le bouton autres colonnes.<br />
*Visible : le champ sera affiché dans la liste<br />
*Filtrable : <br />
:Options de filtrage sur les valeurs du champ.<br />
:{| class="wikitable" <br />
|- style="background-color:orange; font-weight:bold;" <br />
| Durée, Nombre, Somme, Prix <br />
| Résultat<br />
|- <br />
| < 20000 <br />
| nombres < et = à 200000<br />
|- <br />
| 200000-300000<br />
| nombres de 200000 à 300000 inclus<br />
|- style="background-color: orange; font-weight:bold;"<br />
| Date <br />
| <br />
|- <br />
|2008<br />
| toutes les dates de 2008 du 01/01 au 31/12 inclus<br />
|- <br />
| 2006-2009<br />
| toutes les dates du 01/01/2006 au 31/12/2009 inclus<br />
|- <br />
| >2004<br />
| toutes les dates supérieures (ou =) au 01/01/2004<br />
|- <br />
| 20060401<br />
| Tous les éléments correspondant au jour saisi au format AAAMMJJ<br />
|}<br />
::Boolean, Liste, Statut : dans le cas d’un filtre booléen, trois valeurs sont sélectionnables dans la liste :<br />
:::vide : le champ n’est pas filtré<br />
:::<code>vrai</code> : sélectionne les valeurs saisies à « vrai »<br />
:::<code>faux</code> : sélection des valeurs saisies à « faux »<br />
:::Dans les autres cas, cela dépend du paramétrage additionnel du champ.<br />
{{Note|Une zone au format Check n’est pas filtrable}}<br />
*Filtre par défaut : ajouter un filtre par défaut permet l'enregistrement d'une valeur de filtrage active dès l'affichage de la liste.<br />
{{Note|Les champs ci-dessous sont apportés par '''myListMore'''}}<br />
*Largeur sur l'édition : la largeur saisie ici s'appliquera à l'édition PDF<br />
{{Note|Les champs ci-dessous ne s'appliquent qu'aux champs de type prix ou nombre.|warn}}<br />
*Totalisation du champ : affichera un tableau avec les totaux des champs pour lesquels la fonctionnalité aura été activée.<br />
* Moyenne du champ :affichera un tableau avec les moyennes des champs pour lesquels la fonctionnalité aura été activée.<br />
<br />
===Gestion des clés spécifiques (<code>rowid</code>, <code>fk_statut</code>)===<br />
*Champs rowid : les champs rowid ont un fonctionnement particulier dans myList, associés à des paramètres, ils permettent de créer un lien vers l’élément dont ils sont la clé.<br />
:Rendre un champ cliquable est sans doute la problématique la plus complexe de myList car elle implique de comprendre un peu l’architecture de Dolibarr.<br />
:Tout d’abord il est nécessaire de repérer dans les répertoires de Dolibarr où se trouve la classe de l’élément que l’on souhaite appeler et comment celle-ci se nomme dans le fichier<br />
:Si l’on souhaite par exemple rendre cliquable une commande fournisseur, il faut trouver le fichier de la classe associée à cet élément (<code>/fourn/class/fournisseur.commande.class.php</code>) puis regarder le nom de la classe objet (CommandeFournisseur).<br />
*Champs fk_statut : les champs fk_statut servent à connaître l'état d'un élément. Cependant, le nombre et le type d'état est propre à chaque élément. Les choix sélectionnables sont donc à ajouter aux paramètres supplémentaires des champs. Comme pour le <code>rowid</code>, il convient donc de repérer la classe utilisée pour définir l'élément mis ajouter les états que l'on souhaite utiliser en les séparant par des #.<br />
<br />
{| class="wikitable"<br />
| [[file:mylist_Exemple_champs.png|600px]]<br />
| style="vertical-align:top;" | Terminez la création des champs sur le modèle ci-contre<br />
|}<br />
<br />
Pour que la liste soit accessible depuis les menus de Dolibarr, il vous suffit de modifier la liste pour la rendre active.<br />
{{Note|Avant de rendre la liste active, vous pouvez l'afficher avec sa requête en utilisant le lien de menu '''Outils Patas-M > MyList'''.<br />
Cette astuce ne fonctionne que sur les liste non encore activées.}}<br />
<br />
[[file:mylist_Liste_test.png|600px]]<br />
<br />
{| class="wikitable"<br />
| [[file:mylist_Liste_affichee.png|600px]]<br />
| style="vertical-align:top;" | Une fois la liste activée, elle apparaîtra depuis les liens définis sur sa page de création.<br />
Le bouton '''Export en CSV''' permet d'effectuer un export des résultats de la liste au format CSV pour un traitement externe. Il est nécessaire d'avoir activé la fonctionnalité d'export dans la "Configuration" et dans le paramétrage enregistré lors de la "Champs de la page de création d'une liste".<br />
|}<br />
<br />
{| class="wikitable"<br />
| [[file:mylist_Liste_test.png|600px]]<br />
| style="vertical-align:top;" | Si vous avez paramétré la liste pour l'afficher dans l'onglet d'une fiche, les résultats seront filtrés selon l'élément. <br />
{{Note|Le filtrage de l'affichage des résultats de la liste nécessite la présence d'une condition dans sa requête SQL. Si aucune n'est présente, ajoutez par exemple WHERE <nowiki>1 = 1</nowiki> }}<br />
|}<br />
<br />
==Autres fonctionnalités==<br />
===Import d'une liste===<br />
<br />
Il est possible d'enregistrer une liste et le paramétrage de ses champs en important un fichier '''XML'''.<br />
{{Note|Des exemples de liste sont livrés avec le module MyList dans le dossier XMLsample}}<br />
<br />
{| class="wikitable"<br />
| [[file:mylist_Import.png|600px]]<br />
| style="vertical-align:top;" | Depuis la page '''Outils Patas-M > MyList > Importer une liste''', collez le fichier XML dans la zone de saisie et cliquez sur le bouton '''Lancer l'importation'''.<br />
Activez la liste depuis sa fiche et elle sera accessible depuis vos menus de Dolibarr<br />
|}<br />
<br />
Activez la liste depuis sa fiche et elle sera accessible depuis vos menus de Dolibarr.<br />
<br />
===Requêtes de traitement===<br />
En complément de la requête d'affichage de la liste, une requête de traitement peut donner la possibilité d'effectuer de nouvelles actions, toujours à partir de requêtes SQL.<br />
<br />
{| class="wikitable"<br />
| [[file:mylist_Fiche_liste_traitement.png|600px]]<br />
| style="vertical-align:top;" | Partons d'une liste de contacts et ajoutons dans le champ '''Requête de traitement'' la ligne <code>DELETE FROM 'llx_socpeople' WHERE rowid=#ROWID#</code> permettant leur suppression.<br />
|}<br />
<br />
{| class="wikitable"<br />
| [[file:mylist_Liste_traitement.png|600px]]<br />
| style="vertical-align:top;" | Modifiez l'un des champs pour l'enregistrer au type checkable. La liste devient alors tel que ci-contre.<br />
Les cases à cocher serviront à sélectionner les résultats de la liste auxquels appliquer le traitement indiqué dans la requête. Dans notre exemple, les contacts sélectionnés seront supprimés de la base de données.<br />
|}<br />
<br />
===Sélection des champs à l'affichage des listes===<br />
{| class="wikitable"<br />
| [[file:mylist_Datatables.png|600px]]<br />
| style="vertical-align:top;" | En activant DataTables dans la "Configuration", vous pouvez choisir les colonnes de la liste à afficher ou non par cases à cocher depuis le bouton '''Autres colonnes'''<br />
|}<br />
<br />
==Questions fréquentes==<br />
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.<br />
Si vous rencontrez une autre erreur que celles décrites ci-dessous lors de l'utilisation de ce module :<br />
#Désactivez et réactivez le module,<br />
#Vérifier sur le ChangeLog si une nouvelle version a été publiée,<br />
#Ré-installez/mettez à jour le module,<br />
#Vérifiez que le remplacement de fichiers natifs de Dolibarr ne soit pas nécessaire au bon fonctionnement du module.<br />
#Vérifiez qu'aucune incompatibilité avec un autre module ne soit indiquée. Le cas échéant, suivez nos préconisations.<br />
<br />
Si, malgré ces manipulations, l'erreur persiste, contactez-nous en utilisant le formulaire dédié (http://docs.patas-monkey.com/support/).<br />
<br />
*Les résultats de la liste ne sont pas ceux attendus <br />
:Le meilleur moyen de s'assurer de la qualité de votre requête SQL est d'interroger directement votre base de données via phpmyadmin ou logiciel équivalent. Adapter la requête de la liste pour la coller dans la zone SQL de phpmyadmin. Si les résultats sont les mêmes que la liste, revoyez votre requête.<br />
:Dans le cas contraire, myList peut présenter un bug. Contactez-nous ! (docs.patas-monkey.com/support).<br />
*Vos listes n'apparaissent pas/plus dans vos menus<br />
:Suite à une mise à jour du module ou des listes elles-mêmes, même si vos listes indiquent qu'elles sont activées, vous devrez les réactivez en entrant en édition du champ Active et en enregistrant à nouveau.<br />
*Message d'erreur DB_ERROR_NOSUCHFIELD ou DB_ERROR_NOSUCHTABLE<br />
{| class="wikitable"<br />
| [[file:Mylist-erreur.png|600px]]<br />
| style="vertical-align:top;" | <br />
Vous avez indiqué dans votre requête un champ ou une table qui n'existent pas dans votre base de donnée ou qui n'est pas identifiable. Revoyez votre requête SQL. Il s'agit souvent d'une faute de frappe ou d'une mauvaise liaison dans votre requête.<br />
<br />
Le contenu du message vous aidera à identifier l'erreur avec les lignes '''Code retour dernier accès en base en erreur et Information sur le dernier accès en base en erreur'''.<br />
|}<br />
*Liste supprimée toujours présente<br />
:Vous avez supprimé la liste sans la désactiver d'abord. Mylist ne peut plus supprimer la liste : vous devrez nettoyer votre base de données en supprimant la liste de la table llx_mylist depuis phpmyadmin.<br />
*Message d'erreur à la création de la liste<br />
:Si vous avez effectué une mise à jour de MyListmore depuis une ancienne version, il est possible que vous rencontriez un message d'erreur à la création d'une liste.<br />
:Pour le corriger, vous devrez effectuer la requête suivante sur votre base de données : <code>ALTER TABLE `llx_mylist` CHANGE `model_pdf` `model_pdf` VARCHAR(255) NULL DEFAULT NULL;</code></div>Nomihttps://wiki.patas-monkey.com/index.php?title=MyList&diff=927MyList2021-03-29T15:04:20Z<p>Nomi : /* Gestion des clés spécifiques (rowid, fk_statut) */</p>
<hr />
<div>{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[File:mylist_250x250.png]]<br />
| Ce Module permet la création de listes personnalisées,<br />
il est aussi possible :<br />
* de créer des sommes et moyennes des champs numérique présent dans la liste<br />
* de créer une éditions au format PDF de la liste <br />
* de générer des export au format CSV des listes<br />
|}<br />
<br />
==Présentation==<br />
Le Module myList permet de créer vos propres listes personnalisées à partir des informations contenues dans votre base de données et de les rendre accessibles depuis les menus de Dolibarr. La récupération des informations est effectué par une requête SQL.<br />
<br />
[[file:mylist_Liste_affichee.png|600px]]<br />
<br />
Depuis les listes personnalisées, différentes actions peuvent être effectuées à partir de requêtes complémentaire de traitement (suppression, mise à jour …).<br />
<br />
[[file:mylist_Liste_traitement.png|600px]]<br />
<br />
MyList est livré avec trois fichiers d'import de listes desquels vous inspirer pour créer vos propres listes : contacts à rappeler, liste des factures impayées et chiffre d'affaires.<br />
<br />
MyListMore ajoute à myList :<br />
{| class="wikitable"<br />
|- style="vertical-align:top;" <br />
| [[file:mylist_Champs-mylistmore-ecran.png|600px]]<br />
|<br />
*Les sommes et moyennes des champs calculés des myList à l'écran et sur l'édition<br />
|- style="vertical-align:top;" <br />
| [[file:mylist_Champs-mylistmore-resultat.png|600px]]<br />
|<br />
*des éditions PDF<br />
|}<br />
<br />
MyListMore apporte aussi à myList deux nouveaux types de champs permettant l'affichage d'un tooltip des valeurs d'un champ supplémentaire issue d'une liste ou de dictionnaires.<br />
<br />
==Configuration des fonctionnalités du module==<br />
===Configuration===<br />
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 [[file:doli-setup.png]] ou [[file:doli-setup-old.png]] en bout de ligne.<br />
<br />
La page de configuration du module myList contient les paramétrage apportés par myListMore. Mylistmore ne nécessite donc pas de paramétrage propre.<br />
<br />
{| class="wikitable"<br />
| [[file:mylist_Configuration.png|600px]]<br />
| style="vertical-align:top;" |<br />
L'activation de Datatables est facultative mais ajoute des fonctionnalités d'affichage intéressantes dans l'utilisation de myList tels que la pagination, l'affichage et le déplacement de colonnes.<br />
<br />
L'activation de l'export permettra l'extraction des données présentes dans les listes au format CSV pour un retraitement ultérieur.<br />
<br />
Vous pourrez enfin activer les éditions et choisir celle utilisée par défaut dans le '''tableau de génération des éditions'''.<br />
|}<br />
<br />
===Permissions===<br />
es 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 ([[file:tick.png]] ).<br />
<br />
*Permissions utilisateurs et groupes<br />
{| class="wikitable"<br />
| [[file:myliste_Permissions-utilisateurs.png|600px]]<br />
| style="vertical-align:top;" | Les accès aux fonctionnalités du modules peuvent être restreints aux utilisateurs et groupes, depuis leur fiche puis onglet Permissions, selon les permissions<br />
|}<br />
<br />
*Permissions par défaut<br />
{| class="wikitable"<br />
| [[file:mylist_Permissions-defaut.png|600px]]<br />
| style="vertical-align:top;" | Les permissions par défaut (Accueil > Configuration > Sécurité > Permissions par défaut), accordées à tout utilisateur créé ultérieurement à l'installation du module, si il n'est pas ajouté à un groupe, sont les suivantes<br />
|}<br />
<br />
==Démarrage==<br />
Les fonctionnalités de myList sont accessibles depuis l'onglet de menu principal Outils Patas-M. Les fonctionnalités de MyListMore s'ajoute à celles de MyList lors de la création de nouvelles listes. Votre menu secondaire présente alors les entrées de menu suivantes :<br />
{| class="wikitable"<br />
|- style="vertical-align:top;" <br />
| [[file:mylist_Menusecondaire.png]]<br />
| <br />
*myList : l'entrée principale '''myList''' permet d’afficher toutes les listes définies dans votre environnement (même si celles-ci ne sont pas actives). En cliquant sur le titre de la liste, on peut visualiser la liste. Cet écran est très utile lors du développement d’une liste qui n’est pas encore active. Il est cependant préférable de tester ces listes sur un environnement de test puis d’utiliser la fonction d’import/export pour la mettre en place en production.<br />
*Nouvelle liste : cette entrée vous affichera la page de création d'une nouvelle liste.<br />
*Mes Listes : le lien '''Mes listes''' permet d’afficher la liste des listes présentes dans votre environnement. Le lien en début de ligne vous permet d’afficher le résultat de la requête de la liste en plus de ses résultats.<br />
*Importer une liste : cette entré affichera une page permettant de copier un fichier d'import d'une liste au format XML. (Voir "Import d'une liste" plus bas).<br />
|}<br />
<br />
==Création d'une liste==<br />
===Champs de la page de création d'une liste===<br />
Ouvrez la page de création d'une liste depuis le lien de menu '''Outils Patas-M > Mylist > Nouvelle liste''' :<br />
*Libellé : le libellé sera affiché en tant que titre de la page d'affichage de la liste.<br />
*Titre du menu : le titre sera affiché dans les menus de Dolibarr en tant que lien d'accès à la liste<br />
*Menu principal et Menu secondaire : pour déterminer l'emplacement de la liste dans les menus Dolibarr, Il est nécessaire de les indiquer en remplissant les champs avec leur nom exact.<br />
:Les valeurs à renseigner ici sont présentes dans les URL des menus :<br />
:Exemple du menu principal tiers :<br />
:<code>...htdocs/societe/index.php?mainmenu=companies&leftmenu=</code><br />
:Exemple d'un menu secondaire :<br />
:<code>...htdocs/societe/index.php?leftmenu=thirdparties</code><br />
*Onglet dans l'élément : les résultats de la liste peuvent être affichés dans un onglet ajouté sur les fiches de l'élément sélectionné dans cette liste (tiers, produits, projets, catégories de tiers et de produits) et filtrés pour n'afficher que les résultats en lien avec lui-même.<br />
*Habilitations : Dolibarr possède nativement des fonctionnalités avancées pour gérer les droits d'accès à ses menus. Il est possible d'utiliser ce champ pour saisir une condition d'habilitation afin d'accéder au contenu de la page : si la condition n'est pas respectée, le menu sera grisé.<br />
:Généralement les habilitations sont définies de la manière suivante :<br />
:<code>$user->rights->élément->droit</code> où élément correspond à un module de Dolibarr (devis, commande, projet, …) et droit à l’habilitation sur le module (lire, écrire, paramétrer...).<br />
:Par exemple pour autoriser l’accès uniquement aux utilisateurs ayant accès en lecture aux propositions commerciales il faut saisir <code>$user->rights->propale->lire</code>.<br />
:Pour repérer l’habilitation que l’on souhaite utiliser, une astuce consiste à aller dans le fichier de configuration du module gérant cette habilitation.<br />
*Fichier de langue : afin de rendre plus explicite les noms de variable lors de leur saisie et les entêtes de colonnes sur les tableaux, il est possible d’utiliser les fichiers de traductions<br />
:Il suffit d’ajouter un ou plusieurs noms de fichiers de langues séparé par un #<br />
:Si le fichier de langue n’est pas déposé dans le dossier du noyau de Dolibarr, il faut ajouter <code>@nomdumodule</code> à celui-ci.<br />
*Auteur<br />
*Export CSV : conditionne l'affichage d'un bouton d'export CSV du résultat de la liste<br />
*Document imprimable : sélectionnez ici l'orientation du PDF qui vous sera proposé par défaut pour générer les résultats de vos listes.<br />
:{{Note|Note : Pour pouvoir sélectionnez les documents, ils doivent avoir été activés dans la configuration du module}}<br />
*Requête du tableau : requête SQL qui va définir l'affichage des données<br />
*Requête de traitement : permettra de paramétrer un traitement sur les résultats de la liste comme <code>DELETE</code>, <code>UPDATE</code> …<br />
*Champs personnalisés par défaut : les champs personnalisés saisis ici permettent de définir un ensemble de variables utilisées par la requête pour pré-filtrer des champs qui ne sont pas forcément affichés.<br />
<br />
==Exemple de création d'une liste simple==<br />
===Page de création===<br />
Pour l'exemple, créons une liste des produits et services affichant leur prix de vente, de revient et PMP, accessible depuis le menu principal Produits/Services :<br />
{| class="wikitable"<br />
|- style="vertical-align:top;"<br />
| [[file:mylist_Page_nouvelle_liste.png|600px]]<br />
| Ouvrez la page de création d'une nouvelle liste et saisissez les données ci-contre puis terminez la première étape de création de la liste en cliquant sur le bouton '''Créer'''<br />
|- style="vertical-align:top;"<br />
| [[file:mylist_Liste_cree.png|600px]]<br />
Trois boutons sont présent en bas de l'écran :<br />
* '''Modifier''' vous permettra d'entrer en édition de la liste pour en modifier la requête ou tout autre élément (menus d'accès, onglets d'affichage …<br />
* '''Importation / Exportation de la page''' générera le fichier XML que vous pourrez modifier avant de le copier pour l'exporter<br />
* '''Supprimer''' effacera la liste de votre base de données. Désactivez toujours une liste avant de la supprimer. Si vous effectuez une suppression sans avoir désactivé la liste auparavant, elle restera présente dans votre base de donnée et sur votre interface, mais vidée de son contenu|warn<br />
| Une fois la liste créée, trois nouveaux champs sont affichés et peuvent être modifié en édition de la fiche :<br />
*Export CSV autorisé : cette fonctionnalité permettra l'export CSV des résultats de la liste pour un retraitement ultérieur.<br />
*Forcer l'affichage de tous les résultats : cette fonctionnalité forcera l'affichage de tous les résultat de la liste sans filtrage.<br />
{{Note|Selon la complexité de votre requête et la quantité d'information à traiter, activer cette fonctionnalité peut ralentir le système}}<br />
*Liste active : suite à sa création, une liste est par défaut, '''Inactive'''. Modifiez son état pour permettre son affichage depuis les liens de menus déclarés sur sa fiche.<br />
|}<br />
<br />
===Champs de la liste===<br />
Depuis la page affichée suite à la création de la liste, cliquez sur le bouton Nouveau champ :<br />
*Nom du champ : nom du champ tel qu'il est présent dans les tables de Dolibarr<br />
*Alias : il s’agit de l’alias du champ dans le sens base de données. Cet alias n’est pas obligatoire<br />
*Nom : titre de colonne affiché dans la liste<br />
*Type : ce paramètre suit le fonctionnement des champs supplémentaires natifs de Dolibarr. Cependant, 4 champs ont une mise en forme spécifique :<br />
**Prix : affiche un nombre en utilisant le format de précision défini dans Dolibarr<br />
**Pourcent : affiche un nombre en pourcentage<br />
**Date : affiche une date au format « jour »<br />
**Boolean : affiche un oui ou un non dans la cellule de la ligne<br />
**Tooltip : DescTooltip<br />
**Extrafield de type liste : pour faire ressortir sur une myList la valeur d'un champ supplémentaire sur les fiches, sélectionnez ce type de champ. Son paramètre sera alors <code>NomDeLElement:NomDuCHamp</code>. Par exemple, pour affiche le contenu de l'extrafield <code>extrafield</code> enregistré sur la fiche d'un produit, saisissez <code>product:extrafield</code>.<br />
*Paramètre du champ : cette fonctionnalité est liée au paramétrage des champs de type clé (<code>rowid</code> et <code>fk_xxx</code>) pour les champs de liste de type texte, liste et statut. Elle permet de rendre cliquable et/ou filtrable par liste déroulante.<br />
:L'alimentation de ce champ nécessite une connaissance des tables et de l'organisation des classes des différents éléments de Dolibarr.<br />
:Quelques exemples de formation du paramètre :<br />
** 1er cas : liste issue d'une table<br />
::Table : <code>c_typent</code> (sans le préfixe)<br />
::Clé : <code>id</code><br />
::Libellé : <code>libelle</code><br />
::Paramètre à indiquer dans le paramétrage du champ de myList : <code>c_typent:id:libelle</code><br />
** 2ème cas : rendre cliquables les résultats de liste<br />
::Nom de la classe de l'élément à rendre cliquable : <code>Facture:</code><br />
::Chemin du fichier définissant la classe : <code>/compta/facture/class/facture.class.php</code><br />
::Nom de la table : <code>:facture</code><br />
::Champ à afficher : <code>nom_du_champ</code><br />
::Paramètre à indiquer dans le paramétrage du champ de myList : <code>Facture:/compta/facture/class/facture.class.php:facture:nom_du_champ</code><br />
** Paramètres les plus fréquemment utilisés :<br />
::Tiers : <code>Societe:/societe/class/societe.class.php</code><br />
::Contact : <code>Contact:/contact/class/contact.class.php</code><br />
::Utilisateurs : <code>User:/user/class/user.class.php:user:lastname </code><br />
::Produit : <code>Product:/product/class/product.class.php</code><br />
::proposition commerciale : <code>Propal:/comm/propal/class/propal.class.php</code><br />
::Commande client :<code>Commande:/commande/class/commande.class.php:commande:ref</code><br />
::Facture client : <code>Facture:/compta/facture/class/facture.class.php</code><br />
::Projet : <code>Project:/projet/class/project.class.php</code><br />
::Taches : <code>Task:/project/class/task.class.php</code><br />
::Contrat : <code>Contrat:/contrat/class/contrat.class.php</code><br />
::Intervention : <code>Fichinter:/fichinter/class/fichinter.class.php</code><br />
::Expédition : <code>Expedition:/expedition/class/expedition.class.php</code><br />
::Commande fournisseur : <code>CommandeFournisseur:/fourn/class/fournisseur.commande.class.php</code><br />
::Facture fournisseur : <code>FactureFournisseur:/fourn/class/fournisseur.facture.class.php</code><br />
::Entrepôt : <code>Entrepot:/product/stock/class/entrepot.class.php</code><br />
::Événement : <code>ActionComm:/comm/action/class/actioncomm.class.php</code><br />
::Banque : <code>Account:/compta/bank/class/account.class.php</code><br />
::Catégorie : <code>Categorie:/categories/class/categorie.class.php</code><br />
*Largeur : la largeur saisie ici s'appliquera au champ à l'écran<br />
*Alignement<br />
*Actif : le champ sera présent et affiché par défaut. Son affichage pourra être modifié depuis le bouton autres colonnes.<br />
*Visible : le champ sera affiché dans la liste<br />
*Filtrable : <br />
:Options de filtrage sur les valeurs du champ.<br />
:{| class="wikitable" <br />
|- style="background-color:orange; font-weight:bold;" <br />
| Durée, Nombre, Somme, Prix <br />
| Résultat<br />
|- <br />
| < 20000 <br />
| nombres < et = à 200000<br />
|- <br />
| 200000-300000<br />
| nombres de 200000 à 300000 inclus<br />
|- style="background-color: orange; font-weight:bold;"<br />
| Date <br />
| <br />
|- <br />
|2008<br />
| toutes les dates de 2008 du 01/01 au 31/12 inclus<br />
|- <br />
| 2006-2009<br />
| toutes les dates du 01/01/2006 au 31/12/2009 inclus<br />
|- <br />
| >2004<br />
| toutes les dates supérieures (ou =) au 01/01/2004<br />
|- <br />
| 20060401<br />
| Tous les éléments correspondant au jour saisi au format AAAMMJJ<br />
|}<br />
::Boolean, Liste, Statut : dans le cas d’un filtre booléen, trois valeurs sont sélectionnables dans la liste :<br />
:::vide : le champ n’est pas filtré<br />
:::<code>vrai</code> : sélectionne les valeurs saisies à « vrai »<br />
:::<code>faux</code> : sélection des valeurs saisies à « faux »<br />
:::Dans les autres cas, cela dépend du paramétrage additionnel du champ.<br />
{{Note|Une zone au format Check n’est pas filtrable}}<br />
*Filtre par défaut : ajouter un filtre par défaut permet l'enregistrement d'une valeur de filtrage active dès l'affichage de la liste.<br />
{{Note|Les champs ci-dessous sont apportés par '''myListMore'''}}<br />
*Largeur sur l'édition : la largeur saisie ici s'appliquera à l'édition PDF<br />
{{Note|Les champs ci-dessous ne s'appliquent qu'aux champs de type prix ou nombre.|warn}}<br />
*Totalisation du champ : affichera un tableau avec les totaux des champs pour lesquels la fonctionnalité aura été activée.<br />
* Moyenne du champ :affichera un tableau avec les moyennes des champs pour lesquels la fonctionnalité aura été activée.<br />
<br />
===Gestion des clés spécifiques (<code>rowid</code>, <code>fk_statut</code>)===<br />
*Champs rowid : les champs rowid ont un fonctionnement particulier dans myList, associés à des paramètres, ils permettent de créer un lien vers l’élément dont ils sont la clé.<br />
:Rendre un champ cliquable est sans doute la problématique la plus complexe de myList car elle implique de comprendre un peu l’architecture de Dolibarr.<br />
:Tout d’abord il est nécessaire de repérer dans les répertoires de Dolibarr où se trouve la classe de l’élément que l’on souhaite appeler et comment celle-ci se nomme dans le fichier<br />
:Si l’on souhaite par exemple rendre cliquable une commande fournisseur, il faut trouver le fichier de la classe associée à cet élément (<code>/fourn/class/fournisseur.commande.class.php</code>) puis regarder le nom de la classe objet (CommandeFournisseur).<br />
*Champs fk_statut : les champs fk_statut servent à connaître l'état d'un élément. Cependant, le nombre et le type d'état est propre à chaque élément. Les choix sélectionnables sont donc à ajouter aux paramètres supplémentaires des champs. Comme pour le <code>rowid</code>, il convient donc de repérer la classe utilisée pour définir l'élément mis ajouter les états que l'on souhaite utiliser en les séparant par des #.<br />
<br />
{| class="wikitable"<br />
| [[file:mylist_Exemple_champs.png|600px]]<br />
| style="vertical-align:top;" | Terminez la création des champs sur le modèle ci-contre<br />
|}<br />
<br />
Pour que la liste soit accessible depuis les menus de Dolibarr, il vous suffit de modifier la liste pour la rendre active.<br />
{{Note|Avant de rendre la liste active, vous pouvez l'afficher avec sa requête en utilisant le lien de menu '''Outils Patas-M > MyList'''.<br />
Cette astuce ne fonctionne que sur les liste non encore activées.}}<br />
<br />
[[file:mylist_Liste_test.png|600px]]<br />
<br />
{| class="wikitable"<br />
| [[file:mylist_Liste_affichee.png|600px]]<br />
| style="vertical-align:top;" | Une fois la liste activée, elle apparaîtra depuis les liens définis sur sa page de création.<br />
Le bouton '''Export en CSV''' permet d'effectuer un export des résultats de la liste au format CSV pour un traitement externe. Il est nécessaire d'avoir activé la fonctionnalité d'export dans la "Configuration" et dans le paramétrage enregistré lors de la "Champs de la page de création d'une liste".<br />
|}<br />
<br />
{| class="wikitable"<br />
| [[file:mylist_Liste_test.png|600px]]<br />
| style="vertical-align:top;" | Si vous avez paramétré la liste pour l'afficher dans l'onglet d'une fiche, les résultats seront filtrés selon l'élément. <br />
{{Note|Le filtrage de l'affichage des résultats de la liste nécessite la présence d'une condition dans sa requête SQL. Si aucune n'est présente, ajoutez par exemple WHERE <nowiki>1 = 1</nowiki> }}<br />
|}<br />
<br />
==Autres fonctionnalités==<br />
===Import d'une liste===<br />
<br />
Il est possible d'enregistrer une liste et le paramétrage de ses champs en important un fichier '''XML'''.<br />
{{Note|Des exemples de liste sont livrés avec le module MyList dans le dossier XMLsample}}<br />
<br />
{| class="wikitable"<br />
| [[file:mylist_Import.png|600px]]<br />
| style="vertical-align:top;" | Depuis la page '''Outils Patas-M > MyList > Importer une liste''', collez le fichier XML dans la zone de saisie et cliquez sur le bouton '''Lancer l'importation'''.<br />
Activez la liste depuis sa fiche et elle sera accessible depuis vos menus de Dolibarr<br />
|}<br />
<br />
Activez la liste depuis sa fiche et elle sera accessible depuis vos menus de Dolibarr.<br />
<br />
===Requêtes de traitement===<br />
En complément de la requête d'affichage de la liste, une requête de traitement peut donner la possibilité d'effectuer de nouvelles actions, toujours à partir de requêtes SQL.<br />
<br />
{| class="wikitable"<br />
| [[file:mylist_Fiche_liste_traitement.png|600px]]<br />
| style="vertical-align:top;" | Partons d'une liste de contacts et ajoutons dans le champ '''Requête de traitement'' la ligne <code>DELETE FROM 'llx_socpeople' WHERE rowid=#ROWID#</code> permettant leur suppression.<br />
|}<br />
<br />
{| class="wikitable"<br />
| [[file:mylist_Liste_traitement.png|600px]]<br />
| style="vertical-align:top;" | Modifiez l'un des champs pour l'enregistrer au type checkable. La liste devient alors tel que ci-contre.<br />
Les cases à cocher serviront à sélectionner les résultats de la liste auxquels appliquer le traitement indiqué dans la requête. Dans notre exemple, les contacts sélectionnés seront supprimés de la base de données.<br />
|}<br />
<br />
===Sélection des champs à l'affichage des listes===<br />
{| class="wikitable"<br />
| [[file:mylist_Datatables.png|600px]]<br />
| style="vertical-align:top;" | En activant DataTables dans la "Configuration", vous pouvez choisir les colonnes de la liste à afficher ou non par cases à cocher depuis le bouton '''Autres colonnes'''<br />
|}<br />
<br />
==Questions fréquentes==<br />
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.<br />
Si vous rencontrez une autre erreur que celles décrites ci-dessous lors de l'utilisation de ce module :<br />
#Désactivez et réactivez le module,<br />
#Vérifier sur le ChangeLog si une nouvelle version a été publiée,<br />
#Ré-installez/mettez à jour le module,<br />
#Vérifiez que le remplacement de fichiers natifs de Dolibarr ne soit pas nécessaire au bon fonctionnement du module.<br />
#Vérifiez qu'aucune incompatibilité avec un autre module ne soit indiquée. Le cas échéant, suivez nos préconisations.<br />
<br />
Si, malgré ces manipulations, l'erreur persiste, contactez-nous en utilisant le formulaire dédié (http://docs.patas-monkey.com/support/).<br />
<br />
*Les résultats de la liste ne sont pas ceux attendus <br />
:Le meilleur moyen de s'assurer de la qualité de votre requête SQL est d'interroger directement votre base de données via phpmyadmin ou logiciel équivalent. Adapter la requête de la liste pour la coller dans la zone SQL de phpmyadmin. Si les résultats sont les mêmes que la liste, revoyez votre requête.<br />
:Dans le cas contraire, myList peut présenter un bug. Contactez-nous ! (docs.patas-monkey.com/support).<br />
*Vos listes n'apparaissent pas/plus dans vos menus<br />
:Suite à une mise à jour du module ou des listes elles-mêmes, même si vos listes indiquent qu'elles sont activées, vous devrez les réactivez en entrant en édition du champ Active et en enregistrant à nouveau.<br />
*Message d'erreur DB_ERROR_NOSUCHFIELD ou DB_ERROR_NOSUCHTABLE<br />
{| class="wikitable"<br />
| [[file:Mylist-erreur.png|600px]]<br />
| style="vertical-align:top;" | <br />
Vous avez indiqué dans votre requête un champ ou une table qui n'existent pas dans votre base de donnée ou qui n'est pas identifiable. Revoyez votre requête SQL. Il s'agit souvent d'une faute de frappe ou d'une mauvaise liaison dans votre requête.<br />
<br />
Le contenu du message vous aidera à identifier l'erreur avec les lignes '''Code retour dernier accès en base en erreur et Information sur le dernier accès en base en erreur'''.<br />
|}<br />
*Liste supprimée toujours présente<br />
:Vous avez supprimé la liste sans la désactiver d'abord. Mylist ne peut plus supprimer la liste : vous devrez nettoyer votre base de données en supprimant la liste de la table llx_mylist depuis phpmyadmin.<br />
*Message d'erreur à la création de la liste<br />
:Si vous avez effectué une mise à jour de MyListmore depuis une ancienne version, il est possible que vous rencontriez un message d'erreur à la création d'une liste.<br />
:Pour le corriger, vous devrez effectuer la requête suivante sur votre base de données : <code>ALTER TABLE `llx_mylist` CHANGE `model_pdf` `model_pdf` VARCHAR(255) NULL DEFAULT NULL;</code></div>Nomihttps://wiki.patas-monkey.com/index.php?title=MyList&diff=926MyList2021-03-29T14:58:48Z<p>Nomi : /* Champs de la liste */</p>
<hr />
<div>{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[File:mylist_250x250.png]]<br />
| Ce Module permet la création de listes personnalisées,<br />
il est aussi possible :<br />
* de créer des sommes et moyennes des champs numérique présent dans la liste<br />
* de créer une éditions au format PDF de la liste <br />
* de générer des export au format CSV des listes<br />
|}<br />
<br />
==Présentation==<br />
Le Module myList permet de créer vos propres listes personnalisées à partir des informations contenues dans votre base de données et de les rendre accessibles depuis les menus de Dolibarr. La récupération des informations est effectué par une requête SQL.<br />
<br />
[[file:mylist_Liste_affichee.png|600px]]<br />
<br />
Depuis les listes personnalisées, différentes actions peuvent être effectuées à partir de requêtes complémentaire de traitement (suppression, mise à jour …).<br />
<br />
[[file:mylist_Liste_traitement.png|600px]]<br />
<br />
MyList est livré avec trois fichiers d'import de listes desquels vous inspirer pour créer vos propres listes : contacts à rappeler, liste des factures impayées et chiffre d'affaires.<br />
<br />
MyListMore ajoute à myList :<br />
{| class="wikitable"<br />
|- style="vertical-align:top;" <br />
| [[file:mylist_Champs-mylistmore-ecran.png|600px]]<br />
|<br />
*Les sommes et moyennes des champs calculés des myList à l'écran et sur l'édition<br />
|- style="vertical-align:top;" <br />
| [[file:mylist_Champs-mylistmore-resultat.png|600px]]<br />
|<br />
*des éditions PDF<br />
|}<br />
<br />
MyListMore apporte aussi à myList deux nouveaux types de champs permettant l'affichage d'un tooltip des valeurs d'un champ supplémentaire issue d'une liste ou de dictionnaires.<br />
<br />
==Configuration des fonctionnalités du module==<br />
===Configuration===<br />
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 [[file:doli-setup.png]] ou [[file:doli-setup-old.png]] en bout de ligne.<br />
<br />
La page de configuration du module myList contient les paramétrage apportés par myListMore. Mylistmore ne nécessite donc pas de paramétrage propre.<br />
<br />
{| class="wikitable"<br />
| [[file:mylist_Configuration.png|600px]]<br />
| style="vertical-align:top;" |<br />
L'activation de Datatables est facultative mais ajoute des fonctionnalités d'affichage intéressantes dans l'utilisation de myList tels que la pagination, l'affichage et le déplacement de colonnes.<br />
<br />
L'activation de l'export permettra l'extraction des données présentes dans les listes au format CSV pour un retraitement ultérieur.<br />
<br />
Vous pourrez enfin activer les éditions et choisir celle utilisée par défaut dans le '''tableau de génération des éditions'''.<br />
|}<br />
<br />
===Permissions===<br />
es 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 ([[file:tick.png]] ).<br />
<br />
*Permissions utilisateurs et groupes<br />
{| class="wikitable"<br />
| [[file:myliste_Permissions-utilisateurs.png|600px]]<br />
| style="vertical-align:top;" | Les accès aux fonctionnalités du modules peuvent être restreints aux utilisateurs et groupes, depuis leur fiche puis onglet Permissions, selon les permissions<br />
|}<br />
<br />
*Permissions par défaut<br />
{| class="wikitable"<br />
| [[file:mylist_Permissions-defaut.png|600px]]<br />
| style="vertical-align:top;" | Les permissions par défaut (Accueil > Configuration > Sécurité > Permissions par défaut), accordées à tout utilisateur créé ultérieurement à l'installation du module, si il n'est pas ajouté à un groupe, sont les suivantes<br />
|}<br />
<br />
==Démarrage==<br />
Les fonctionnalités de myList sont accessibles depuis l'onglet de menu principal Outils Patas-M. Les fonctionnalités de MyListMore s'ajoute à celles de MyList lors de la création de nouvelles listes. Votre menu secondaire présente alors les entrées de menu suivantes :<br />
{| class="wikitable"<br />
|- style="vertical-align:top;" <br />
| [[file:mylist_Menusecondaire.png]]<br />
| <br />
*myList : l'entrée principale '''myList''' permet d’afficher toutes les listes définies dans votre environnement (même si celles-ci ne sont pas actives). En cliquant sur le titre de la liste, on peut visualiser la liste. Cet écran est très utile lors du développement d’une liste qui n’est pas encore active. Il est cependant préférable de tester ces listes sur un environnement de test puis d’utiliser la fonction d’import/export pour la mettre en place en production.<br />
*Nouvelle liste : cette entrée vous affichera la page de création d'une nouvelle liste.<br />
*Mes Listes : le lien '''Mes listes''' permet d’afficher la liste des listes présentes dans votre environnement. Le lien en début de ligne vous permet d’afficher le résultat de la requête de la liste en plus de ses résultats.<br />
*Importer une liste : cette entré affichera une page permettant de copier un fichier d'import d'une liste au format XML. (Voir "Import d'une liste" plus bas).<br />
|}<br />
<br />
==Création d'une liste==<br />
===Champs de la page de création d'une liste===<br />
Ouvrez la page de création d'une liste depuis le lien de menu '''Outils Patas-M > Mylist > Nouvelle liste''' :<br />
*Libellé : le libellé sera affiché en tant que titre de la page d'affichage de la liste.<br />
*Titre du menu : le titre sera affiché dans les menus de Dolibarr en tant que lien d'accès à la liste<br />
*Menu principal et Menu secondaire : pour déterminer l'emplacement de la liste dans les menus Dolibarr, Il est nécessaire de les indiquer en remplissant les champs avec leur nom exact.<br />
:Les valeurs à renseigner ici sont présentes dans les URL des menus :<br />
:Exemple du menu principal tiers :<br />
:<code>...htdocs/societe/index.php?mainmenu=companies&leftmenu=</code><br />
:Exemple d'un menu secondaire :<br />
:<code>...htdocs/societe/index.php?leftmenu=thirdparties</code><br />
*Onglet dans l'élément : les résultats de la liste peuvent être affichés dans un onglet ajouté sur les fiches de l'élément sélectionné dans cette liste (tiers, produits, projets, catégories de tiers et de produits) et filtrés pour n'afficher que les résultats en lien avec lui-même.<br />
*Habilitations : Dolibarr possède nativement des fonctionnalités avancées pour gérer les droits d'accès à ses menus. Il est possible d'utiliser ce champ pour saisir une condition d'habilitation afin d'accéder au contenu de la page : si la condition n'est pas respectée, le menu sera grisé.<br />
:Généralement les habilitations sont définies de la manière suivante :<br />
:<code>$user->rights->élément->droit</code> où élément correspond à un module de Dolibarr (devis, commande, projet, …) et droit à l’habilitation sur le module (lire, écrire, paramétrer...).<br />
:Par exemple pour autoriser l’accès uniquement aux utilisateurs ayant accès en lecture aux propositions commerciales il faut saisir <code>$user->rights->propale->lire</code>.<br />
:Pour repérer l’habilitation que l’on souhaite utiliser, une astuce consiste à aller dans le fichier de configuration du module gérant cette habilitation.<br />
*Fichier de langue : afin de rendre plus explicite les noms de variable lors de leur saisie et les entêtes de colonnes sur les tableaux, il est possible d’utiliser les fichiers de traductions<br />
:Il suffit d’ajouter un ou plusieurs noms de fichiers de langues séparé par un #<br />
:Si le fichier de langue n’est pas déposé dans le dossier du noyau de Dolibarr, il faut ajouter <code>@nomdumodule</code> à celui-ci.<br />
*Auteur<br />
*Export CSV : conditionne l'affichage d'un bouton d'export CSV du résultat de la liste<br />
*Document imprimable : sélectionnez ici l'orientation du PDF qui vous sera proposé par défaut pour générer les résultats de vos listes.<br />
:{{Note|Note : Pour pouvoir sélectionnez les documents, ils doivent avoir été activés dans la configuration du module}}<br />
*Requête du tableau : requête SQL qui va définir l'affichage des données<br />
*Requête de traitement : permettra de paramétrer un traitement sur les résultats de la liste comme <code>DELETE</code>, <code>UPDATE</code> …<br />
*Champs personnalisés par défaut : les champs personnalisés saisis ici permettent de définir un ensemble de variables utilisées par la requête pour pré-filtrer des champs qui ne sont pas forcément affichés.<br />
<br />
==Exemple de création d'une liste simple==<br />
===Page de création===<br />
Pour l'exemple, créons une liste des produits et services affichant leur prix de vente, de revient et PMP, accessible depuis le menu principal Produits/Services :<br />
{| class="wikitable"<br />
|- style="vertical-align:top;"<br />
| [[file:mylist_Page_nouvelle_liste.png|600px]]<br />
| Ouvrez la page de création d'une nouvelle liste et saisissez les données ci-contre puis terminez la première étape de création de la liste en cliquant sur le bouton '''Créer'''<br />
|- style="vertical-align:top;"<br />
| [[file:mylist_Liste_cree.png|600px]]<br />
Trois boutons sont présent en bas de l'écran :<br />
* '''Modifier''' vous permettra d'entrer en édition de la liste pour en modifier la requête ou tout autre élément (menus d'accès, onglets d'affichage …<br />
* '''Importation / Exportation de la page''' générera le fichier XML que vous pourrez modifier avant de le copier pour l'exporter<br />
* '''Supprimer''' effacera la liste de votre base de données. Désactivez toujours une liste avant de la supprimer. Si vous effectuez une suppression sans avoir désactivé la liste auparavant, elle restera présente dans votre base de donnée et sur votre interface, mais vidée de son contenu|warn<br />
| Une fois la liste créée, trois nouveaux champs sont affichés et peuvent être modifié en édition de la fiche :<br />
*Export CSV autorisé : cette fonctionnalité permettra l'export CSV des résultats de la liste pour un retraitement ultérieur.<br />
*Forcer l'affichage de tous les résultats : cette fonctionnalité forcera l'affichage de tous les résultat de la liste sans filtrage.<br />
{{Note|Selon la complexité de votre requête et la quantité d'information à traiter, activer cette fonctionnalité peut ralentir le système}}<br />
*Liste active : suite à sa création, une liste est par défaut, '''Inactive'''. Modifiez son état pour permettre son affichage depuis les liens de menus déclarés sur sa fiche.<br />
|}<br />
<br />
===Champs de la liste===<br />
Depuis la page affichée suite à la création de la liste, cliquez sur le bouton Nouveau champ :<br />
*Nom du champ : nom du champ tel qu'il est présent dans les tables de Dolibarr<br />
*Alias : il s’agit de l’alias du champ dans le sens base de données. Cet alias n’est pas obligatoire<br />
*Nom : titre de colonne affiché dans la liste<br />
*Type : ce paramètre suit le fonctionnement des champs supplémentaires natifs de Dolibarr. Cependant, 4 champs ont une mise en forme spécifique :<br />
**Prix : affiche un nombre en utilisant le format de précision défini dans Dolibarr<br />
**Pourcent : affiche un nombre en pourcentage<br />
**Date : affiche une date au format « jour »<br />
**Boolean : affiche un oui ou un non dans la cellule de la ligne<br />
**Tooltip : DescTooltip<br />
**Extrafield de type liste : pour faire ressortir sur une myList la valeur d'un champ supplémentaire sur les fiches, sélectionnez ce type de champ. Son paramètre sera alors <code>NomDeLElement:NomDuCHamp</code>. Par exemple, pour affiche le contenu de l'extrafield <code>extrafield</code> enregistré sur la fiche d'un produit, saisissez <code>product:extrafield</code>.<br />
*Paramètre du champ : cette fonctionnalité est liée au paramétrage des champs de type clé (<code>rowid</code> et <code>fk_xxx</code>) pour les champs de liste de type texte, liste et statut. Elle permet de rendre cliquable et/ou filtrable par liste déroulante.<br />
:L'alimentation de ce champ nécessite une connaissance des tables et de l'organisation des classes des différents éléments de Dolibarr.<br />
:Quelques exemples de formation du paramètre :<br />
** 1er cas : liste issue d'une table<br />
::Table : <code>c_typent</code> (sans le préfixe)<br />
::Clé : <code>id</code><br />
::Libellé : <code>libelle</code><br />
::Paramètre à indiquer dans le paramétrage du champ de myList : <code>c_typent:id:libelle</code><br />
** 2ème cas : rendre cliquables les résultats de liste<br />
::Nom de la classe de l'élément à rendre cliquable : <code>Facture:</code><br />
::Chemin du fichier définissant la classe : <code>/compta/facture/class/facture.class.php</code><br />
::Nom de la table : <code>:facture</code><br />
::Champ à afficher : <code>nom_du_champ</code><br />
::Paramètre à indiquer dans le paramétrage du champ de myList : <code>Facture:/compta/facture/class/facture.class.php:facture:nom_du_champ</code><br />
** Paramètres les plus fréquemment utilisés :<br />
::Tiers : <code>Societe:/societe/class/societe.class.php</code><br />
::Contact : <code>Contact:/contact/class/contact.class.php</code><br />
::Utilisateurs : <code>User:/user/class/user.class.php:user:lastname </code><br />
::Produit : <code>Product:/product/class/product.class.php</code><br />
::proposition commerciale : <code>Propal:/comm/propal/class/propal.class.php</code><br />
::Commande client :<code>Commande:/commande/class/commande.class.php:commande:ref</code><br />
::Facture client : <code>Facture:/compta/facture/class/facture.class.php</code><br />
::Projet : <code>Project:/projet/class/project.class.php</code><br />
::Taches : <code>Task:/project/class/task.class.php</code><br />
::Contrat : <code>Contrat:/contrat/class/contrat.class.php</code><br />
::Intervention : <code>Fichinter:/fichinter/class/fichinter.class.php</code><br />
::Expédition : <code>Expedition:/expedition/class/expedition.class.php</code><br />
::Commande fournisseur : <code>CommandeFournisseur:/fourn/class/fournisseur.commande.class.php</code><br />
::Facture fournisseur : <code>FactureFournisseur:/fourn/class/fournisseur.facture.class.php</code><br />
::Entrepôt : <code>Entrepot:/product/stock/class/entrepot.class.php</code><br />
::Événement : <code>ActionComm:/comm/action/class/actioncomm.class.php</code><br />
::Banque : <code>Account:/compta/bank/class/account.class.php</code><br />
::Catégorie : <code>Categorie:/categories/class/categorie.class.php</code><br />
*Largeur : la largeur saisie ici s'appliquera au champ à l'écran<br />
*Alignement<br />
*Actif : le champ sera présent et affiché par défaut. Son affichage pourra être modifié depuis le bouton autres colonnes.<br />
*Visible : le champ sera affiché dans la liste<br />
*Filtrable : <br />
:Options de filtrage sur les valeurs du champ.<br />
:{| class="wikitable" <br />
|- style="background-color:orange; font-weight:bold;" <br />
| Durée, Nombre, Somme, Prix <br />
| Résultat<br />
|- <br />
| < 20000 <br />
| nombres < et = à 200000<br />
|- <br />
| 200000-300000<br />
| nombres de 200000 à 300000 inclus<br />
|- style="background-color: orange; font-weight:bold;"<br />
| Date <br />
| <br />
|- <br />
|2008<br />
| toutes les dates de 2008 du 01/01 au 31/12 inclus<br />
|- <br />
| 2006-2009<br />
| toutes les dates du 01/01/2006 au 31/12/2009 inclus<br />
|- <br />
| >2004<br />
| toutes les dates supérieures (ou =) au 01/01/2004<br />
|- <br />
| 20060401<br />
| Tous les éléments correspondant au jour saisi au format AAAMMJJ<br />
|}<br />
::Boolean, Liste, Statut : dans le cas d’un filtre booléen, trois valeurs sont sélectionnables dans la liste :<br />
:::vide : le champ n’est pas filtré<br />
:::<code>vrai</code> : sélectionne les valeurs saisies à « vrai »<br />
:::<code>faux</code> : sélection des valeurs saisies à « faux »<br />
:::Dans les autres cas, cela dépend du paramétrage additionnel du champ.<br />
{{Note|Une zone au format Check n’est pas filtrable}}<br />
*Filtre par défaut : ajouter un filtre par défaut permet l'enregistrement d'une valeur de filtrage active dès l'affichage de la liste.<br />
{{Note|Les champs ci-dessous sont apportés par '''myListMore'''}}<br />
*Largeur sur l'édition : la largeur saisie ici s'appliquera à l'édition PDF<br />
{{Note|Les champs ci-dessous ne s'appliquent qu'aux champs de type prix ou nombre.|warn}}<br />
*Totalisation du champ : affichera un tableau avec les totaux des champs pour lesquels la fonctionnalité aura été activée.<br />
* Moyenne du champ :affichera un tableau avec les moyennes des champs pour lesquels la fonctionnalité aura été activée.<br />
<br />
===Gestion des clés spécifiques (<code>rowid</code>, <code>fk_statut</code>)===<br />
*Champs rowid : les champs rowid ont un fonctionnement particulier dans myList, associés à des paramètres, ils permettent de créer un lien vers l’élément dont ils sont la clé.<br />
:Rendre un champ cliquable est sans doute la problématique la plus complexe de myList car elle implique de comprendre un peu l’architecture de Dolibarr.<br />
:Tout d’abord il est nécessaire de repérer dans les répertoires de Dolibarr où se trouve la classe de l’élément que l’on souhaite appeler et comment celle-ci se nomme dans le fichier<br />
:Si l’on souhaite par exemple rendre cliquable une commande fournisseur, il faut trouver le fichier de la classe associée à cet élément (<code>/fourn/class/fournisseur.commande.class.php</code>) puis regarder le nom de la classe objet (CommandeFournisseur).<br />
*Champs fk_statut : les champs fk_statut servent à connaître l'état d'un élément. Cependant, le nombre et le type d'état est propre à chaque élément. Les choix sélectionnables sont donc à ajouter aux paramètres supplémentaires des champs. Comme pour le <code>rowid</code>, il convient donc de repérer la classe utilisée pour définir l'élément mis ajouter les états que l'on souhaite utiliser en les séparant par des #.<br />
<br />
{| class="wikitable"<br />
| [[file:mylist_Exemple_champs.png|600px]]<br />
| style="vertical-align:top;" | Terminez la création des champs sur le modèle ci-contre<br />
|}<br />
<br />
Pour que la liste soit accessible depuis les menus de Dolibarr, il vous suffit de modifier la liste pour la rendre active.<br />
{{Note|Avant de rendre la liste active, vous pouvez l'afficher avec sa requête en utilisant le lien de menu '''Outils Patas-M > MyList'''.<br />
Cette astuce ne fonctionne que sur les liste non encore activées.}}<br />
<br />
[[file:mylist_Liste_test.png|600px]]<br />
<br />
{| class="wikitable"<br />
| [[file:mylist_Liste_affichee.png|600px]]<br />
| style="vertical-align:top;" | Une fois la liste activée, elle apparaîtra depuis les liens définis sur sa page de création.<br />
Le bouton '''Export en CSV''' permet d'effectuer un export des résultats de la liste au format CSV pour un traitement externe. Il est nécessaire d'avoir activé la fonctionnalité d'export dans la "Configuration" et dans le paramétrage enregistré lors de la "Champs de la page de création d'une liste".<br />
|}<br />
<br />
{| class="wikitable"<br />
| [[file:mylist_Liste_test.png|600px]]<br />
| style="vertical-align:top;" | Si vous avez paramétré la liste pour l'afficher dans l'onglet d'une fiche, les résultats seront filtrés selon l'élément. <br />
{{Note|Le filtrage de l'affichage des résultats de la liste nécessite la présence d'une condition dans sa requête SQL. Si aucune n'est présente, ajoutez par exemple WHERE 1 = 1 }}<br />
|}<br />
<br />
==Autres fonctionnalités==<br />
===Import d'une liste===<br />
<br />
Il est possible d'enregistrer une liste et le paramétrage de ses champs en important un fichier '''XML'''.<br />
{{Note|Des exemples de liste sont livrés avec le module MyList dans le dossier XMLsample}}<br />
<br />
{| class="wikitable"<br />
| [[file:mylist_Import.png|600px]]<br />
| style="vertical-align:top;" | Depuis la page '''Outils Patas-M > MyList > Importer une liste''', collez le fichier XML dans la zone de saisie et cliquez sur le bouton '''Lancer l'importation'''.<br />
Activez la liste depuis sa fiche et elle sera accessible depuis vos menus de Dolibarr<br />
|}<br />
<br />
Activez la liste depuis sa fiche et elle sera accessible depuis vos menus de Dolibarr.<br />
<br />
===Requêtes de traitement===<br />
En complément de la requête d'affichage de la liste, une requête de traitement peut donner la possibilité d'effectuer de nouvelles actions, toujours à partir de requêtes SQL.<br />
<br />
{| class="wikitable"<br />
| [[file:mylist_Fiche_liste_traitement.png|600px]]<br />
| style="vertical-align:top;" | Partons d'une liste de contacts et ajoutons dans le champ '''Requête de traitement'' la ligne <code>DELETE FROM 'llx_socpeople' WHERE rowid=#ROWID#</code> permettant leur suppression.<br />
|}<br />
<br />
{| class="wikitable"<br />
| [[file:mylist_Liste_traitement.png|600px]]<br />
| style="vertical-align:top;" | Modifiez l'un des champs pour l'enregistrer au type checkable. La liste devient alors tel que ci-contre.<br />
Les cases à cocher serviront à sélectionner les résultats de la liste auxquels appliquer le traitement indiqué dans la requête. Dans notre exemple, les contacts sélectionnés seront supprimés de la base de données.<br />
|}<br />
<br />
===Sélection des champs à l'affichage des listes===<br />
{| class="wikitable"<br />
| [[file:mylist_Datatables.png|600px]]<br />
| style="vertical-align:top;" | En activant DataTables dans la "Configuration", vous pouvez choisir les colonnes de la liste à afficher ou non par cases à cocher depuis le bouton '''Autres colonnes'''<br />
|}<br />
<br />
==Questions fréquentes==<br />
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.<br />
Si vous rencontrez une autre erreur que celles décrites ci-dessous lors de l'utilisation de ce module :<br />
#Désactivez et réactivez le module,<br />
#Vérifier sur le ChangeLog si une nouvelle version a été publiée,<br />
#Ré-installez/mettez à jour le module,<br />
#Vérifiez que le remplacement de fichiers natifs de Dolibarr ne soit pas nécessaire au bon fonctionnement du module.<br />
#Vérifiez qu'aucune incompatibilité avec un autre module ne soit indiquée. Le cas échéant, suivez nos préconisations.<br />
<br />
Si, malgré ces manipulations, l'erreur persiste, contactez-nous en utilisant le formulaire dédié (http://docs.patas-monkey.com/support/).<br />
<br />
*Les résultats de la liste ne sont pas ceux attendus <br />
:Le meilleur moyen de s'assurer de la qualité de votre requête SQL est d'interroger directement votre base de données via phpmyadmin ou logiciel équivalent. Adapter la requête de la liste pour la coller dans la zone SQL de phpmyadmin. Si les résultats sont les mêmes que la liste, revoyez votre requête.<br />
:Dans le cas contraire, myList peut présenter un bug. Contactez-nous ! (docs.patas-monkey.com/support).<br />
*Vos listes n'apparaissent pas/plus dans vos menus<br />
:Suite à une mise à jour du module ou des listes elles-mêmes, même si vos listes indiquent qu'elles sont activées, vous devrez les réactivez en entrant en édition du champ Active et en enregistrant à nouveau.<br />
*Message d'erreur DB_ERROR_NOSUCHFIELD ou DB_ERROR_NOSUCHTABLE<br />
{| class="wikitable"<br />
| [[file:Mylist-erreur.png|600px]]<br />
| style="vertical-align:top;" | <br />
Vous avez indiqué dans votre requête un champ ou une table qui n'existent pas dans votre base de donnée ou qui n'est pas identifiable. Revoyez votre requête SQL. Il s'agit souvent d'une faute de frappe ou d'une mauvaise liaison dans votre requête.<br />
<br />
Le contenu du message vous aidera à identifier l'erreur avec les lignes '''Code retour dernier accès en base en erreur et Information sur le dernier accès en base en erreur'''.<br />
|}<br />
*Liste supprimée toujours présente<br />
:Vous avez supprimé la liste sans la désactiver d'abord. Mylist ne peut plus supprimer la liste : vous devrez nettoyer votre base de données en supprimant la liste de la table llx_mylist depuis phpmyadmin.<br />
*Message d'erreur à la création de la liste<br />
:Si vous avez effectué une mise à jour de MyListmore depuis une ancienne version, il est possible que vous rencontriez un message d'erreur à la création d'une liste.<br />
:Pour le corriger, vous devrez effectuer la requête suivante sur votre base de données : <code>ALTER TABLE `llx_mylist` CHANGE `model_pdf` `model_pdf` VARCHAR(255) NULL DEFAULT NULL;</code></div>Nomihttps://wiki.patas-monkey.com/index.php?title=Accueil&diff=925Accueil2021-03-29T14:51:47Z<p>Nomi : </p>
<hr />
<div>Bonjour et Bienvenue sur notre wiki, vous trouverez ce site les documentations des modules que nous développons et maintenons.<br />
<br />
Le but étant de rendre accessible la documentation directement à partir des pages du module<br />
<br />
<br />
{{Note|L'ensemble des modules s'installent de manière standard à Dolibarr.<br />
<br />
Vous trouverez dans notre '''[[Guide d'installation]]''' les informations nécessaires pour les installer sur votre environnement.<br />
}}<br />
<br />
== Liste des documentations ==<br />
<br />
{|<br />
|-<br />
| <br />
{| class="wikitable"<br />
|-<br />
! scope="col"| GPAO<br />
! scope="col"| RH<br />
! scope="col"| Amélioration<br />
! scope="col"| Personnalisation<br />
|-<br />
| style="background: lightyellow;" | [[Equipement]]<br />
| style="background: lightgreen;" | [[MatchR]]<br />
| style="background: lightyellow;" | [[customLine]]<br />
| style="background: lightgreen;" | [[myField]]<br />
|-<br />
| style="background: lightyellow;" | [[Factory]]<br />
| style="background: lightblue;" | [[Management]]<br />
| style="background: lightgreen;" | [[customTabs]]<br />
| style="background: lightyellow;" | [[myList]]<br />
|- <br />
| style="background: lightyellow;" | [[reStock]]<br />
| style="background: lightgreen;" | [[mySchedule]]<br />
| style="background: lightblue;" | [[customTooltip]]<br />
| style="background: lightgreen;" | [[myClock]]<br />
|-<br />
| style="background: lightblue;" | [[Localise]]<br />
| style="background: lightblue;" | [[RmindR]]<br />
| style="background: lightblue;" | [[customLink]]<br />
| style="background: lightblue;" | [[myPrint]]<br />
|-<br />
| style="background: lightyellow;" | [[StockMovR]]<br />
| Process<br />
| moreDesc<br />
| style="background: lightblue;" | [[myDoliboard]]<br />
|-<br />
| style="background: lightblue;" | [[Transporteur]]<br />
| style="background: lightblue;" | [[Portofolio]] <br />
| style="background: lightblue;" | [[extraOdt]]<br />
| myDiscount<br />
|-<br />
| myBooking <br />
| <br />
| style="background: lightblue;" | [[coefPricR]]<br />
| Periodic<br />
|-<br />
| <br />
| <br />
| SupplierPricR <br />
| Vadrouille<br />
|-<br />
| <br />
| <br />
| myBroadcast <br />
| ExtraHoney<br />
|-<br />
| <br />
| <br />
| style="background: lightgreen;" | [[Extraprice]]<br />
| style="background: lightblue;" | [[ProjectBudget]]<br />
|}<br />
<br />
| style="vertical-align:top;" |<br />
''' Légende '''<br />
* sans couleur : documentation pas encore en ligne<br />
* <span style="background-color:lightblue">en bleue </span>: ancienne documentation au format pdf<br />
* <span style="background-color:lightyellow">en jaune </span> : documentation en cours de réécriture au format wiki<br />
* <span style="background-color:lightgreen">en vert </span> : documentation ok<br />
<br />
|}<br />
<br />
Vous trouverez aussi bientôt quelques tutoriaux et autres réponses à des questions fréquemment posées.</div>Nomihttps://wiki.patas-monkey.com/index.php?title=CustomTabs&diff=924CustomTabs2021-03-29T14:49:52Z<p>Nomi : /* Comportement selon les droits d'accès */</p>
<hr />
<div>{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[File:customtabs_250x250.png]]<br />
| Le Module CustomTabs permet d'ajouter vos propres onglets sur les fiches des éléments.<br />
Les champs contenus dans ces onglets personnalisés reprennent la fonctionnalité des<br />
champs supplémentaires natifs de Dolibarr.<br />
|}<br />
<br />
==Présentation==<br />
[[file:customtabs_customtabs.png|600px]]<br />
<br />
<br />
{| class="wikitable"<br />
| [[file:customtabs_enregistrements-multiples1.png|600px]]<br />
| style="vertical-align:top;" | L'accès au contenu des onglets est géré par des habilitations de groupes en accès, lecture,<br />
modification et suppression.<br />
<br />
Le contenu des onglets peut être organisé en liste ou en fiche. L'affichage de la page peut être personnalisé avec un template HTML.<br />
|}<br />
<br />
{| class="wikitable"<br />
| [[file:customtabs_GED.png|600px]]<br />
| style="vertical-align:top;" | Les onglets personnalisés peuvent contenir un gestionnaire de document. Couplée au paramétrage des droits d'accès aux onglets, cette fonctionnalité améliore la gestion native des documents dans Dolibarr en limitant la vue et l'accès des groupes d'utilisateurs aux documents.<br />
|}<br />
<br />
Les informations enregistrées dans les customTabs peuvent être reprises avec les modules myList et ExtraODT.<br />
<br />
==Paramétrage==<br />
CustomTabs n'a pas de paramétrage particulier. l'accès à ses fonctionnalités se trouve dans les entrées de menu '''Patas-tools > CustomTabs'''<br />
<br />
==Création d'un nouvel onglet==<br />
===Champs de la page de création d'un onglet===<br />
Ouvrez la page de création d'un nouvel onglet depuis le lien de menu '''Outils Patas-M > CustomTabs > Nouvel onglet''' :<br />
{{Note|Un onglet peut aussi être créé depuis la liste des onglets à l'aide du bouton dédié}}<br />
<br />
* Libellé : le libellé sera affiché en tant que nom de l'onglet affiché sur les pages des éléments.<br />
* Nom de la Table : les informations que vous saisirez dans un onglet sont enregistrées dans une table. Saisissez son nom ici.<br />
:{{Note|CustomTabs ajoutera lui-même un préfixe à votre table, contentez vous de saisir directement le nom de la table sans préfixe. Par ailleurs, le nom de la table ne doit contenir ni espace ni caractère spéciaux ni être un mot réservé au langage SQL comme SELECT, FROM, DESC…)}}<br />
* Élément : sélectionnez dans la liste déroulante l'élément sur les fiches duquel l'onglet sera ajouté parmi les tiers, contacts, produits, entrepôt, proposition commerciale, commande client, commande fournisseur, facture client, facture fournisseur, projet, compte bancaire, expédition, utilisateur, groupe d'utilisateurs, adhérent, règlement de TVA ou encore dépenses spéciale.<br />
:{{Note|CustomTabs est interfacé avec les modules Équipement et Factory. Il est donc possible de créer des onglets personnalisés sur les fiches des équipements et des ordres de fabrication}}<br />
* Type d'onglet : un onglet peut se présenter sous la forme d'une fiche ou d'une liste. Saisissez le type selon votre besoin :<br />
** Un onglet de type liste ne permet qu'un enregistrement modifiable selon les paramétrages déclaré dans les champs de saisie.<br />
** Un onglet de type fiche permet l'enregistrement de plusieurs enregistrements successifs.<br />
<br />
Le type d'onglet conditionne l'affichage et l'enregistrement des données. Selon le type sélectionné, l'onglet précédemment créé affichera alors :<br />
<br />
{| class="wikitable"<br />
|- style="vertical-align:top;"<br />
| [[file:customtabs_onglet_liste.png|600px]]<br />
|<br />
* onglet liste : un seul enregistrement peut être saisi tout en étant modifiable<br />
|- style="vertical-align:top;"<br />
| [[file:customtabs_onglet_fiche.png|600px]] <br />
|<br />
* onglet fiche : plusieurs enregistrement peuvent être saisis<br />
|}<br />
<br />
{| class="wikitable"<br />
| [[file:customtabs_onglet_parent.png|600px]]<br />
| style="vertical-align:top;" |<br />
* Parent : il est possible de créer des sous-onglets. La création d'un sous-onglet nécessite la création préalable d'un onglet parent à sélectionner ici.<br />
:La création de sous-onglets reprend la création d'un nouvel onglet en nécessitant la sélection d'un onglet parent.<br />
<br />
{{Note|Un onglet parent ne peut être que de type fiche. Il n'est pas possible de créer un sous-onglet d'un autre onglet de type liste|warn}}<br />
<br />
:Le paramétrage du sous-onglet et les champs qu’il contiendra reprennent le même fonctionnement que la création d’un onglet.<br />
:Le sous-onglet apparaîtra alors dans la fiche de l’onglet parent selon les permissions accordées aux groupes d'utilisateurs<br />
|}<br />
<br />
==Exemple simple de création d'un onglet personnalisé==<br />
===Page de création===<br />
<br />
Créons un onglet sur lequel enregistrer un suivi de prospection des tiers.<br />
<br />
{| class="wikitable"<br />
| [[file:customtabs_Creation-onglet.png|600px]]<br />
| style="vertical-align:top;" | Ouvrez la page de création d'un nouvel onglet et saisissez les données suivantes<br />
|}<br />
<br />
Terminez la première étape de création de l'onglet en cliquant sur le bouton '''Créer'''.<br />
<br />
{| class="wikitable"<br />
| [[file:customtabs_Onglet_cree.png|600px]]<br />
| style="vertical-align:top;" | Une fois l'onglet créé, deux nouveaux champs sont affichés et peuvent être modifiés en édition de la fiche :<br />
*GED (Gestion électronique de documents<br />
:En activant l'option de GED, vous pourrez stocker de documents sur l'onglet. L'accès à ces documents sera limité aux groupes qui en auront l'autorisation.<br />
*Onglet actif<br />
:Suite à sa création, un onglet est par défaut, inactif. Modifiez son état pour permettre son affichage sur les fiches des fiches des éléments sélectionnés à l'étape précédente.<br />
|}<br />
<br />
{{Note|Le bouton Modifier vous permettra d'entrer en édition de l'onglet pour en modifier différentes informations}}<br />
{{Note|Le bouton Importation / Exportation de l'onglet générera le fichier XML que vous pourrez modifier avant de le copier pour l'exporter}}<br />
{{Note|Le bouton Supprimer effacera l'onglet de votre base de données. Désactivez toujours un onglet avant de le supprimer. Si vous effectuez une suppression sans avoir désactivé l'onglet auparavant, il restera présent dans votre base de donnée et sur les fiches des éléments, mais vidé de son contenu|warn}}<br />
<br />
===Champs de saisie de l'onglet===<br />
<br />
Depuis la page affichée suite à la création de l'onglet supplémentaire, cliquez sur l'onglet '''Champs de saisie de l'onglet'''. Les éléments saisis ici seront les lignes de contenu de l'onglet personnalisé ajouté sur les fiches de l'élément sélectionné à la création.<br />
<br />
Pour ajouter un nouveau champ, clique sur le bouton '''Nouvel attribut'''.<br />
<br />
La création des champs des onglets suit la procédure de création et de fonctionnement des champs supplémentaires natifs de Dolibarr.<br />
<br />
Poursuivez la création des champs de saisie sur le modèle suivant :<br />
<br />
[[file:Customtabs_liste_champs.png|600px]]<br />
<br />
Pour que l'onglet soit accessible depuis les menus de Dolibarr, il vous suffit de le modifier pour le rendre '''actif''' et de paramétrer les droits d'accès (voir Paramétrage des droits d'accès aux onglets plus bas).<br />
<br />
===Template de l'onglet===<br />
<br />
{| class="wikitable"<br />
| [[file:Customtabs_onglet_defaut.png|600px]]<br />
| style="vertical-align:top;" | La saisie d'un template est facultative. Si aucun template n'est saisi, l'affichage par défaut est utilisé. Depuis l'onglet '''Template de l'onglet''', vous pouvez définir votre propre affichage avec du code HTML.<br />
|}<br />
<br />
{| class="wikitable"<br />
| [[file:customtas_draganddrop.png|600px]]<br />
| style="vertical-align:top;" | L'écran vous affiche la liste des champs présents sur l'onglet que vous pouvez copier-coller.<br />
Astuce : La fonctionnalité de drag and drop est utilisable pour copier le code du champs dans la zone de saisie du template.<br />
|}<br />
{{Note|Pour ajouter les icônes d'édition et de suppression dans le template, utilisez les balises #EDITBTN# et #DELETEBTN#}}<br />
{{Note|Le template est interprété différemment en fonction du type d'onglet : soit bloc par bloc sur un onglet de type liste, soit pour la page entière sur un onglet de type fiche|warn}}<br />
<br />
Vous pouvez par exemple saisir le template suivant :<br />
<br />
[[file:cutomtabs_template.png|600px]]<br />
<br />
Et vous obtiendrez :<br />
<br />
[[file:customtabs_Template_applique.png|600px]]<br />
<br />
ou<br />
<br />
[[file:customtabs_Template_applique_fiche.png|600px]]<br />
<br />
{{Note|Si un champ présent dans la table n’est pas défini dans le template, il ne sera pas affiché|warn}}<br />
<br />
===Onglet Import/ export===<br />
Voir Import/export d'un onglet et de son contenu plus bas<br />
<br />
=Accès et habilitations des utilisateurs sur les onglets=<br />
==Paramétrage des droits d'accès aux onglets==<br />
Depuis l'entrée de menu secondaire '''Patas-Tools > CustomTabs > droits d'accès aux onglets''', paramétrez les accès des groupes d'utilisateurs :<br />
<br />
[[file:customtabs_Droits-d-acces.png|600px]]<br />
<br />
Il existe quatre droits d'accès :<br />
<br />
{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[File:lecture-off.png]] Bloqué en accès<br />
[[file:lecture-on.png]] Accès en lecture<br />
| [[file:modif-of.png]] Bloqué en modification<br />
[[file:modif-on.png]] Accès en modification<br />
|}<br />
<br />
{{Note|Les habilitations ne sont pas les mêmes en fonction du type d'onglet. Sur un onglet de type fiche, les habilitations d'ajout et de suppression de champs dans l'onglet ne sont pas activées}}<br />
<br />
==Comportement selon les droits d'accès==<br />
===Bloqué en accès ([[file:lecture-off.png]])===<br />
Un message d'alerte préviendra l'utilisateur qu'il n'a pas les habilitation nécessaire pour voir le contenu de l'onglet.<br />
<br />
===Accès en lecture mais bloqué en modification ([[file:lecture-on.png]][[file:modif-of.png]])=== <br />
Les utilisateurs du groupe pourront afficher les champs de l'onglet, mais ne pourront pas en modifier le contenu.<br />
<br />
===Accès en lecture et Accès en modification ([[file:lecture-on.png]][[file:modif-on.png]])===<br />
Les utilisateurs du groupe pourront afficher l'onglet, son contenu et le modifier.<br />
<br />
=Autres fonctionnalités=<br />
==Import/export d'un onglet et de son contenu==<br />
===Import/export du paramétrage d'un onglet===<br />
Il est possible d'enregistrer un onglet et ses champs en important un fichier XML.<br />
Depuis la page '''Outils Patas-M > CustomTabs > Importer un onglet''', collez le fichier XML dans la zone de saisie et cliquez sur le bouton '''Lancer l'importation''' :<br />
<br />
[[file:customtabs_Import.png|600px]]<br />
<br />
Activez l'onglet depuis sa fiche et il sera ajouté sur les fiches de vos éléments.<br />
Cette fonctionnalité d'import permet d'éviter les étapes de création d'un onglet personnalisé. Pour importer le contenu de champs de saisie d'un onglet personnalisé, utilisez la fonctionnalité d'import de contenu.<br />
<br />
===Import du contenu des champs d'un onglet===<br />
Il est possible d'importer le contenu des champs d'un onglet en important un fichier .csv.<br />
Les importations et exportations d'un onglet nécessitent l'activation de ces fonctionnalités dans l'onglet '''Import/export''' de la fiche des onglets personnalisés<br />
{{Note|L'import/export de contenu d'un onglet n'est possible que pour les onglets de type liste|warn}}<br />
<br />
{| class="wikitable"<br />
| [[file:customtabs_Activation_importexport.png|600px]]<br />
| style="vertical-align:top;" | Activer d'abord la fonctionnalité d'import du contenu de l'onglet<br />
|}<br />
<br />
Déclarez ensuite la ligne du fichier .csv ou se trouve le nom de la colonne, le séparateur de champ utilisé, le caractère utilisé en tant que séparateur du contenu des champs et le mode d'identification des colonnes :<br />
*Basé sur le libellé des champs : La première ligne de votre fichier .csv mentionnera le libellé des champs tel qu'affiché à l'écran. Dans notre exemple, Date de début, commentaire…<br />
*Basé sur le nom des champs : La première ligne de votre fichier .csv mentionnera le code des champs tel qu'enregistré pour chacun des champs de saisie. Dans notre exemple, début, commentaire…<br />
*Basé sur l'ordre des champs : Les champs de l'onglet seront remplis par les données telles qu'elle sont ordonnées dans votre fichier .csv.<br />
<br />
{{Note|Le paramétrage "Autorise la suppression de toute les lignes d'une table (DANGEREUX)" ajoutera un bouton de suppression de toutes les lignes d'un customTabs.|warn}}<br />
<br />
Prenons le fichier .csv suivant :<br />
<br />
[[file:customtabs_Import_csv.png|600px]]<br />
<br />
Depuis l'onglet de la fiche tiers, cliquez sur le bouton '''Import csv''' :<br />
<br />
[[file:Customtabs_Config_import.png|600px]]<br />
<br />
Sélectionnez le fichier à importer, et '''Ajoutez le fichier'''.<br />
<br />
Cliquez ensuite sur l'icone [[file:new.png]] pour lancer l'importation<br />
<br />
Le customTabs affichera alors :<br />
<br />
[[file:customtabs_Resultat_import_csv.png|600px]]<br />
<br />
==Dictionnaires==<br />
CustomTabs permet la création de dictionnaires de valeurs à afficher dans des champs supplémentaires des fiches des éléments.<br />
{{Note|Cette fonctionnalité est possible pour les onglets de types Liste seulement}}<br />
<br />
{| class="wikitable"<br />
| [[file:customtabs_Dictionnaire1.png|600px]]<br />
| style="vertical-align:top;" | Créez un nouvel onglet de type Liste pour l’élément Dictionnaire et notez le nom donné à la table<br />
|} <br />
<br />
{| class="wikitable"<br />
| [[file:customtabs_Dictionnaire2.png|600px]]<br />
| style="vertical-align:top;" | Dans l’onglet '''champs de saisie de l’onglet''', créer 2 champs<br />
|}<br />
<br />
Activez l'onglet, paramétrez les droits d'accès des groupes d'utilisateurs.<br />
<br />
{| class="wikitable"<br />
| [[file:customtabs_Dictionnaire3.png|600px]]<br />
| style="vertical-align:top;" | Dans le menu secondaire '''customTabs > Dictionnaires''', ouvrez l'onglet nouvellement créé et ajoutez-lui autant de champs que nécessaires<br />
|}<br />
<br />
{| class="wikitable"<br />
| [[file:cuqtomtabs_Dictionnaire4.png|600px]]<br />
| style="vertical-align:top;" | Dans la configuration des modules (tiers et contacts dans notre exemple), créer un champ supplémentaire dans la fiche de l’élément souhaité (contact) en sélectionnant le type '''liste issue d’une table''' ou '''liste à cocher issue d'une table'''. Pour le champ '''Valeur''', reprendre le nom de la table créée à l’étape précédente et le compléter du nom du champ, soit <code>cust_languesparlees_extrafields:nomlangue</code>.<br />
|}<br />
<br />
Vos fiches afficheront alors le nouveau champ supplémentaire :<br />
<br />
[[file:customtabs_Dictionnaire5.png]]<br />
<br />
{| class="wikitable"<br />
| [[file:customtabs_Dictionnaire6.png|600px]]<br />
| style="vertical-align:top;" | L'avantage d'utiliser les dictionnaires de CustomTabs est la rapidité de modification et duplication. Ajoutons la langue anglaise dans notre dictionnaire customTabs : La modification apportée au dictionnaire s'applique à tous les champs de toutes les fiches qui proposent ses valeurs.<br />
|}<br />
<br />
et les fiches de vos contact afficheront :<br />
<br />
[[file:customtabs_Dictionnaire7.png]]<br />
<br />
=Questions fréquentes=<br />
==Général==<br />
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.<br />
Si vous rencontrez une autre erreur que celles décrites ci-dessous lors de l'utilisation de ce module :<br />
#Désactivez et réactivez le module,<br />
#Vérifier sur le ChangeLog si une nouvelle version a été publiée,<br />
#Ré-installez/mettez à jour le module,<br />
#Vérifiez que le remplacement de fichiers natifs de Dolibarr ne soit pas nécessaire au bon fonctionnement du module.<br />
#Vérifiez qu'aucune incompatibilité avec un autre module ne soit indiquée. Le cas échéant, suivez nos préconisations.<br />
<br />
Si, malgré ces manipulations, l'erreur persiste, contactez-nous en utilisant le formulaire dédié (http://docs.patas-monkey.com/support/).<br />
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.<br />
<br />
==Onglets n'apparaissant pas/plus sur vos fiches==<br />
:Suite à une mise à jour du module ou des onglets eux-mêmes, même si vos onglets indiquent qu'ils sont activés, vous devrez les réactivez en entrant en édition du champ '''onglet actif''' et en enregistrant à nouveau.<br />
:Il est également possible d'effectuer cette manipulation pour tous les onglets en un clic avec le bouton Réactivation des onglets actifs de la liste des customTabs accessible depuis les menus '''Patas-tools > CustomTabs > CustomTabs''' :<br />
<br />
:[[file:customtabs_Reactivation_onglets.png]]</div>Nomihttps://wiki.patas-monkey.com/index.php?title=CustomTabs&diff=923CustomTabs2021-03-29T14:48:59Z<p>Nomi : /* Comportement selon les droits d'accès */</p>
<hr />
<div>{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[File:customtabs_250x250.png]]<br />
| Le Module CustomTabs permet d'ajouter vos propres onglets sur les fiches des éléments.<br />
Les champs contenus dans ces onglets personnalisés reprennent la fonctionnalité des<br />
champs supplémentaires natifs de Dolibarr.<br />
|}<br />
<br />
==Présentation==<br />
[[file:customtabs_customtabs.png|600px]]<br />
<br />
<br />
{| class="wikitable"<br />
| [[file:customtabs_enregistrements-multiples1.png|600px]]<br />
| style="vertical-align:top;" | L'accès au contenu des onglets est géré par des habilitations de groupes en accès, lecture,<br />
modification et suppression.<br />
<br />
Le contenu des onglets peut être organisé en liste ou en fiche. L'affichage de la page peut être personnalisé avec un template HTML.<br />
|}<br />
<br />
{| class="wikitable"<br />
| [[file:customtabs_GED.png|600px]]<br />
| style="vertical-align:top;" | Les onglets personnalisés peuvent contenir un gestionnaire de document. Couplée au paramétrage des droits d'accès aux onglets, cette fonctionnalité améliore la gestion native des documents dans Dolibarr en limitant la vue et l'accès des groupes d'utilisateurs aux documents.<br />
|}<br />
<br />
Les informations enregistrées dans les customTabs peuvent être reprises avec les modules myList et ExtraODT.<br />
<br />
==Paramétrage==<br />
CustomTabs n'a pas de paramétrage particulier. l'accès à ses fonctionnalités se trouve dans les entrées de menu '''Patas-tools > CustomTabs'''<br />
<br />
==Création d'un nouvel onglet==<br />
===Champs de la page de création d'un onglet===<br />
Ouvrez la page de création d'un nouvel onglet depuis le lien de menu '''Outils Patas-M > CustomTabs > Nouvel onglet''' :<br />
{{Note|Un onglet peut aussi être créé depuis la liste des onglets à l'aide du bouton dédié}}<br />
<br />
* Libellé : le libellé sera affiché en tant que nom de l'onglet affiché sur les pages des éléments.<br />
* Nom de la Table : les informations que vous saisirez dans un onglet sont enregistrées dans une table. Saisissez son nom ici.<br />
:{{Note|CustomTabs ajoutera lui-même un préfixe à votre table, contentez vous de saisir directement le nom de la table sans préfixe. Par ailleurs, le nom de la table ne doit contenir ni espace ni caractère spéciaux ni être un mot réservé au langage SQL comme SELECT, FROM, DESC…)}}<br />
* Élément : sélectionnez dans la liste déroulante l'élément sur les fiches duquel l'onglet sera ajouté parmi les tiers, contacts, produits, entrepôt, proposition commerciale, commande client, commande fournisseur, facture client, facture fournisseur, projet, compte bancaire, expédition, utilisateur, groupe d'utilisateurs, adhérent, règlement de TVA ou encore dépenses spéciale.<br />
:{{Note|CustomTabs est interfacé avec les modules Équipement et Factory. Il est donc possible de créer des onglets personnalisés sur les fiches des équipements et des ordres de fabrication}}<br />
* Type d'onglet : un onglet peut se présenter sous la forme d'une fiche ou d'une liste. Saisissez le type selon votre besoin :<br />
** Un onglet de type liste ne permet qu'un enregistrement modifiable selon les paramétrages déclaré dans les champs de saisie.<br />
** Un onglet de type fiche permet l'enregistrement de plusieurs enregistrements successifs.<br />
<br />
Le type d'onglet conditionne l'affichage et l'enregistrement des données. Selon le type sélectionné, l'onglet précédemment créé affichera alors :<br />
<br />
{| class="wikitable"<br />
|- style="vertical-align:top;"<br />
| [[file:customtabs_onglet_liste.png|600px]]<br />
|<br />
* onglet liste : un seul enregistrement peut être saisi tout en étant modifiable<br />
|- style="vertical-align:top;"<br />
| [[file:customtabs_onglet_fiche.png|600px]] <br />
|<br />
* onglet fiche : plusieurs enregistrement peuvent être saisis<br />
|}<br />
<br />
{| class="wikitable"<br />
| [[file:customtabs_onglet_parent.png|600px]]<br />
| style="vertical-align:top;" |<br />
* Parent : il est possible de créer des sous-onglets. La création d'un sous-onglet nécessite la création préalable d'un onglet parent à sélectionner ici.<br />
:La création de sous-onglets reprend la création d'un nouvel onglet en nécessitant la sélection d'un onglet parent.<br />
<br />
{{Note|Un onglet parent ne peut être que de type fiche. Il n'est pas possible de créer un sous-onglet d'un autre onglet de type liste|warn}}<br />
<br />
:Le paramétrage du sous-onglet et les champs qu’il contiendra reprennent le même fonctionnement que la création d’un onglet.<br />
:Le sous-onglet apparaîtra alors dans la fiche de l’onglet parent selon les permissions accordées aux groupes d'utilisateurs<br />
|}<br />
<br />
==Exemple simple de création d'un onglet personnalisé==<br />
===Page de création===<br />
<br />
Créons un onglet sur lequel enregistrer un suivi de prospection des tiers.<br />
<br />
{| class="wikitable"<br />
| [[file:customtabs_Creation-onglet.png|600px]]<br />
| style="vertical-align:top;" | Ouvrez la page de création d'un nouvel onglet et saisissez les données suivantes<br />
|}<br />
<br />
Terminez la première étape de création de l'onglet en cliquant sur le bouton '''Créer'''.<br />
<br />
{| class="wikitable"<br />
| [[file:customtabs_Onglet_cree.png|600px]]<br />
| style="vertical-align:top;" | Une fois l'onglet créé, deux nouveaux champs sont affichés et peuvent être modifiés en édition de la fiche :<br />
*GED (Gestion électronique de documents<br />
:En activant l'option de GED, vous pourrez stocker de documents sur l'onglet. L'accès à ces documents sera limité aux groupes qui en auront l'autorisation.<br />
*Onglet actif<br />
:Suite à sa création, un onglet est par défaut, inactif. Modifiez son état pour permettre son affichage sur les fiches des fiches des éléments sélectionnés à l'étape précédente.<br />
|}<br />
<br />
{{Note|Le bouton Modifier vous permettra d'entrer en édition de l'onglet pour en modifier différentes informations}}<br />
{{Note|Le bouton Importation / Exportation de l'onglet générera le fichier XML que vous pourrez modifier avant de le copier pour l'exporter}}<br />
{{Note|Le bouton Supprimer effacera l'onglet de votre base de données. Désactivez toujours un onglet avant de le supprimer. Si vous effectuez une suppression sans avoir désactivé l'onglet auparavant, il restera présent dans votre base de donnée et sur les fiches des éléments, mais vidé de son contenu|warn}}<br />
<br />
===Champs de saisie de l'onglet===<br />
<br />
Depuis la page affichée suite à la création de l'onglet supplémentaire, cliquez sur l'onglet '''Champs de saisie de l'onglet'''. Les éléments saisis ici seront les lignes de contenu de l'onglet personnalisé ajouté sur les fiches de l'élément sélectionné à la création.<br />
<br />
Pour ajouter un nouveau champ, clique sur le bouton '''Nouvel attribut'''.<br />
<br />
La création des champs des onglets suit la procédure de création et de fonctionnement des champs supplémentaires natifs de Dolibarr.<br />
<br />
Poursuivez la création des champs de saisie sur le modèle suivant :<br />
<br />
[[file:Customtabs_liste_champs.png|600px]]<br />
<br />
Pour que l'onglet soit accessible depuis les menus de Dolibarr, il vous suffit de le modifier pour le rendre '''actif''' et de paramétrer les droits d'accès (voir Paramétrage des droits d'accès aux onglets plus bas).<br />
<br />
===Template de l'onglet===<br />
<br />
{| class="wikitable"<br />
| [[file:Customtabs_onglet_defaut.png|600px]]<br />
| style="vertical-align:top;" | La saisie d'un template est facultative. Si aucun template n'est saisi, l'affichage par défaut est utilisé. Depuis l'onglet '''Template de l'onglet''', vous pouvez définir votre propre affichage avec du code HTML.<br />
|}<br />
<br />
{| class="wikitable"<br />
| [[file:customtas_draganddrop.png|600px]]<br />
| style="vertical-align:top;" | L'écran vous affiche la liste des champs présents sur l'onglet que vous pouvez copier-coller.<br />
Astuce : La fonctionnalité de drag and drop est utilisable pour copier le code du champs dans la zone de saisie du template.<br />
|}<br />
{{Note|Pour ajouter les icônes d'édition et de suppression dans le template, utilisez les balises #EDITBTN# et #DELETEBTN#}}<br />
{{Note|Le template est interprété différemment en fonction du type d'onglet : soit bloc par bloc sur un onglet de type liste, soit pour la page entière sur un onglet de type fiche|warn}}<br />
<br />
Vous pouvez par exemple saisir le template suivant :<br />
<br />
[[file:cutomtabs_template.png|600px]]<br />
<br />
Et vous obtiendrez :<br />
<br />
[[file:customtabs_Template_applique.png|600px]]<br />
<br />
ou<br />
<br />
[[file:customtabs_Template_applique_fiche.png|600px]]<br />
<br />
{{Note|Si un champ présent dans la table n’est pas défini dans le template, il ne sera pas affiché|warn}}<br />
<br />
===Onglet Import/ export===<br />
Voir Import/export d'un onglet et de son contenu plus bas<br />
<br />
=Accès et habilitations des utilisateurs sur les onglets=<br />
==Paramétrage des droits d'accès aux onglets==<br />
Depuis l'entrée de menu secondaire '''Patas-Tools > CustomTabs > droits d'accès aux onglets''', paramétrez les accès des groupes d'utilisateurs :<br />
<br />
[[file:customtabs_Droits-d-acces.png|600px]]<br />
<br />
Il existe quatre droits d'accès :<br />
<br />
{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[File:lecture-off.png]] Bloqué en accès<br />
[[file:lecture-on.png]] Accès en lecture<br />
| [[file:modif-of.png]] Bloqué en modification<br />
[[file:modif-on.png]] Accès en modification<br />
|}<br />
<br />
{{Note|Les habilitations ne sont pas les mêmes en fonction du type d'onglet. Sur un onglet de type fiche, les habilitations d'ajout et de suppression de champs dans l'onglet ne sont pas activées}}<br />
<br />
==Comportement selon les droits d'accès==<br />
===Bloqué en accès ([[file:lecture-off.png]])===<br />
Un message d'alerte préviendra l'utilisateur qu'il n'a pas les habilitation nécessaire pour voir le contenu de l'onglet.<br />
<br />
===Accès en lecture mais bloqué en modification ([[file:lecture-on.png]][[file:modif-of.png]])=== Les utilisateurs du groupe pourront afficher les champs de l'onglet, mais ne pourront pas en modifier le contenu.<br />
<br />
===Accès en lecture et Accès en modification ([[file:lecture-on.png]][[file:modif-on.png]])===<br />
Les utilisateurs du groupe pourront afficher l'onglet, son contenu et le modifier.<br />
<br />
=Autres fonctionnalités=<br />
==Import/export d'un onglet et de son contenu==<br />
===Import/export du paramétrage d'un onglet===<br />
Il est possible d'enregistrer un onglet et ses champs en important un fichier XML.<br />
Depuis la page '''Outils Patas-M > CustomTabs > Importer un onglet''', collez le fichier XML dans la zone de saisie et cliquez sur le bouton '''Lancer l'importation''' :<br />
<br />
[[file:customtabs_Import.png|600px]]<br />
<br />
Activez l'onglet depuis sa fiche et il sera ajouté sur les fiches de vos éléments.<br />
Cette fonctionnalité d'import permet d'éviter les étapes de création d'un onglet personnalisé. Pour importer le contenu de champs de saisie d'un onglet personnalisé, utilisez la fonctionnalité d'import de contenu.<br />
<br />
===Import du contenu des champs d'un onglet===<br />
Il est possible d'importer le contenu des champs d'un onglet en important un fichier .csv.<br />
Les importations et exportations d'un onglet nécessitent l'activation de ces fonctionnalités dans l'onglet '''Import/export''' de la fiche des onglets personnalisés<br />
{{Note|L'import/export de contenu d'un onglet n'est possible que pour les onglets de type liste|warn}}<br />
<br />
{| class="wikitable"<br />
| [[file:customtabs_Activation_importexport.png|600px]]<br />
| style="vertical-align:top;" | Activer d'abord la fonctionnalité d'import du contenu de l'onglet<br />
|}<br />
<br />
Déclarez ensuite la ligne du fichier .csv ou se trouve le nom de la colonne, le séparateur de champ utilisé, le caractère utilisé en tant que séparateur du contenu des champs et le mode d'identification des colonnes :<br />
*Basé sur le libellé des champs : La première ligne de votre fichier .csv mentionnera le libellé des champs tel qu'affiché à l'écran. Dans notre exemple, Date de début, commentaire…<br />
*Basé sur le nom des champs : La première ligne de votre fichier .csv mentionnera le code des champs tel qu'enregistré pour chacun des champs de saisie. Dans notre exemple, début, commentaire…<br />
*Basé sur l'ordre des champs : Les champs de l'onglet seront remplis par les données telles qu'elle sont ordonnées dans votre fichier .csv.<br />
<br />
{{Note|Le paramétrage "Autorise la suppression de toute les lignes d'une table (DANGEREUX)" ajoutera un bouton de suppression de toutes les lignes d'un customTabs.|warn}}<br />
<br />
Prenons le fichier .csv suivant :<br />
<br />
[[file:customtabs_Import_csv.png|600px]]<br />
<br />
Depuis l'onglet de la fiche tiers, cliquez sur le bouton '''Import csv''' :<br />
<br />
[[file:Customtabs_Config_import.png|600px]]<br />
<br />
Sélectionnez le fichier à importer, et '''Ajoutez le fichier'''.<br />
<br />
Cliquez ensuite sur l'icone [[file:new.png]] pour lancer l'importation<br />
<br />
Le customTabs affichera alors :<br />
<br />
[[file:customtabs_Resultat_import_csv.png|600px]]<br />
<br />
==Dictionnaires==<br />
CustomTabs permet la création de dictionnaires de valeurs à afficher dans des champs supplémentaires des fiches des éléments.<br />
{{Note|Cette fonctionnalité est possible pour les onglets de types Liste seulement}}<br />
<br />
{| class="wikitable"<br />
| [[file:customtabs_Dictionnaire1.png|600px]]<br />
| style="vertical-align:top;" | Créez un nouvel onglet de type Liste pour l’élément Dictionnaire et notez le nom donné à la table<br />
|} <br />
<br />
{| class="wikitable"<br />
| [[file:customtabs_Dictionnaire2.png|600px]]<br />
| style="vertical-align:top;" | Dans l’onglet '''champs de saisie de l’onglet''', créer 2 champs<br />
|}<br />
<br />
Activez l'onglet, paramétrez les droits d'accès des groupes d'utilisateurs.<br />
<br />
{| class="wikitable"<br />
| [[file:customtabs_Dictionnaire3.png|600px]]<br />
| style="vertical-align:top;" | Dans le menu secondaire '''customTabs > Dictionnaires''', ouvrez l'onglet nouvellement créé et ajoutez-lui autant de champs que nécessaires<br />
|}<br />
<br />
{| class="wikitable"<br />
| [[file:cuqtomtabs_Dictionnaire4.png|600px]]<br />
| style="vertical-align:top;" | Dans la configuration des modules (tiers et contacts dans notre exemple), créer un champ supplémentaire dans la fiche de l’élément souhaité (contact) en sélectionnant le type '''liste issue d’une table''' ou '''liste à cocher issue d'une table'''. Pour le champ '''Valeur''', reprendre le nom de la table créée à l’étape précédente et le compléter du nom du champ, soit <code>cust_languesparlees_extrafields:nomlangue</code>.<br />
|}<br />
<br />
Vos fiches afficheront alors le nouveau champ supplémentaire :<br />
<br />
[[file:customtabs_Dictionnaire5.png]]<br />
<br />
{| class="wikitable"<br />
| [[file:customtabs_Dictionnaire6.png|600px]]<br />
| style="vertical-align:top;" | L'avantage d'utiliser les dictionnaires de CustomTabs est la rapidité de modification et duplication. Ajoutons la langue anglaise dans notre dictionnaire customTabs : La modification apportée au dictionnaire s'applique à tous les champs de toutes les fiches qui proposent ses valeurs.<br />
|}<br />
<br />
et les fiches de vos contact afficheront :<br />
<br />
[[file:customtabs_Dictionnaire7.png]]<br />
<br />
=Questions fréquentes=<br />
==Général==<br />
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.<br />
Si vous rencontrez une autre erreur que celles décrites ci-dessous lors de l'utilisation de ce module :<br />
#Désactivez et réactivez le module,<br />
#Vérifier sur le ChangeLog si une nouvelle version a été publiée,<br />
#Ré-installez/mettez à jour le module,<br />
#Vérifiez que le remplacement de fichiers natifs de Dolibarr ne soit pas nécessaire au bon fonctionnement du module.<br />
#Vérifiez qu'aucune incompatibilité avec un autre module ne soit indiquée. Le cas échéant, suivez nos préconisations.<br />
<br />
Si, malgré ces manipulations, l'erreur persiste, contactez-nous en utilisant le formulaire dédié (http://docs.patas-monkey.com/support/).<br />
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.<br />
<br />
==Onglets n'apparaissant pas/plus sur vos fiches==<br />
:Suite à une mise à jour du module ou des onglets eux-mêmes, même si vos onglets indiquent qu'ils sont activés, vous devrez les réactivez en entrant en édition du champ '''onglet actif''' et en enregistrant à nouveau.<br />
:Il est également possible d'effectuer cette manipulation pour tous les onglets en un clic avec le bouton Réactivation des onglets actifs de la liste des customTabs accessible depuis les menus '''Patas-tools > CustomTabs > CustomTabs''' :<br />
<br />
:[[file:customtabs_Reactivation_onglets.png]]</div>Nomihttps://wiki.patas-monkey.com/index.php?title=CustomTabs&diff=922CustomTabs2021-03-29T14:47:59Z<p>Nomi : /* Paramétrage des droits d'accès aux onglets */</p>
<hr />
<div>{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[File:customtabs_250x250.png]]<br />
| Le Module CustomTabs permet d'ajouter vos propres onglets sur les fiches des éléments.<br />
Les champs contenus dans ces onglets personnalisés reprennent la fonctionnalité des<br />
champs supplémentaires natifs de Dolibarr.<br />
|}<br />
<br />
==Présentation==<br />
[[file:customtabs_customtabs.png|600px]]<br />
<br />
<br />
{| class="wikitable"<br />
| [[file:customtabs_enregistrements-multiples1.png|600px]]<br />
| style="vertical-align:top;" | L'accès au contenu des onglets est géré par des habilitations de groupes en accès, lecture,<br />
modification et suppression.<br />
<br />
Le contenu des onglets peut être organisé en liste ou en fiche. L'affichage de la page peut être personnalisé avec un template HTML.<br />
|}<br />
<br />
{| class="wikitable"<br />
| [[file:customtabs_GED.png|600px]]<br />
| style="vertical-align:top;" | Les onglets personnalisés peuvent contenir un gestionnaire de document. Couplée au paramétrage des droits d'accès aux onglets, cette fonctionnalité améliore la gestion native des documents dans Dolibarr en limitant la vue et l'accès des groupes d'utilisateurs aux documents.<br />
|}<br />
<br />
Les informations enregistrées dans les customTabs peuvent être reprises avec les modules myList et ExtraODT.<br />
<br />
==Paramétrage==<br />
CustomTabs n'a pas de paramétrage particulier. l'accès à ses fonctionnalités se trouve dans les entrées de menu '''Patas-tools > CustomTabs'''<br />
<br />
==Création d'un nouvel onglet==<br />
===Champs de la page de création d'un onglet===<br />
Ouvrez la page de création d'un nouvel onglet depuis le lien de menu '''Outils Patas-M > CustomTabs > Nouvel onglet''' :<br />
{{Note|Un onglet peut aussi être créé depuis la liste des onglets à l'aide du bouton dédié}}<br />
<br />
* Libellé : le libellé sera affiché en tant que nom de l'onglet affiché sur les pages des éléments.<br />
* Nom de la Table : les informations que vous saisirez dans un onglet sont enregistrées dans une table. Saisissez son nom ici.<br />
:{{Note|CustomTabs ajoutera lui-même un préfixe à votre table, contentez vous de saisir directement le nom de la table sans préfixe. Par ailleurs, le nom de la table ne doit contenir ni espace ni caractère spéciaux ni être un mot réservé au langage SQL comme SELECT, FROM, DESC…)}}<br />
* Élément : sélectionnez dans la liste déroulante l'élément sur les fiches duquel l'onglet sera ajouté parmi les tiers, contacts, produits, entrepôt, proposition commerciale, commande client, commande fournisseur, facture client, facture fournisseur, projet, compte bancaire, expédition, utilisateur, groupe d'utilisateurs, adhérent, règlement de TVA ou encore dépenses spéciale.<br />
:{{Note|CustomTabs est interfacé avec les modules Équipement et Factory. Il est donc possible de créer des onglets personnalisés sur les fiches des équipements et des ordres de fabrication}}<br />
* Type d'onglet : un onglet peut se présenter sous la forme d'une fiche ou d'une liste. Saisissez le type selon votre besoin :<br />
** Un onglet de type liste ne permet qu'un enregistrement modifiable selon les paramétrages déclaré dans les champs de saisie.<br />
** Un onglet de type fiche permet l'enregistrement de plusieurs enregistrements successifs.<br />
<br />
Le type d'onglet conditionne l'affichage et l'enregistrement des données. Selon le type sélectionné, l'onglet précédemment créé affichera alors :<br />
<br />
{| class="wikitable"<br />
|- style="vertical-align:top;"<br />
| [[file:customtabs_onglet_liste.png|600px]]<br />
|<br />
* onglet liste : un seul enregistrement peut être saisi tout en étant modifiable<br />
|- style="vertical-align:top;"<br />
| [[file:customtabs_onglet_fiche.png|600px]] <br />
|<br />
* onglet fiche : plusieurs enregistrement peuvent être saisis<br />
|}<br />
<br />
{| class="wikitable"<br />
| [[file:customtabs_onglet_parent.png|600px]]<br />
| style="vertical-align:top;" |<br />
* Parent : il est possible de créer des sous-onglets. La création d'un sous-onglet nécessite la création préalable d'un onglet parent à sélectionner ici.<br />
:La création de sous-onglets reprend la création d'un nouvel onglet en nécessitant la sélection d'un onglet parent.<br />
<br />
{{Note|Un onglet parent ne peut être que de type fiche. Il n'est pas possible de créer un sous-onglet d'un autre onglet de type liste|warn}}<br />
<br />
:Le paramétrage du sous-onglet et les champs qu’il contiendra reprennent le même fonctionnement que la création d’un onglet.<br />
:Le sous-onglet apparaîtra alors dans la fiche de l’onglet parent selon les permissions accordées aux groupes d'utilisateurs<br />
|}<br />
<br />
==Exemple simple de création d'un onglet personnalisé==<br />
===Page de création===<br />
<br />
Créons un onglet sur lequel enregistrer un suivi de prospection des tiers.<br />
<br />
{| class="wikitable"<br />
| [[file:customtabs_Creation-onglet.png|600px]]<br />
| style="vertical-align:top;" | Ouvrez la page de création d'un nouvel onglet et saisissez les données suivantes<br />
|}<br />
<br />
Terminez la première étape de création de l'onglet en cliquant sur le bouton '''Créer'''.<br />
<br />
{| class="wikitable"<br />
| [[file:customtabs_Onglet_cree.png|600px]]<br />
| style="vertical-align:top;" | Une fois l'onglet créé, deux nouveaux champs sont affichés et peuvent être modifiés en édition de la fiche :<br />
*GED (Gestion électronique de documents<br />
:En activant l'option de GED, vous pourrez stocker de documents sur l'onglet. L'accès à ces documents sera limité aux groupes qui en auront l'autorisation.<br />
*Onglet actif<br />
:Suite à sa création, un onglet est par défaut, inactif. Modifiez son état pour permettre son affichage sur les fiches des fiches des éléments sélectionnés à l'étape précédente.<br />
|}<br />
<br />
{{Note|Le bouton Modifier vous permettra d'entrer en édition de l'onglet pour en modifier différentes informations}}<br />
{{Note|Le bouton Importation / Exportation de l'onglet générera le fichier XML que vous pourrez modifier avant de le copier pour l'exporter}}<br />
{{Note|Le bouton Supprimer effacera l'onglet de votre base de données. Désactivez toujours un onglet avant de le supprimer. Si vous effectuez une suppression sans avoir désactivé l'onglet auparavant, il restera présent dans votre base de donnée et sur les fiches des éléments, mais vidé de son contenu|warn}}<br />
<br />
===Champs de saisie de l'onglet===<br />
<br />
Depuis la page affichée suite à la création de l'onglet supplémentaire, cliquez sur l'onglet '''Champs de saisie de l'onglet'''. Les éléments saisis ici seront les lignes de contenu de l'onglet personnalisé ajouté sur les fiches de l'élément sélectionné à la création.<br />
<br />
Pour ajouter un nouveau champ, clique sur le bouton '''Nouvel attribut'''.<br />
<br />
La création des champs des onglets suit la procédure de création et de fonctionnement des champs supplémentaires natifs de Dolibarr.<br />
<br />
Poursuivez la création des champs de saisie sur le modèle suivant :<br />
<br />
[[file:Customtabs_liste_champs.png|600px]]<br />
<br />
Pour que l'onglet soit accessible depuis les menus de Dolibarr, il vous suffit de le modifier pour le rendre '''actif''' et de paramétrer les droits d'accès (voir Paramétrage des droits d'accès aux onglets plus bas).<br />
<br />
===Template de l'onglet===<br />
<br />
{| class="wikitable"<br />
| [[file:Customtabs_onglet_defaut.png|600px]]<br />
| style="vertical-align:top;" | La saisie d'un template est facultative. Si aucun template n'est saisi, l'affichage par défaut est utilisé. Depuis l'onglet '''Template de l'onglet''', vous pouvez définir votre propre affichage avec du code HTML.<br />
|}<br />
<br />
{| class="wikitable"<br />
| [[file:customtas_draganddrop.png|600px]]<br />
| style="vertical-align:top;" | L'écran vous affiche la liste des champs présents sur l'onglet que vous pouvez copier-coller.<br />
Astuce : La fonctionnalité de drag and drop est utilisable pour copier le code du champs dans la zone de saisie du template.<br />
|}<br />
{{Note|Pour ajouter les icônes d'édition et de suppression dans le template, utilisez les balises #EDITBTN# et #DELETEBTN#}}<br />
{{Note|Le template est interprété différemment en fonction du type d'onglet : soit bloc par bloc sur un onglet de type liste, soit pour la page entière sur un onglet de type fiche|warn}}<br />
<br />
Vous pouvez par exemple saisir le template suivant :<br />
<br />
[[file:cutomtabs_template.png|600px]]<br />
<br />
Et vous obtiendrez :<br />
<br />
[[file:customtabs_Template_applique.png|600px]]<br />
<br />
ou<br />
<br />
[[file:customtabs_Template_applique_fiche.png|600px]]<br />
<br />
{{Note|Si un champ présent dans la table n’est pas défini dans le template, il ne sera pas affiché|warn}}<br />
<br />
===Onglet Import/ export===<br />
Voir Import/export d'un onglet et de son contenu plus bas<br />
<br />
=Accès et habilitations des utilisateurs sur les onglets=<br />
==Paramétrage des droits d'accès aux onglets==<br />
Depuis l'entrée de menu secondaire '''Patas-Tools > CustomTabs > droits d'accès aux onglets''', paramétrez les accès des groupes d'utilisateurs :<br />
<br />
[[file:customtabs_Droits-d-acces.png|600px]]<br />
<br />
Il existe quatre droits d'accès :<br />
<br />
{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[File:lecture-off.png]] Bloqué en accès<br />
[[file:lecture-on.png]] Accès en lecture<br />
| [[file:modif-of.png]] Bloqué en modification<br />
[[file:modif-on.png]] Accès en modification<br />
|}<br />
<br />
{{Note|Les habilitations ne sont pas les mêmes en fonction du type d'onglet. Sur un onglet de type fiche, les habilitations d'ajout et de suppression de champs dans l'onglet ne sont pas activées}}<br />
<br />
==Comportement selon les droits d'accès==<br />
*Bloqué en accès ([[file:lecture-off.png]]) : Un message d'alerte préviendra l'utilisateur qu'il n'a pas les habilitation nécessaire pour voir le contenu de l'onglet.<br />
*Accès en lecture mais bloqué en modification ([[file:lecture-on.png]][[file:modif-of.png]]): Les utilisateurs du groupe pourront afficher les champs de l'onglet, mais ne pourront pas en modifier le contenu.<br />
*Accès en lecture et Accès en modification ([[file:lecture-on.png]][[file:modif-on.png]]) : Les utilisateurs du groupe pourront afficher l'onglet, son contenu et le modifier.<br />
<br />
=Autres fonctionnalités=<br />
==Import/export d'un onglet et de son contenu==<br />
===Import/export du paramétrage d'un onglet===<br />
Il est possible d'enregistrer un onglet et ses champs en important un fichier XML.<br />
Depuis la page '''Outils Patas-M > CustomTabs > Importer un onglet''', collez le fichier XML dans la zone de saisie et cliquez sur le bouton '''Lancer l'importation''' :<br />
<br />
[[file:customtabs_Import.png|600px]]<br />
<br />
Activez l'onglet depuis sa fiche et il sera ajouté sur les fiches de vos éléments.<br />
Cette fonctionnalité d'import permet d'éviter les étapes de création d'un onglet personnalisé. Pour importer le contenu de champs de saisie d'un onglet personnalisé, utilisez la fonctionnalité d'import de contenu.<br />
<br />
===Import du contenu des champs d'un onglet===<br />
Il est possible d'importer le contenu des champs d'un onglet en important un fichier .csv.<br />
Les importations et exportations d'un onglet nécessitent l'activation de ces fonctionnalités dans l'onglet '''Import/export''' de la fiche des onglets personnalisés<br />
{{Note|L'import/export de contenu d'un onglet n'est possible que pour les onglets de type liste|warn}}<br />
<br />
{| class="wikitable"<br />
| [[file:customtabs_Activation_importexport.png|600px]]<br />
| style="vertical-align:top;" | Activer d'abord la fonctionnalité d'import du contenu de l'onglet<br />
|}<br />
<br />
Déclarez ensuite la ligne du fichier .csv ou se trouve le nom de la colonne, le séparateur de champ utilisé, le caractère utilisé en tant que séparateur du contenu des champs et le mode d'identification des colonnes :<br />
*Basé sur le libellé des champs : La première ligne de votre fichier .csv mentionnera le libellé des champs tel qu'affiché à l'écran. Dans notre exemple, Date de début, commentaire…<br />
*Basé sur le nom des champs : La première ligne de votre fichier .csv mentionnera le code des champs tel qu'enregistré pour chacun des champs de saisie. Dans notre exemple, début, commentaire…<br />
*Basé sur l'ordre des champs : Les champs de l'onglet seront remplis par les données telles qu'elle sont ordonnées dans votre fichier .csv.<br />
<br />
{{Note|Le paramétrage "Autorise la suppression de toute les lignes d'une table (DANGEREUX)" ajoutera un bouton de suppression de toutes les lignes d'un customTabs.|warn}}<br />
<br />
Prenons le fichier .csv suivant :<br />
<br />
[[file:customtabs_Import_csv.png|600px]]<br />
<br />
Depuis l'onglet de la fiche tiers, cliquez sur le bouton '''Import csv''' :<br />
<br />
[[file:Customtabs_Config_import.png|600px]]<br />
<br />
Sélectionnez le fichier à importer, et '''Ajoutez le fichier'''.<br />
<br />
Cliquez ensuite sur l'icone [[file:new.png]] pour lancer l'importation<br />
<br />
Le customTabs affichera alors :<br />
<br />
[[file:customtabs_Resultat_import_csv.png|600px]]<br />
<br />
==Dictionnaires==<br />
CustomTabs permet la création de dictionnaires de valeurs à afficher dans des champs supplémentaires des fiches des éléments.<br />
{{Note|Cette fonctionnalité est possible pour les onglets de types Liste seulement}}<br />
<br />
{| class="wikitable"<br />
| [[file:customtabs_Dictionnaire1.png|600px]]<br />
| style="vertical-align:top;" | Créez un nouvel onglet de type Liste pour l’élément Dictionnaire et notez le nom donné à la table<br />
|} <br />
<br />
{| class="wikitable"<br />
| [[file:customtabs_Dictionnaire2.png|600px]]<br />
| style="vertical-align:top;" | Dans l’onglet '''champs de saisie de l’onglet''', créer 2 champs<br />
|}<br />
<br />
Activez l'onglet, paramétrez les droits d'accès des groupes d'utilisateurs.<br />
<br />
{| class="wikitable"<br />
| [[file:customtabs_Dictionnaire3.png|600px]]<br />
| style="vertical-align:top;" | Dans le menu secondaire '''customTabs > Dictionnaires''', ouvrez l'onglet nouvellement créé et ajoutez-lui autant de champs que nécessaires<br />
|}<br />
<br />
{| class="wikitable"<br />
| [[file:cuqtomtabs_Dictionnaire4.png|600px]]<br />
| style="vertical-align:top;" | Dans la configuration des modules (tiers et contacts dans notre exemple), créer un champ supplémentaire dans la fiche de l’élément souhaité (contact) en sélectionnant le type '''liste issue d’une table''' ou '''liste à cocher issue d'une table'''. Pour le champ '''Valeur''', reprendre le nom de la table créée à l’étape précédente et le compléter du nom du champ, soit <code>cust_languesparlees_extrafields:nomlangue</code>.<br />
|}<br />
<br />
Vos fiches afficheront alors le nouveau champ supplémentaire :<br />
<br />
[[file:customtabs_Dictionnaire5.png]]<br />
<br />
{| class="wikitable"<br />
| [[file:customtabs_Dictionnaire6.png|600px]]<br />
| style="vertical-align:top;" | L'avantage d'utiliser les dictionnaires de CustomTabs est la rapidité de modification et duplication. Ajoutons la langue anglaise dans notre dictionnaire customTabs : La modification apportée au dictionnaire s'applique à tous les champs de toutes les fiches qui proposent ses valeurs.<br />
|}<br />
<br />
et les fiches de vos contact afficheront :<br />
<br />
[[file:customtabs_Dictionnaire7.png]]<br />
<br />
=Questions fréquentes=<br />
==Général==<br />
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.<br />
Si vous rencontrez une autre erreur que celles décrites ci-dessous lors de l'utilisation de ce module :<br />
#Désactivez et réactivez le module,<br />
#Vérifier sur le ChangeLog si une nouvelle version a été publiée,<br />
#Ré-installez/mettez à jour le module,<br />
#Vérifiez que le remplacement de fichiers natifs de Dolibarr ne soit pas nécessaire au bon fonctionnement du module.<br />
#Vérifiez qu'aucune incompatibilité avec un autre module ne soit indiquée. Le cas échéant, suivez nos préconisations.<br />
<br />
Si, malgré ces manipulations, l'erreur persiste, contactez-nous en utilisant le formulaire dédié (http://docs.patas-monkey.com/support/).<br />
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.<br />
<br />
==Onglets n'apparaissant pas/plus sur vos fiches==<br />
:Suite à une mise à jour du module ou des onglets eux-mêmes, même si vos onglets indiquent qu'ils sont activés, vous devrez les réactivez en entrant en édition du champ '''onglet actif''' et en enregistrant à nouveau.<br />
:Il est également possible d'effectuer cette manipulation pour tous les onglets en un clic avec le bouton Réactivation des onglets actifs de la liste des customTabs accessible depuis les menus '''Patas-tools > CustomTabs > CustomTabs''' :<br />
<br />
:[[file:customtabs_Reactivation_onglets.png]]</div>Nomihttps://wiki.patas-monkey.com/index.php?title=CustomTabs&diff=921CustomTabs2021-03-29T14:44:37Z<p>Nomi : /* Import du contenu des champs d'un onglet */</p>
<hr />
<div>{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[File:customtabs_250x250.png]]<br />
| Le Module CustomTabs permet d'ajouter vos propres onglets sur les fiches des éléments.<br />
Les champs contenus dans ces onglets personnalisés reprennent la fonctionnalité des<br />
champs supplémentaires natifs de Dolibarr.<br />
|}<br />
<br />
==Présentation==<br />
[[file:customtabs_customtabs.png|600px]]<br />
<br />
<br />
{| class="wikitable"<br />
| [[file:customtabs_enregistrements-multiples1.png|600px]]<br />
| style="vertical-align:top;" | L'accès au contenu des onglets est géré par des habilitations de groupes en accès, lecture,<br />
modification et suppression.<br />
<br />
Le contenu des onglets peut être organisé en liste ou en fiche. L'affichage de la page peut être personnalisé avec un template HTML.<br />
|}<br />
<br />
{| class="wikitable"<br />
| [[file:customtabs_GED.png|600px]]<br />
| style="vertical-align:top;" | Les onglets personnalisés peuvent contenir un gestionnaire de document. Couplée au paramétrage des droits d'accès aux onglets, cette fonctionnalité améliore la gestion native des documents dans Dolibarr en limitant la vue et l'accès des groupes d'utilisateurs aux documents.<br />
|}<br />
<br />
Les informations enregistrées dans les customTabs peuvent être reprises avec les modules myList et ExtraODT.<br />
<br />
==Paramétrage==<br />
CustomTabs n'a pas de paramétrage particulier. l'accès à ses fonctionnalités se trouve dans les entrées de menu '''Patas-tools > CustomTabs'''<br />
<br />
==Création d'un nouvel onglet==<br />
===Champs de la page de création d'un onglet===<br />
Ouvrez la page de création d'un nouvel onglet depuis le lien de menu '''Outils Patas-M > CustomTabs > Nouvel onglet''' :<br />
{{Note|Un onglet peut aussi être créé depuis la liste des onglets à l'aide du bouton dédié}}<br />
<br />
* Libellé : le libellé sera affiché en tant que nom de l'onglet affiché sur les pages des éléments.<br />
* Nom de la Table : les informations que vous saisirez dans un onglet sont enregistrées dans une table. Saisissez son nom ici.<br />
:{{Note|CustomTabs ajoutera lui-même un préfixe à votre table, contentez vous de saisir directement le nom de la table sans préfixe. Par ailleurs, le nom de la table ne doit contenir ni espace ni caractère spéciaux ni être un mot réservé au langage SQL comme SELECT, FROM, DESC…)}}<br />
* Élément : sélectionnez dans la liste déroulante l'élément sur les fiches duquel l'onglet sera ajouté parmi les tiers, contacts, produits, entrepôt, proposition commerciale, commande client, commande fournisseur, facture client, facture fournisseur, projet, compte bancaire, expédition, utilisateur, groupe d'utilisateurs, adhérent, règlement de TVA ou encore dépenses spéciale.<br />
:{{Note|CustomTabs est interfacé avec les modules Équipement et Factory. Il est donc possible de créer des onglets personnalisés sur les fiches des équipements et des ordres de fabrication}}<br />
* Type d'onglet : un onglet peut se présenter sous la forme d'une fiche ou d'une liste. Saisissez le type selon votre besoin :<br />
** Un onglet de type liste ne permet qu'un enregistrement modifiable selon les paramétrages déclaré dans les champs de saisie.<br />
** Un onglet de type fiche permet l'enregistrement de plusieurs enregistrements successifs.<br />
<br />
Le type d'onglet conditionne l'affichage et l'enregistrement des données. Selon le type sélectionné, l'onglet précédemment créé affichera alors :<br />
<br />
{| class="wikitable"<br />
|- style="vertical-align:top;"<br />
| [[file:customtabs_onglet_liste.png|600px]]<br />
|<br />
* onglet liste : un seul enregistrement peut être saisi tout en étant modifiable<br />
|- style="vertical-align:top;"<br />
| [[file:customtabs_onglet_fiche.png|600px]] <br />
|<br />
* onglet fiche : plusieurs enregistrement peuvent être saisis<br />
|}<br />
<br />
{| class="wikitable"<br />
| [[file:customtabs_onglet_parent.png|600px]]<br />
| style="vertical-align:top;" |<br />
* Parent : il est possible de créer des sous-onglets. La création d'un sous-onglet nécessite la création préalable d'un onglet parent à sélectionner ici.<br />
:La création de sous-onglets reprend la création d'un nouvel onglet en nécessitant la sélection d'un onglet parent.<br />
<br />
{{Note|Un onglet parent ne peut être que de type fiche. Il n'est pas possible de créer un sous-onglet d'un autre onglet de type liste|warn}}<br />
<br />
:Le paramétrage du sous-onglet et les champs qu’il contiendra reprennent le même fonctionnement que la création d’un onglet.<br />
:Le sous-onglet apparaîtra alors dans la fiche de l’onglet parent selon les permissions accordées aux groupes d'utilisateurs<br />
|}<br />
<br />
==Exemple simple de création d'un onglet personnalisé==<br />
===Page de création===<br />
<br />
Créons un onglet sur lequel enregistrer un suivi de prospection des tiers.<br />
<br />
{| class="wikitable"<br />
| [[file:customtabs_Creation-onglet.png|600px]]<br />
| style="vertical-align:top;" | Ouvrez la page de création d'un nouvel onglet et saisissez les données suivantes<br />
|}<br />
<br />
Terminez la première étape de création de l'onglet en cliquant sur le bouton '''Créer'''.<br />
<br />
{| class="wikitable"<br />
| [[file:customtabs_Onglet_cree.png|600px]]<br />
| style="vertical-align:top;" | Une fois l'onglet créé, deux nouveaux champs sont affichés et peuvent être modifiés en édition de la fiche :<br />
*GED (Gestion électronique de documents<br />
:En activant l'option de GED, vous pourrez stocker de documents sur l'onglet. L'accès à ces documents sera limité aux groupes qui en auront l'autorisation.<br />
*Onglet actif<br />
:Suite à sa création, un onglet est par défaut, inactif. Modifiez son état pour permettre son affichage sur les fiches des fiches des éléments sélectionnés à l'étape précédente.<br />
|}<br />
<br />
{{Note|Le bouton Modifier vous permettra d'entrer en édition de l'onglet pour en modifier différentes informations}}<br />
{{Note|Le bouton Importation / Exportation de l'onglet générera le fichier XML que vous pourrez modifier avant de le copier pour l'exporter}}<br />
{{Note|Le bouton Supprimer effacera l'onglet de votre base de données. Désactivez toujours un onglet avant de le supprimer. Si vous effectuez une suppression sans avoir désactivé l'onglet auparavant, il restera présent dans votre base de donnée et sur les fiches des éléments, mais vidé de son contenu|warn}}<br />
<br />
===Champs de saisie de l'onglet===<br />
<br />
Depuis la page affichée suite à la création de l'onglet supplémentaire, cliquez sur l'onglet '''Champs de saisie de l'onglet'''. Les éléments saisis ici seront les lignes de contenu de l'onglet personnalisé ajouté sur les fiches de l'élément sélectionné à la création.<br />
<br />
Pour ajouter un nouveau champ, clique sur le bouton '''Nouvel attribut'''.<br />
<br />
La création des champs des onglets suit la procédure de création et de fonctionnement des champs supplémentaires natifs de Dolibarr.<br />
<br />
Poursuivez la création des champs de saisie sur le modèle suivant :<br />
<br />
[[file:Customtabs_liste_champs.png|600px]]<br />
<br />
Pour que l'onglet soit accessible depuis les menus de Dolibarr, il vous suffit de le modifier pour le rendre '''actif''' et de paramétrer les droits d'accès (voir Paramétrage des droits d'accès aux onglets plus bas).<br />
<br />
===Template de l'onglet===<br />
<br />
{| class="wikitable"<br />
| [[file:Customtabs_onglet_defaut.png|600px]]<br />
| style="vertical-align:top;" | La saisie d'un template est facultative. Si aucun template n'est saisi, l'affichage par défaut est utilisé. Depuis l'onglet '''Template de l'onglet''', vous pouvez définir votre propre affichage avec du code HTML.<br />
|}<br />
<br />
{| class="wikitable"<br />
| [[file:customtas_draganddrop.png|600px]]<br />
| style="vertical-align:top;" | L'écran vous affiche la liste des champs présents sur l'onglet que vous pouvez copier-coller.<br />
Astuce : La fonctionnalité de drag and drop est utilisable pour copier le code du champs dans la zone de saisie du template.<br />
|}<br />
{{Note|Pour ajouter les icônes d'édition et de suppression dans le template, utilisez les balises #EDITBTN# et #DELETEBTN#}}<br />
{{Note|Le template est interprété différemment en fonction du type d'onglet : soit bloc par bloc sur un onglet de type liste, soit pour la page entière sur un onglet de type fiche|warn}}<br />
<br />
Vous pouvez par exemple saisir le template suivant :<br />
<br />
[[file:cutomtabs_template.png|600px]]<br />
<br />
Et vous obtiendrez :<br />
<br />
[[file:customtabs_Template_applique.png|600px]]<br />
<br />
ou<br />
<br />
[[file:customtabs_Template_applique_fiche.png|600px]]<br />
<br />
{{Note|Si un champ présent dans la table n’est pas défini dans le template, il ne sera pas affiché|warn}}<br />
<br />
===Onglet Import/ export===<br />
Voir Import/export d'un onglet et de son contenu plus bas<br />
<br />
=Accès et habilitations des utilisateurs sur les onglets=<br />
==Paramétrage des droits d'accès aux onglets==<br />
Depuis l'entrée de menu secondaire '''Patas-Tools > CustomTabs > droits d'accès aux onglets''', paramétrez les accès des groupes d'utilisateurs :<br />
<br />
[[file:customtabs_Droits-d-acces.png|600px]]<br />
<br />
''Page de paramétrage des accès aux onglets personnalisés par groupe d'utilisateurs''<br />
<br />
Il existe quatre droits d'accès :<br />
<br />
{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[File:lecture-off.png]] Bloqué en accès<br />
[[file:lecture-on.png]] Accès en lecture<br />
| [[file:modif-of.png]] Bloqué en modification<br />
[[file:modif-on.png]] Accès en modification<br />
|}<br />
<br />
{{Note|Les habilitations ne sont pas les mêmes en fonction du type d'onglet. Sur un onglet de type fiche, les habilitations d'ajout et de suppression de champs dans l'onglet ne sont pas activées}}<br />
<br />
==Comportement selon les droits d'accès==<br />
*Bloqué en accès ([[file:lecture-off.png]]) : Un message d'alerte préviendra l'utilisateur qu'il n'a pas les habilitation nécessaire pour voir le contenu de l'onglet.<br />
*Accès en lecture mais bloqué en modification ([[file:lecture-on.png]][[file:modif-of.png]]): Les utilisateurs du groupe pourront afficher les champs de l'onglet, mais ne pourront pas en modifier le contenu.<br />
*Accès en lecture et Accès en modification ([[file:lecture-on.png]][[file:modif-on.png]]) : Les utilisateurs du groupe pourront afficher l'onglet, son contenu et le modifier.<br />
<br />
=Autres fonctionnalités=<br />
==Import/export d'un onglet et de son contenu==<br />
===Import/export du paramétrage d'un onglet===<br />
Il est possible d'enregistrer un onglet et ses champs en important un fichier XML.<br />
Depuis la page '''Outils Patas-M > CustomTabs > Importer un onglet''', collez le fichier XML dans la zone de saisie et cliquez sur le bouton '''Lancer l'importation''' :<br />
<br />
[[file:customtabs_Import.png|600px]]<br />
<br />
Activez l'onglet depuis sa fiche et il sera ajouté sur les fiches de vos éléments.<br />
Cette fonctionnalité d'import permet d'éviter les étapes de création d'un onglet personnalisé. Pour importer le contenu de champs de saisie d'un onglet personnalisé, utilisez la fonctionnalité d'import de contenu.<br />
<br />
===Import du contenu des champs d'un onglet===<br />
Il est possible d'importer le contenu des champs d'un onglet en important un fichier .csv.<br />
Les importations et exportations d'un onglet nécessitent l'activation de ces fonctionnalités dans l'onglet '''Import/export''' de la fiche des onglets personnalisés<br />
{{Note|L'import/export de contenu d'un onglet n'est possible que pour les onglets de type liste|warn}}<br />
<br />
{| class="wikitable"<br />
| [[file:customtabs_Activation_importexport.png|600px]]<br />
| style="vertical-align:top;" | Activer d'abord la fonctionnalité d'import du contenu de l'onglet<br />
|}<br />
<br />
Déclarez ensuite la ligne du fichier .csv ou se trouve le nom de la colonne, le séparateur de champ utilisé, le caractère utilisé en tant que séparateur du contenu des champs et le mode d'identification des colonnes :<br />
*Basé sur le libellé des champs : La première ligne de votre fichier .csv mentionnera le libellé des champs tel qu'affiché à l'écran. Dans notre exemple, Date de début, commentaire…<br />
*Basé sur le nom des champs : La première ligne de votre fichier .csv mentionnera le code des champs tel qu'enregistré pour chacun des champs de saisie. Dans notre exemple, début, commentaire…<br />
*Basé sur l'ordre des champs : Les champs de l'onglet seront remplis par les données telles qu'elle sont ordonnées dans votre fichier .csv.<br />
<br />
{{Note|Le paramétrage "Autorise la suppression de toute les lignes d'une table (DANGEREUX)" ajoutera un bouton de suppression de toutes les lignes d'un customTabs.|warn}}<br />
<br />
Prenons le fichier .csv suivant :<br />
<br />
[[file:customtabs_Import_csv.png|600px]]<br />
<br />
Depuis l'onglet de la fiche tiers, cliquez sur le bouton '''Import csv''' :<br />
<br />
[[file:Customtabs_Config_import.png|600px]]<br />
<br />
Sélectionnez le fichier à importer, et '''Ajoutez le fichier'''.<br />
<br />
Cliquez ensuite sur l'icone [[file:new.png]] pour lancer l'importation<br />
<br />
Le customTabs affichera alors :<br />
<br />
[[file:customtabs_Resultat_import_csv.png|600px]]<br />
<br />
==Dictionnaires==<br />
CustomTabs permet la création de dictionnaires de valeurs à afficher dans des champs supplémentaires des fiches des éléments.<br />
{{Note|Cette fonctionnalité est possible pour les onglets de types Liste seulement}}<br />
<br />
{| class="wikitable"<br />
| [[file:customtabs_Dictionnaire1.png|600px]]<br />
| style="vertical-align:top;" | Créez un nouvel onglet de type Liste pour l’élément Dictionnaire et notez le nom donné à la table<br />
|} <br />
<br />
{| class="wikitable"<br />
| [[file:customtabs_Dictionnaire2.png|600px]]<br />
| style="vertical-align:top;" | Dans l’onglet '''champs de saisie de l’onglet''', créer 2 champs<br />
|}<br />
<br />
Activez l'onglet, paramétrez les droits d'accès des groupes d'utilisateurs.<br />
<br />
{| class="wikitable"<br />
| [[file:customtabs_Dictionnaire3.png|600px]]<br />
| style="vertical-align:top;" | Dans le menu secondaire '''customTabs > Dictionnaires''', ouvrez l'onglet nouvellement créé et ajoutez-lui autant de champs que nécessaires<br />
|}<br />
<br />
{| class="wikitable"<br />
| [[file:cuqtomtabs_Dictionnaire4.png|600px]]<br />
| style="vertical-align:top;" | Dans la configuration des modules (tiers et contacts dans notre exemple), créer un champ supplémentaire dans la fiche de l’élément souhaité (contact) en sélectionnant le type '''liste issue d’une table''' ou '''liste à cocher issue d'une table'''. Pour le champ '''Valeur''', reprendre le nom de la table créée à l’étape précédente et le compléter du nom du champ, soit <code>cust_languesparlees_extrafields:nomlangue</code>.<br />
|}<br />
<br />
Vos fiches afficheront alors le nouveau champ supplémentaire :<br />
<br />
[[file:customtabs_Dictionnaire5.png]]<br />
<br />
{| class="wikitable"<br />
| [[file:customtabs_Dictionnaire6.png|600px]]<br />
| style="vertical-align:top;" | L'avantage d'utiliser les dictionnaires de CustomTabs est la rapidité de modification et duplication. Ajoutons la langue anglaise dans notre dictionnaire customTabs : La modification apportée au dictionnaire s'applique à tous les champs de toutes les fiches qui proposent ses valeurs.<br />
|}<br />
<br />
et les fiches de vos contact afficheront :<br />
<br />
[[file:customtabs_Dictionnaire7.png]]<br />
<br />
=Questions fréquentes=<br />
==Général==<br />
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.<br />
Si vous rencontrez une autre erreur que celles décrites ci-dessous lors de l'utilisation de ce module :<br />
#Désactivez et réactivez le module,<br />
#Vérifier sur le ChangeLog si une nouvelle version a été publiée,<br />
#Ré-installez/mettez à jour le module,<br />
#Vérifiez que le remplacement de fichiers natifs de Dolibarr ne soit pas nécessaire au bon fonctionnement du module.<br />
#Vérifiez qu'aucune incompatibilité avec un autre module ne soit indiquée. Le cas échéant, suivez nos préconisations.<br />
<br />
Si, malgré ces manipulations, l'erreur persiste, contactez-nous en utilisant le formulaire dédié (http://docs.patas-monkey.com/support/).<br />
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.<br />
<br />
==Onglets n'apparaissant pas/plus sur vos fiches==<br />
:Suite à une mise à jour du module ou des onglets eux-mêmes, même si vos onglets indiquent qu'ils sont activés, vous devrez les réactivez en entrant en édition du champ '''onglet actif''' et en enregistrant à nouveau.<br />
:Il est également possible d'effectuer cette manipulation pour tous les onglets en un clic avec le bouton Réactivation des onglets actifs de la liste des customTabs accessible depuis les menus '''Patas-tools > CustomTabs > CustomTabs''' :<br />
<br />
:[[file:customtabs_Reactivation_onglets.png]]</div>Nomihttps://wiki.patas-monkey.com/index.php?title=CustomTabs&diff=920CustomTabs2021-03-29T14:44:12Z<p>Nomi : /* Comportement selon les droits d'accès */</p>
<hr />
<div>{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[File:customtabs_250x250.png]]<br />
| Le Module CustomTabs permet d'ajouter vos propres onglets sur les fiches des éléments.<br />
Les champs contenus dans ces onglets personnalisés reprennent la fonctionnalité des<br />
champs supplémentaires natifs de Dolibarr.<br />
|}<br />
<br />
==Présentation==<br />
[[file:customtabs_customtabs.png|600px]]<br />
<br />
<br />
{| class="wikitable"<br />
| [[file:customtabs_enregistrements-multiples1.png|600px]]<br />
| style="vertical-align:top;" | L'accès au contenu des onglets est géré par des habilitations de groupes en accès, lecture,<br />
modification et suppression.<br />
<br />
Le contenu des onglets peut être organisé en liste ou en fiche. L'affichage de la page peut être personnalisé avec un template HTML.<br />
|}<br />
<br />
{| class="wikitable"<br />
| [[file:customtabs_GED.png|600px]]<br />
| style="vertical-align:top;" | Les onglets personnalisés peuvent contenir un gestionnaire de document. Couplée au paramétrage des droits d'accès aux onglets, cette fonctionnalité améliore la gestion native des documents dans Dolibarr en limitant la vue et l'accès des groupes d'utilisateurs aux documents.<br />
|}<br />
<br />
Les informations enregistrées dans les customTabs peuvent être reprises avec les modules myList et ExtraODT.<br />
<br />
==Paramétrage==<br />
CustomTabs n'a pas de paramétrage particulier. l'accès à ses fonctionnalités se trouve dans les entrées de menu '''Patas-tools > CustomTabs'''<br />
<br />
==Création d'un nouvel onglet==<br />
===Champs de la page de création d'un onglet===<br />
Ouvrez la page de création d'un nouvel onglet depuis le lien de menu '''Outils Patas-M > CustomTabs > Nouvel onglet''' :<br />
{{Note|Un onglet peut aussi être créé depuis la liste des onglets à l'aide du bouton dédié}}<br />
<br />
* Libellé : le libellé sera affiché en tant que nom de l'onglet affiché sur les pages des éléments.<br />
* Nom de la Table : les informations que vous saisirez dans un onglet sont enregistrées dans une table. Saisissez son nom ici.<br />
:{{Note|CustomTabs ajoutera lui-même un préfixe à votre table, contentez vous de saisir directement le nom de la table sans préfixe. Par ailleurs, le nom de la table ne doit contenir ni espace ni caractère spéciaux ni être un mot réservé au langage SQL comme SELECT, FROM, DESC…)}}<br />
* Élément : sélectionnez dans la liste déroulante l'élément sur les fiches duquel l'onglet sera ajouté parmi les tiers, contacts, produits, entrepôt, proposition commerciale, commande client, commande fournisseur, facture client, facture fournisseur, projet, compte bancaire, expédition, utilisateur, groupe d'utilisateurs, adhérent, règlement de TVA ou encore dépenses spéciale.<br />
:{{Note|CustomTabs est interfacé avec les modules Équipement et Factory. Il est donc possible de créer des onglets personnalisés sur les fiches des équipements et des ordres de fabrication}}<br />
* Type d'onglet : un onglet peut se présenter sous la forme d'une fiche ou d'une liste. Saisissez le type selon votre besoin :<br />
** Un onglet de type liste ne permet qu'un enregistrement modifiable selon les paramétrages déclaré dans les champs de saisie.<br />
** Un onglet de type fiche permet l'enregistrement de plusieurs enregistrements successifs.<br />
<br />
Le type d'onglet conditionne l'affichage et l'enregistrement des données. Selon le type sélectionné, l'onglet précédemment créé affichera alors :<br />
<br />
{| class="wikitable"<br />
|- style="vertical-align:top;"<br />
| [[file:customtabs_onglet_liste.png|600px]]<br />
|<br />
* onglet liste : un seul enregistrement peut être saisi tout en étant modifiable<br />
|- style="vertical-align:top;"<br />
| [[file:customtabs_onglet_fiche.png|600px]] <br />
|<br />
* onglet fiche : plusieurs enregistrement peuvent être saisis<br />
|}<br />
<br />
{| class="wikitable"<br />
| [[file:customtabs_onglet_parent.png|600px]]<br />
| style="vertical-align:top;" |<br />
* Parent : il est possible de créer des sous-onglets. La création d'un sous-onglet nécessite la création préalable d'un onglet parent à sélectionner ici.<br />
:La création de sous-onglets reprend la création d'un nouvel onglet en nécessitant la sélection d'un onglet parent.<br />
<br />
{{Note|Un onglet parent ne peut être que de type fiche. Il n'est pas possible de créer un sous-onglet d'un autre onglet de type liste|warn}}<br />
<br />
:Le paramétrage du sous-onglet et les champs qu’il contiendra reprennent le même fonctionnement que la création d’un onglet.<br />
:Le sous-onglet apparaîtra alors dans la fiche de l’onglet parent selon les permissions accordées aux groupes d'utilisateurs<br />
|}<br />
<br />
==Exemple simple de création d'un onglet personnalisé==<br />
===Page de création===<br />
<br />
Créons un onglet sur lequel enregistrer un suivi de prospection des tiers.<br />
<br />
{| class="wikitable"<br />
| [[file:customtabs_Creation-onglet.png|600px]]<br />
| style="vertical-align:top;" | Ouvrez la page de création d'un nouvel onglet et saisissez les données suivantes<br />
|}<br />
<br />
Terminez la première étape de création de l'onglet en cliquant sur le bouton '''Créer'''.<br />
<br />
{| class="wikitable"<br />
| [[file:customtabs_Onglet_cree.png|600px]]<br />
| style="vertical-align:top;" | Une fois l'onglet créé, deux nouveaux champs sont affichés et peuvent être modifiés en édition de la fiche :<br />
*GED (Gestion électronique de documents<br />
:En activant l'option de GED, vous pourrez stocker de documents sur l'onglet. L'accès à ces documents sera limité aux groupes qui en auront l'autorisation.<br />
*Onglet actif<br />
:Suite à sa création, un onglet est par défaut, inactif. Modifiez son état pour permettre son affichage sur les fiches des fiches des éléments sélectionnés à l'étape précédente.<br />
|}<br />
<br />
{{Note|Le bouton Modifier vous permettra d'entrer en édition de l'onglet pour en modifier différentes informations}}<br />
{{Note|Le bouton Importation / Exportation de l'onglet générera le fichier XML que vous pourrez modifier avant de le copier pour l'exporter}}<br />
{{Note|Le bouton Supprimer effacera l'onglet de votre base de données. Désactivez toujours un onglet avant de le supprimer. Si vous effectuez une suppression sans avoir désactivé l'onglet auparavant, il restera présent dans votre base de donnée et sur les fiches des éléments, mais vidé de son contenu|warn}}<br />
<br />
===Champs de saisie de l'onglet===<br />
<br />
Depuis la page affichée suite à la création de l'onglet supplémentaire, cliquez sur l'onglet '''Champs de saisie de l'onglet'''. Les éléments saisis ici seront les lignes de contenu de l'onglet personnalisé ajouté sur les fiches de l'élément sélectionné à la création.<br />
<br />
Pour ajouter un nouveau champ, clique sur le bouton '''Nouvel attribut'''.<br />
<br />
La création des champs des onglets suit la procédure de création et de fonctionnement des champs supplémentaires natifs de Dolibarr.<br />
<br />
Poursuivez la création des champs de saisie sur le modèle suivant :<br />
<br />
[[file:Customtabs_liste_champs.png|600px]]<br />
<br />
Pour que l'onglet soit accessible depuis les menus de Dolibarr, il vous suffit de le modifier pour le rendre '''actif''' et de paramétrer les droits d'accès (voir Paramétrage des droits d'accès aux onglets plus bas).<br />
<br />
===Template de l'onglet===<br />
<br />
{| class="wikitable"<br />
| [[file:Customtabs_onglet_defaut.png|600px]]<br />
| style="vertical-align:top;" | La saisie d'un template est facultative. Si aucun template n'est saisi, l'affichage par défaut est utilisé. Depuis l'onglet '''Template de l'onglet''', vous pouvez définir votre propre affichage avec du code HTML.<br />
|}<br />
<br />
{| class="wikitable"<br />
| [[file:customtas_draganddrop.png|600px]]<br />
| style="vertical-align:top;" | L'écran vous affiche la liste des champs présents sur l'onglet que vous pouvez copier-coller.<br />
Astuce : La fonctionnalité de drag and drop est utilisable pour copier le code du champs dans la zone de saisie du template.<br />
|}<br />
{{Note|Pour ajouter les icônes d'édition et de suppression dans le template, utilisez les balises #EDITBTN# et #DELETEBTN#}}<br />
{{Note|Le template est interprété différemment en fonction du type d'onglet : soit bloc par bloc sur un onglet de type liste, soit pour la page entière sur un onglet de type fiche|warn}}<br />
<br />
Vous pouvez par exemple saisir le template suivant :<br />
<br />
[[file:cutomtabs_template.png|600px]]<br />
<br />
Et vous obtiendrez :<br />
<br />
[[file:customtabs_Template_applique.png|600px]]<br />
<br />
ou<br />
<br />
[[file:customtabs_Template_applique_fiche.png|600px]]<br />
<br />
{{Note|Si un champ présent dans la table n’est pas défini dans le template, il ne sera pas affiché|warn}}<br />
<br />
===Onglet Import/ export===<br />
Voir Import/export d'un onglet et de son contenu plus bas<br />
<br />
=Accès et habilitations des utilisateurs sur les onglets=<br />
==Paramétrage des droits d'accès aux onglets==<br />
Depuis l'entrée de menu secondaire '''Patas-Tools > CustomTabs > droits d'accès aux onglets''', paramétrez les accès des groupes d'utilisateurs :<br />
<br />
[[file:customtabs_Droits-d-acces.png|600px]]<br />
<br />
''Page de paramétrage des accès aux onglets personnalisés par groupe d'utilisateurs''<br />
<br />
Il existe quatre droits d'accès :<br />
<br />
{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[File:lecture-off.png]] Bloqué en accès<br />
[[file:lecture-on.png]] Accès en lecture<br />
| [[file:modif-of.png]] Bloqué en modification<br />
[[file:modif-on.png]] Accès en modification<br />
|}<br />
<br />
{{Note|Les habilitations ne sont pas les mêmes en fonction du type d'onglet. Sur un onglet de type fiche, les habilitations d'ajout et de suppression de champs dans l'onglet ne sont pas activées}}<br />
<br />
==Comportement selon les droits d'accès==<br />
*Bloqué en accès ([[file:lecture-off.png]]) : Un message d'alerte préviendra l'utilisateur qu'il n'a pas les habilitation nécessaire pour voir le contenu de l'onglet.<br />
*Accès en lecture mais bloqué en modification ([[file:lecture-on.png]][[file:modif-of.png]]): Les utilisateurs du groupe pourront afficher les champs de l'onglet, mais ne pourront pas en modifier le contenu.<br />
*Accès en lecture et Accès en modification ([[file:lecture-on.png]][[file:modif-on.png]]) : Les utilisateurs du groupe pourront afficher l'onglet, son contenu et le modifier.<br />
<br />
=Autres fonctionnalités=<br />
==Import/export d'un onglet et de son contenu==<br />
===Import/export du paramétrage d'un onglet===<br />
Il est possible d'enregistrer un onglet et ses champs en important un fichier XML.<br />
Depuis la page '''Outils Patas-M > CustomTabs > Importer un onglet''', collez le fichier XML dans la zone de saisie et cliquez sur le bouton '''Lancer l'importation''' :<br />
<br />
[[file:customtabs_Import.png|600px]]<br />
<br />
Activez l'onglet depuis sa fiche et il sera ajouté sur les fiches de vos éléments.<br />
Cette fonctionnalité d'import permet d'éviter les étapes de création d'un onglet personnalisé. Pour importer le contenu de champs de saisie d'un onglet personnalisé, utilisez la fonctionnalité d'import de contenu.<br />
<br />
===Import du contenu des champs d'un onglet===<br />
Il est possible d'importer le contenu des champs d'un onglet en important un fichier .csv.<br />
Les importations et exportations d'un onglet nécessitent l'activation de ces fonctionnalités dans l'onglet '''Import/export''' de la fiche des onglets personnalisés<br />
{{Note|L'import/export de contenu d'un onglet n'est possible que pour les onglets de type liste|warn}}<br />
<br />
{| class="wikitable"<br />
| [[file:customtabs_Activation_importexport.png|600px]]<br />
| style="vertical-align:top;" | Activer d'abord la fonctionnalité d'import du contenu de l'onglet<br />
|}<br />
<br />
Déclarez ensuite la ligne du fichier .csv ou se trouve le nom de la colonne, le séparateur de champ utilisé, le caractère utilisé en tant que séparateur du contenu des champs et le mode d'identification des colonnes :<br />
*Basé sur le libellé des champs : La première ligne de votre fichier .csv mentionnera le libellé des champs tel qu'affiché à l'écran. Dans notre exemple, Date de début, commentaire…<br />
*Basé sur le nom des champs : La première ligne de votre fichier .csv mentionnera le code des champs tel qu'enregistré pour chacun des champs de saisie. Dans notre exemple, début, commentaire…<br />
*Basé sur l'ordre des champs : Les champs de l'onglet seront remplis par les données telles qu'elle sont ordonnées dans votre fichier .csv.<br />
<br />
{{Note|Le paramétrage "Autorise la suppression de toute les lignes d'une table (DANGEREUX)" ajoutera un bouton de suppression de toutes les lignes d'un customTabs.|warn}}<br />
<br />
Prenons le fichier .csv suivant :<br />
<br />
[[file:customtabs_Import_csv.png|600px]]<br />
<br />
Depuis l'onglet de la fiche tiers, cliquez sur le bouton '''Import csv''' :<br />
<br />
[[file:Customtabs_Config_import.png|600px]]<br />
<br />
Sélectionnez le fichier à importer, et '''Ajoutez le fichier'''.<br />
<br />
Cliquez ensuite sur l'icone [[file:]] pour lancer l'importation<br />
<br />
Le customTabs affichera alors :<br />
<br />
[[file:customtabs_Resultat_import_csv.png|600px]]<br />
<br />
==Dictionnaires==<br />
CustomTabs permet la création de dictionnaires de valeurs à afficher dans des champs supplémentaires des fiches des éléments.<br />
{{Note|Cette fonctionnalité est possible pour les onglets de types Liste seulement}}<br />
<br />
{| class="wikitable"<br />
| [[file:customtabs_Dictionnaire1.png|600px]]<br />
| style="vertical-align:top;" | Créez un nouvel onglet de type Liste pour l’élément Dictionnaire et notez le nom donné à la table<br />
|} <br />
<br />
{| class="wikitable"<br />
| [[file:customtabs_Dictionnaire2.png|600px]]<br />
| style="vertical-align:top;" | Dans l’onglet '''champs de saisie de l’onglet''', créer 2 champs<br />
|}<br />
<br />
Activez l'onglet, paramétrez les droits d'accès des groupes d'utilisateurs.<br />
<br />
{| class="wikitable"<br />
| [[file:customtabs_Dictionnaire3.png|600px]]<br />
| style="vertical-align:top;" | Dans le menu secondaire '''customTabs > Dictionnaires''', ouvrez l'onglet nouvellement créé et ajoutez-lui autant de champs que nécessaires<br />
|}<br />
<br />
{| class="wikitable"<br />
| [[file:cuqtomtabs_Dictionnaire4.png|600px]]<br />
| style="vertical-align:top;" | Dans la configuration des modules (tiers et contacts dans notre exemple), créer un champ supplémentaire dans la fiche de l’élément souhaité (contact) en sélectionnant le type '''liste issue d’une table''' ou '''liste à cocher issue d'une table'''. Pour le champ '''Valeur''', reprendre le nom de la table créée à l’étape précédente et le compléter du nom du champ, soit <code>cust_languesparlees_extrafields:nomlangue</code>.<br />
|}<br />
<br />
Vos fiches afficheront alors le nouveau champ supplémentaire :<br />
<br />
[[file:customtabs_Dictionnaire5.png]]<br />
<br />
{| class="wikitable"<br />
| [[file:customtabs_Dictionnaire6.png|600px]]<br />
| style="vertical-align:top;" | L'avantage d'utiliser les dictionnaires de CustomTabs est la rapidité de modification et duplication. Ajoutons la langue anglaise dans notre dictionnaire customTabs : La modification apportée au dictionnaire s'applique à tous les champs de toutes les fiches qui proposent ses valeurs.<br />
|}<br />
<br />
et les fiches de vos contact afficheront :<br />
<br />
[[file:customtabs_Dictionnaire7.png]]<br />
<br />
=Questions fréquentes=<br />
==Général==<br />
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.<br />
Si vous rencontrez une autre erreur que celles décrites ci-dessous lors de l'utilisation de ce module :<br />
#Désactivez et réactivez le module,<br />
#Vérifier sur le ChangeLog si une nouvelle version a été publiée,<br />
#Ré-installez/mettez à jour le module,<br />
#Vérifiez que le remplacement de fichiers natifs de Dolibarr ne soit pas nécessaire au bon fonctionnement du module.<br />
#Vérifiez qu'aucune incompatibilité avec un autre module ne soit indiquée. Le cas échéant, suivez nos préconisations.<br />
<br />
Si, malgré ces manipulations, l'erreur persiste, contactez-nous en utilisant le formulaire dédié (http://docs.patas-monkey.com/support/).<br />
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.<br />
<br />
==Onglets n'apparaissant pas/plus sur vos fiches==<br />
:Suite à une mise à jour du module ou des onglets eux-mêmes, même si vos onglets indiquent qu'ils sont activés, vous devrez les réactivez en entrant en édition du champ '''onglet actif''' et en enregistrant à nouveau.<br />
:Il est également possible d'effectuer cette manipulation pour tous les onglets en un clic avec le bouton Réactivation des onglets actifs de la liste des customTabs accessible depuis les menus '''Patas-tools > CustomTabs > CustomTabs''' :<br />
<br />
:[[file:customtabs_Reactivation_onglets.png]]</div>Nomihttps://wiki.patas-monkey.com/index.php?title=MyList&diff=919MyList2021-03-29T14:42:30Z<p>Nomi : /* Permissions */</p>
<hr />
<div>{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[File:mylist_250x250.png]]<br />
| Ce Module permet la création de listes personnalisées,<br />
il est aussi possible :<br />
* de créer des sommes et moyennes des champs numérique présent dans la liste<br />
* de créer une éditions au format PDF de la liste <br />
* de générer des export au format CSV des listes<br />
|}<br />
<br />
==Présentation==<br />
Le Module myList permet de créer vos propres listes personnalisées à partir des informations contenues dans votre base de données et de les rendre accessibles depuis les menus de Dolibarr. La récupération des informations est effectué par une requête SQL.<br />
<br />
[[file:mylist_Liste_affichee.png|600px]]<br />
<br />
Depuis les listes personnalisées, différentes actions peuvent être effectuées à partir de requêtes complémentaire de traitement (suppression, mise à jour …).<br />
<br />
[[file:mylist_Liste_traitement.png|600px]]<br />
<br />
MyList est livré avec trois fichiers d'import de listes desquels vous inspirer pour créer vos propres listes : contacts à rappeler, liste des factures impayées et chiffre d'affaires.<br />
<br />
MyListMore ajoute à myList :<br />
{| class="wikitable"<br />
|- style="vertical-align:top;" <br />
| [[file:mylist_Champs-mylistmore-ecran.png|600px]]<br />
|<br />
*Les sommes et moyennes des champs calculés des myList à l'écran et sur l'édition<br />
|- style="vertical-align:top;" <br />
| [[file:mylist_Champs-mylistmore-resultat.png|600px]]<br />
|<br />
*des éditions PDF<br />
|}<br />
<br />
MyListMore apporte aussi à myList deux nouveaux types de champs permettant l'affichage d'un tooltip des valeurs d'un champ supplémentaire issue d'une liste ou de dictionnaires.<br />
<br />
==Configuration des fonctionnalités du module==<br />
===Configuration===<br />
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 [[file:doli-setup.png]] ou [[file:doli-setup-old.png]] en bout de ligne.<br />
<br />
La page de configuration du module myList contient les paramétrage apportés par myListMore. Mylistmore ne nécessite donc pas de paramétrage propre.<br />
<br />
{| class="wikitable"<br />
| [[file:mylist_Configuration.png|600px]]<br />
| style="vertical-align:top;" |<br />
L'activation de Datatables est facultative mais ajoute des fonctionnalités d'affichage intéressantes dans l'utilisation de myList tels que la pagination, l'affichage et le déplacement de colonnes.<br />
<br />
L'activation de l'export permettra l'extraction des données présentes dans les listes au format CSV pour un retraitement ultérieur.<br />
<br />
Vous pourrez enfin activer les éditions et choisir celle utilisée par défaut dans le '''tableau de génération des éditions'''.<br />
|}<br />
<br />
===Permissions===<br />
es 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 ([[file:tick.png]] ).<br />
<br />
*Permissions utilisateurs et groupes<br />
{| class="wikitable"<br />
| [[file:myliste_Permissions-utilisateurs.png|600px]]<br />
| style="vertical-align:top;" | Les accès aux fonctionnalités du modules peuvent être restreints aux utilisateurs et groupes, depuis leur fiche puis onglet Permissions, selon les permissions<br />
|}<br />
<br />
*Permissions par défaut<br />
{| class="wikitable"<br />
| [[file:mylist_Permissions-defaut.png|600px]]<br />
| style="vertical-align:top;" | Les permissions par défaut (Accueil > Configuration > Sécurité > Permissions par défaut), accordées à tout utilisateur créé ultérieurement à l'installation du module, si il n'est pas ajouté à un groupe, sont les suivantes<br />
|}<br />
<br />
==Démarrage==<br />
Les fonctionnalités de myList sont accessibles depuis l'onglet de menu principal Outils Patas-M. Les fonctionnalités de MyListMore s'ajoute à celles de MyList lors de la création de nouvelles listes. Votre menu secondaire présente alors les entrées de menu suivantes :<br />
{| class="wikitable"<br />
|- style="vertical-align:top;" <br />
| [[file:mylist_Menusecondaire.png]]<br />
| <br />
*myList : l'entrée principale '''myList''' permet d’afficher toutes les listes définies dans votre environnement (même si celles-ci ne sont pas actives). En cliquant sur le titre de la liste, on peut visualiser la liste. Cet écran est très utile lors du développement d’une liste qui n’est pas encore active. Il est cependant préférable de tester ces listes sur un environnement de test puis d’utiliser la fonction d’import/export pour la mettre en place en production.<br />
*Nouvelle liste : cette entrée vous affichera la page de création d'une nouvelle liste.<br />
*Mes Listes : le lien '''Mes listes''' permet d’afficher la liste des listes présentes dans votre environnement. Le lien en début de ligne vous permet d’afficher le résultat de la requête de la liste en plus de ses résultats.<br />
*Importer une liste : cette entré affichera une page permettant de copier un fichier d'import d'une liste au format XML. (Voir "Import d'une liste" plus bas).<br />
|}<br />
<br />
==Création d'une liste==<br />
===Champs de la page de création d'une liste===<br />
Ouvrez la page de création d'une liste depuis le lien de menu '''Outils Patas-M > Mylist > Nouvelle liste''' :<br />
*Libellé : le libellé sera affiché en tant que titre de la page d'affichage de la liste.<br />
*Titre du menu : le titre sera affiché dans les menus de Dolibarr en tant que lien d'accès à la liste<br />
*Menu principal et Menu secondaire : pour déterminer l'emplacement de la liste dans les menus Dolibarr, Il est nécessaire de les indiquer en remplissant les champs avec leur nom exact.<br />
:Les valeurs à renseigner ici sont présentes dans les URL des menus :<br />
:Exemple du menu principal tiers :<br />
:<code>...htdocs/societe/index.php?mainmenu=companies&leftmenu=</code><br />
:Exemple d'un menu secondaire :<br />
:<code>...htdocs/societe/index.php?leftmenu=thirdparties</code><br />
*Onglet dans l'élément : les résultats de la liste peuvent être affichés dans un onglet ajouté sur les fiches de l'élément sélectionné dans cette liste (tiers, produits, projets, catégories de tiers et de produits) et filtrés pour n'afficher que les résultats en lien avec lui-même.<br />
*Habilitations : Dolibarr possède nativement des fonctionnalités avancées pour gérer les droits d'accès à ses menus. Il est possible d'utiliser ce champ pour saisir une condition d'habilitation afin d'accéder au contenu de la page : si la condition n'est pas respectée, le menu sera grisé.<br />
:Généralement les habilitations sont définies de la manière suivante :<br />
:<code>$user->rights->élément->droit</code> où élément correspond à un module de Dolibarr (devis, commande, projet, …) et droit à l’habilitation sur le module (lire, écrire, paramétrer...).<br />
:Par exemple pour autoriser l’accès uniquement aux utilisateurs ayant accès en lecture aux propositions commerciales il faut saisir <code>$user->rights->propale->lire</code>.<br />
:Pour repérer l’habilitation que l’on souhaite utiliser, une astuce consiste à aller dans le fichier de configuration du module gérant cette habilitation.<br />
*Fichier de langue : afin de rendre plus explicite les noms de variable lors de leur saisie et les entêtes de colonnes sur les tableaux, il est possible d’utiliser les fichiers de traductions<br />
:Il suffit d’ajouter un ou plusieurs noms de fichiers de langues séparé par un #<br />
:Si le fichier de langue n’est pas déposé dans le dossier du noyau de Dolibarr, il faut ajouter <code>@nomdumodule</code> à celui-ci.<br />
*Auteur<br />
*Export CSV : conditionne l'affichage d'un bouton d'export CSV du résultat de la liste<br />
*Document imprimable : sélectionnez ici l'orientation du PDF qui vous sera proposé par défaut pour générer les résultats de vos listes.<br />
:{{Note|Note : Pour pouvoir sélectionnez les documents, ils doivent avoir été activés dans la configuration du module}}<br />
*Requête du tableau : requête SQL qui va définir l'affichage des données<br />
*Requête de traitement : permettra de paramétrer un traitement sur les résultats de la liste comme <code>DELETE</code>, <code>UPDATE</code> …<br />
*Champs personnalisés par défaut : les champs personnalisés saisis ici permettent de définir un ensemble de variables utilisées par la requête pour pré-filtrer des champs qui ne sont pas forcément affichés.<br />
<br />
==Exemple de création d'une liste simple==<br />
===Page de création===<br />
Pour l'exemple, créons une liste des produits et services affichant leur prix de vente, de revient et PMP, accessible depuis le menu principal Produits/Services :<br />
{| class="wikitable"<br />
|- style="vertical-align:top;"<br />
| [[file:mylist_Page_nouvelle_liste.png|600px]]<br />
| Ouvrez la page de création d'une nouvelle liste et saisissez les données ci-contre puis terminez la première étape de création de la liste en cliquant sur le bouton '''Créer'''<br />
|- style="vertical-align:top;"<br />
| [[file:mylist_Liste_cree.png|600px]]<br />
Trois boutons sont présent en bas de l'écran :<br />
* '''Modifier''' vous permettra d'entrer en édition de la liste pour en modifier la requête ou tout autre élément (menus d'accès, onglets d'affichage …<br />
* '''Importation / Exportation de la page''' générera le fichier XML que vous pourrez modifier avant de le copier pour l'exporter<br />
* '''Supprimer''' effacera la liste de votre base de données. Désactivez toujours une liste avant de la supprimer. Si vous effectuez une suppression sans avoir désactivé la liste auparavant, elle restera présente dans votre base de donnée et sur votre interface, mais vidée de son contenu|warn<br />
| Une fois la liste créée, trois nouveaux champs sont affichés et peuvent être modifié en édition de la fiche :<br />
*Export CSV autorisé : cette fonctionnalité permettra l'export CSV des résultats de la liste pour un retraitement ultérieur.<br />
*Forcer l'affichage de tous les résultats : cette fonctionnalité forcera l'affichage de tous les résultat de la liste sans filtrage.<br />
{{Note|Selon la complexité de votre requête et la quantité d'information à traiter, activer cette fonctionnalité peut ralentir le système}}<br />
*Liste active : suite à sa création, une liste est par défaut, '''Inactive'''. Modifiez son état pour permettre son affichage depuis les liens de menus déclarés sur sa fiche.<br />
|}<br />
<br />
===Champs de la liste===<br />
Depuis la page affichée suite à la création de la liste, cliquez sur le bouton Nouveau champ :<br />
*Nom du champ : nom du champ tel qu'il est présent dans les tables de Dolibarr<br />
*Alias : il s’agit de l’alias du champ dans le sens base de données. Cet alias n’est pas obligatoire<br />
*Nom : titre de colonne affiché dans la liste<br />
*Type : ce paramètre suit le fonctionnement des champs supplémentaires natifs de Dolibarr. Cependant, 4 champs ont une mise en forme spécifique :<br />
**Prix : affiche un nombre en utilisant le format de précision défini dans Dolibarr<br />
**Pourcent : affiche un nombre en pourcentage<br />
**Date : affiche une date au format « jour »<br />
**Boolean : affiche un oui ou un non dans la cellule de la ligne<br />
**Tooltip : DescTooltip<br />
**Extrafield de type liste : pour faire ressortir sur une myList la valeur d'un champ supplémentaire sur les fiches, sélectionnez ce type de champ. Son paramètre sera alors <code>NomDeLElement:NomDuCHamp</code>. Par exemple, pour affiche le contenu de l'extrafield <code>extrafield</code> enregistré sur la fiche d'un produit, saisissez <code>product:extrafield</code>.<br />
*Paramètre du champ : cette fonctionnalité est liée au paramétrage des champs de type clé (<code>rowid</code> et <code>fk_xxx</code>) pour les champs de liste de type texte, liste et statut. Elle permet de rendre cliquable et/ou filtrable par liste déroulante.<br />
:L'alimentation de ce champ nécessite une connaissance des tables et de l'organisation des classes des différents éléments de Dolibarr.<br />
:Quelques exemples de formation du paramètre :<br />
** 1er cas : liste issue d'une table<br />
::Table : <code>c_typent</code> (sans le préfixe)<br />
::Clé : <code>id</code><br />
::Libellé : <code>libelle</code><br />
::Paramètre à indiquer dans le paramétrage du champ de myList : <code>c_typent:id:libelle</code><br />
** 2ème cas : rendre cliquables les résultats de liste<br />
::Nom de la classe de l'élément à rendre cliquable : <code>Facture:</code><br />
::Chemin du fichier définissant la classe : <code>/compta/facture/class/facture.class.php</code><br />
::Nom de la table : <code>:facture</code><br />
::Champ à afficher : <code>nom_du_champ</code><br />
::Paramètre à indiquer dans le paramétrage du champ de myList : <code>Facture:/compta/facture/class/facture.class.php:facture:nom_du_champ</code><br />
** Paramètres les plus fréquemment utilisés :<br />
::Tiers : <code>Societe:/societe/class/societe.class.php</code><br />
::Contact : <code>Contact:/contact/class/contact.class.php</code><br />
::Utilisateurs : <code>User:/user/class/user.class.php:user:lastname </code><br />
::Produit : <code>Product:/product/class/product.class.php</code><br />
::proposition commerciale : <code>Propal:/comm/propal/class/propal.class.php</code><br />
::Commande client :<code>Commande:/commande/class/commande.class.php:commande:ref</code><br />
::Facture client : <code>Facture:/compta/facture/class/facture.class.php</code><br />
::Projet : <code>Project:/projet/class/project.class.php</code><br />
::Taches : <code>Task:/project/class/task.class.php</code><br />
::Contrat : <code>Contrat:/contrat/class/contrat.class.php</code><br />
::Intervention : <code>Fichinter:/fichinter/class/fichinter.class.php</code><br />
::Expédition : <code>Expedition:/expedition/class/expedition.class.php</code><br />
::Commande fournisseur : <code>CommandeFournisseur:/fourn/class/fournisseur.commande.class.php</code><br />
::Facture fournisseur : <code>FactureFournisseur:/fourn/class/fournisseur.facture.class.php</code><br />
::Entrepôt : <code>Entrepot:/product/stock/class/entrepot.class.php</code><br />
::Événement : <code>ActionComm:/comm/action/class/actioncomm.class.php</code><br />
::Banque : <code>Account:/compta/bank/class/account.class.php</code><br />
::Catégorie : <code>Categorie:/categories/class/categorie.class.php</code><br />
*Largeur : la largeur saisie ici s'appliquera au champ à l'écran<br />
*Alignement<br />
*Actif : le champ sera présent et affiché par défaut. Son affichage pourra être modifié depuis le bouton autres colonnes.<br />
*Visible : le champ sera affiché dans la liste<br />
*Filtrable : <br />
:Options de filtrage sur les valeurs du champ.<br />
:{| class="wikitable" <br />
|- style="background-color:orange; font-weight:bold;" <br />
| Durée, Nombre, Somme, Prix <br />
| Résultat<br />
|- <br />
| < 20000 <br />
| nombres < et = à 200000<br />
|- <br />
| 200000-300000<br />
| nombres de 200000 à 300000 inclus<br />
|- style="background-color: orange; font-weight:bold;"<br />
| Date <br />
| <br />
|- <br />
|2008<br />
| toutes les dates de 2008 du 01/01 au 31/12 inclus<br />
|- <br />
| 2006-2009<br />
| toutes les dates du 01/01/2006 au 31/12/2009 inclus<br />
|- <br />
| >2004<br />
| toutes les dates supérieures (ou =) au 01/01/2004<br />
|- <br />
| 20060401<br />
| Tous les éléments correspondant au jour saisi au format AAAMMJJ<br />
|}<br />
::Boolean, Liste, Statut : dans le cas d’un filtre booléen, trois valeurs sont sélectionnables dans la liste :<br />
:::vide : le champ n’est pas filtré<br />
:::<code>vrai</code> : sélectionne les valeurs saisies à « vrai »<br />
:::<code>faux</code> : sélection des valeurs saisies à « faux »<br />
:::Dans les autres cas, cela dépend du paramétrage additionnel du champ.<br />
{{Note|Une zone au format Check n’est pas filtrable}}<br />
*Filtre par défaut : ajouter un filtre par défaut permet l'enregistrement d'une valeur de filtrage active dès l'affichage de la liste.<br />
{{Note|Les champs ci-dessous sont apportés par '''myListMore'''}}<br />
*Largeur sur l'édition : la largeur saisie ici s'appliquera à l'édition PDF<br />
{{Note|Les champs ci-dessous ne s'appliquent qu'aux champs de type prix ou nombre.|warn}<br />
*Totalisation du champ : affichera un tableau avec les totaux des champs pour lesquels la fonctionnalité aura été activée.<br />
* Moyenne du champ :affichera un tableau avec les moyennes des champs pour lesquels la fonctionnalité aura été activée.<br />
<br />
===Gestion des clés spécifiques (<code>rowid</code>, <code>fk_statut</code>)===<br />
*Champs rowid : les champs rowid ont un fonctionnement particulier dans myList, associés à des paramètres, ils permettent de créer un lien vers l’élément dont ils sont la clé.<br />
:Rendre un champ cliquable est sans doute la problématique la plus complexe de myList car elle implique de comprendre un peu l’architecture de Dolibarr.<br />
:Tout d’abord il est nécessaire de repérer dans les répertoires de Dolibarr où se trouve la classe de l’élément que l’on souhaite appeler et comment celle-ci se nomme dans le fichier<br />
:Si l’on souhaite par exemple rendre cliquable une commande fournisseur, il faut trouver le fichier de la classe associée à cet élément (<code>/fourn/class/fournisseur.commande.class.php</code>) puis regarder le nom de la classe objet (CommandeFournisseur).<br />
*Champs fk_statut : les champs fk_statut servent à connaître l'état d'un élément. Cependant, le nombre et le type d'état est propre à chaque élément. Les choix sélectionnables sont donc à ajouter aux paramètres supplémentaires des champs. Comme pour le <code>rowid</code>, il convient donc de repérer la classe utilisée pour définir l'élément mis ajouter les états que l'on souhaite utiliser en les séparant par des #.<br />
<br />
{| class="wikitable"<br />
| [[file:mylist_Exemple_champs.png|600px]]<br />
| style="vertical-align:top;" | Terminez la création des champs sur le modèle ci-contre<br />
|}<br />
<br />
Pour que la liste soit accessible depuis les menus de Dolibarr, il vous suffit de modifier la liste pour la rendre active.<br />
{{Note|Avant de rendre la liste active, vous pouvez l'afficher avec sa requête en utilisant le lien de menu '''Outils Patas-M > MyList'''.<br />
Cette astuce ne fonctionne que sur les liste non encore activées.}}<br />
<br />
[[file:mylist_Liste_test.png|600px]]<br />
<br />
{| class="wikitable"<br />
| [[file:mylist_Liste_affichee.png|600px]]<br />
| style="vertical-align:top;" | Une fois la liste activée, elle apparaîtra depuis les liens définis sur sa page de création.<br />
Le bouton '''Export en CSV''' permet d'effectuer un export des résultats de la liste au format CSV pour un traitement externe. Il est nécessaire d'avoir activé la fonctionnalité d'export dans la "Configuration" et dans le paramétrage enregistré lors de la "Champs de la page de création d'une liste".<br />
|}<br />
<br />
{| class="wikitable"<br />
| [[file:mylist_Liste_test.png|600px]]<br />
| style="vertical-align:top;" | Si vous avez paramétré la liste pour l'afficher dans l'onglet d'une fiche, les résultats seront filtrés selon l'élément. <br />
{{Note|Le filtrage de l'affichage des résultats de la liste nécessite la présence d'une condition dans sa requête SQL. Si aucune n'est présente, ajoutez par exemple WHERE 1 = 1 }}<br />
|}<br />
<br />
==Autres fonctionnalités==<br />
===Import d'une liste===<br />
<br />
Il est possible d'enregistrer une liste et le paramétrage de ses champs en important un fichier '''XML'''.<br />
{{Note|Des exemples de liste sont livrés avec le module MyList dans le dossier XMLsample}}<br />
<br />
{| class="wikitable"<br />
| [[file:mylist_Import.png|600px]]<br />
| style="vertical-align:top;" | Depuis la page '''Outils Patas-M > MyList > Importer une liste''', collez le fichier XML dans la zone de saisie et cliquez sur le bouton '''Lancer l'importation'''.<br />
Activez la liste depuis sa fiche et elle sera accessible depuis vos menus de Dolibarr<br />
|}<br />
<br />
Activez la liste depuis sa fiche et elle sera accessible depuis vos menus de Dolibarr.<br />
<br />
===Requêtes de traitement===<br />
En complément de la requête d'affichage de la liste, une requête de traitement peut donner la possibilité d'effectuer de nouvelles actions, toujours à partir de requêtes SQL.<br />
<br />
{| class="wikitable"<br />
| [[file:mylist_Fiche_liste_traitement.png|600px]]<br />
| style="vertical-align:top;" | Partons d'une liste de contacts et ajoutons dans le champ '''Requête de traitement'' la ligne <code>DELETE FROM 'llx_socpeople' WHERE rowid=#ROWID#</code> permettant leur suppression.<br />
|}<br />
<br />
{| class="wikitable"<br />
| [[file:mylist_Liste_traitement.png|600px]]<br />
| style="vertical-align:top;" | Modifiez l'un des champs pour l'enregistrer au type checkable. La liste devient alors tel que ci-contre.<br />
Les cases à cocher serviront à sélectionner les résultats de la liste auxquels appliquer le traitement indiqué dans la requête. Dans notre exemple, les contacts sélectionnés seront supprimés de la base de données.<br />
|}<br />
<br />
===Sélection des champs à l'affichage des listes===<br />
{| class="wikitable"<br />
| [[file:mylist_Datatables.png|600px]]<br />
| style="vertical-align:top;" | En activant DataTables dans la "Configuration", vous pouvez choisir les colonnes de la liste à afficher ou non par cases à cocher depuis le bouton '''Autres colonnes'''<br />
|}<br />
<br />
==Questions fréquentes==<br />
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.<br />
Si vous rencontrez une autre erreur que celles décrites ci-dessous lors de l'utilisation de ce module :<br />
#Désactivez et réactivez le module,<br />
#Vérifier sur le ChangeLog si une nouvelle version a été publiée,<br />
#Ré-installez/mettez à jour le module,<br />
#Vérifiez que le remplacement de fichiers natifs de Dolibarr ne soit pas nécessaire au bon fonctionnement du module.<br />
#Vérifiez qu'aucune incompatibilité avec un autre module ne soit indiquée. Le cas échéant, suivez nos préconisations.<br />
<br />
Si, malgré ces manipulations, l'erreur persiste, contactez-nous en utilisant le formulaire dédié (http://docs.patas-monkey.com/support/).<br />
<br />
*Les résultats de la liste ne sont pas ceux attendus <br />
:Le meilleur moyen de s'assurer de la qualité de votre requête SQL est d'interroger directement votre base de données via phpmyadmin ou logiciel équivalent. Adapter la requête de la liste pour la coller dans la zone SQL de phpmyadmin. Si les résultats sont les mêmes que la liste, revoyez votre requête.<br />
:Dans le cas contraire, myList peut présenter un bug. Contactez-nous ! (docs.patas-monkey.com/support).<br />
*Vos listes n'apparaissent pas/plus dans vos menus<br />
:Suite à une mise à jour du module ou des listes elles-mêmes, même si vos listes indiquent qu'elles sont activées, vous devrez les réactivez en entrant en édition du champ Active et en enregistrant à nouveau.<br />
*Message d'erreur DB_ERROR_NOSUCHFIELD ou DB_ERROR_NOSUCHTABLE<br />
{| class="wikitable"<br />
| [[file:Mylist-erreur.png|600px]]<br />
| style="vertical-align:top;" | <br />
Vous avez indiqué dans votre requête un champ ou une table qui n'existent pas dans votre base de donnée ou qui n'est pas identifiable. Revoyez votre requête SQL. Il s'agit souvent d'une faute de frappe ou d'une mauvaise liaison dans votre requête.<br />
<br />
Le contenu du message vous aidera à identifier l'erreur avec les lignes '''Code retour dernier accès en base en erreur et Information sur le dernier accès en base en erreur'''.<br />
|}<br />
*Liste supprimée toujours présente<br />
:Vous avez supprimé la liste sans la désactiver d'abord. Mylist ne peut plus supprimer la liste : vous devrez nettoyer votre base de données en supprimant la liste de la table llx_mylist depuis phpmyadmin.<br />
*Message d'erreur à la création de la liste<br />
:Si vous avez effectué une mise à jour de MyListmore depuis une ancienne version, il est possible que vous rencontriez un message d'erreur à la création d'une liste.<br />
:Pour le corriger, vous devrez effectuer la requête suivante sur votre base de données : <code>ALTER TABLE `llx_mylist` CHANGE `model_pdf` `model_pdf` VARCHAR(255) NULL DEFAULT NULL;</code></div>Nomihttps://wiki.patas-monkey.com/index.php?title=Fichier:New.png&diff=918Fichier:New.png2021-03-29T14:41:35Z<p>Nomi : </p>
<hr />
<div></div>Nomihttps://wiki.patas-monkey.com/index.php?title=MyField&diff=914MyField2021-03-29T14:29:02Z<p>Nomi : /* Contexte d'activation */</p>
<hr />
<div>{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[File:Myfield-250x250.png]]<br />
| Ce Module permet de personnaliser les libellés des menus, onglets, champs des fiches et listes de Dolibarr.<br />
Vous pouvez choisir vous-même le libellé de vos menus, le libellé des onglets et champs des fiches et listes<br />
|}<br />
<br />
== Présentation ==<br />
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...<br />
<br />
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.<br />
<br />
MyField permet encore de cacher des menus à des groupes d'utilisateurs et d'en modifier l'URL de destination.<br />
<br />
== Paramétrage ==<br />
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 [[file:doli-setup.png]] ou l'icône [[file:doli-setup-old.png]] en bout de ligne.<br />
<br />
[[file:myfield_Configuration.png|600px]]<br />
<br />
=== Page de configuration du module ===<br />
==== Activation du contexte pour le développement====<br />
MyField permet d'afficher sur certaines pages de Dolibarr les contextes utilisables pour limiter les actions de personnalisations des myFields.<br />
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.<br />
Paramétrer l'affichage des contexte sur vos pages vous permettra de les identifier pour paramétrer au mieux vos myfields.<br />
<br />
{| class="wikitable"<br />
| [[file:myfield-Message-contexte.png]]<br />
| style="vertical-align:top;" | <br />
L'activation de l'affichage des contextes se traduit par des messages du type ci-contre<br />
|} <br />
<br />
==== Droits des administrateurs====<br />
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.<br />
<br />
==== Remplacement des boutons natifs====<br />
MyField permet le remplacement des boutons standards de Dolibarr par des icônes.<br />
{| class="wikitable"<br />
| [[file:myfield_Button-replace.png|300px]]<br />
| au lieu de <br />
| [[file:myfield_Button-standard.png|500px]]<br />
|}<br />
<br />
==== Information de support ==== <br />
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 :<br />
[[file:Myfield_Technical-information.png||800px]]<br />
<br />
===Permissions===<br />
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 ([[file:tick.png]]).<br />
<br />
====Permissions utilisateurs et groupes====<br />
{| class="wikitable"<br />
| [[file:myfield-Permissions-utilisateur.png|600px]]<br />
| style="vertical-align:top;" | <br />
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<br />
|}<br />
<br />
====Permissions par défaut====<br />
{| class="wikitable"<br />
| [[file:myfield-Permissions-defaut.png|600px]]<br />
| style="vertical-align:top;" | <br />
Les permissions par défaut ('''Accueil > Configuration > Sécurité > Permissions par défaut'''), accordées à tout utilisateur créé ultérieurement à l'installation du module, si il n'est pas ajouté à un groupe, sont les suivantes<br />
|}<br />
<br />
== Démarrage ==<br />
<br />
Les fonctionnalités de MyField sont accessibles depuis l'onglet de menu principal Patastools.<br />
Votre menu secondaire présente alors les entrées de menu suivantes :<br />
<br />
{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| style='border-style: none;' | '''MyField'''<br />
| L'entrée principale affiche la liste de tous les myFields de votre environnement<br />
|- style="vertical-align:top;" <br />
| style='border-style: none;' | <br />
'''Nouveau myField'''<br /><br />
'''Nouveau myTab'''<br /><br />
'''Nouveau myField de liste'''<br /> <br />
'''Nouveau myMenu'''<br />
| Ces entrées afficheront la page de création d'un nouveau myField selon son type :<br />
* champ de fiche <br />
* onglet<br />
* champs de liste <br />
* menu <br />
|- style="vertical-align:top;" <br />
| style='border-style: none;' | '''Liste des éléments'''<br />
| Cette entrée affichera également la liste des myFields enregistrés sur votre environnement <br />
|- style="vertical-align:top;" <br />
| style='border-style: none;' | '''Droits d'accès aux éléments'''<br />
| Cette page vous permettra de paramétrer les habilitations des groupes d'utilisateurs aux fonctionnalités de MyFields, tabs et menus.<br />
|- style="vertical-align:top;"<br />
| style='border-style: none;' | '''Import XML'''<br />
| Cette entré affichera une page permettant de copier un fichier d'import d'un myfield au format XML.<br />
|}<br />
<br />
== Personnalisation d'un menu avec myField ==<br />
=== Création du myField ===<br />
La page de création d'un myField de type menu est accessible depuis le lien de menu secondaire '''Patas-tools > MyField > Nouveau myMenu.'''<br />
[[File:Myfield-Page-creation-menu.png|800px]]<br />
<br />
<br />
{| <br />
| style="vertical-align:top;width:50%;" |<br />
{| class="wikitable"<br />
| style="vertical-align:top;width:25%;" |<br />
Type de myField <br />
| style="vertical-align:top;" | <br />
le champ automatiquement rempli en fonction du lien de menu sur lequel vous avez cliqué pour afficher cette page de création (menu).<br />
|-<br />
| style="vertical-align:top;" |<br />
Libellé natif <br />
| style="vertical-align:top;" | <br />
saisissez ici le libellé natif du menu tel qu'il est affiché sur votre interface.<br />
|-<br />
| style="vertical-align:top;" |<br />
Type de menu <br />
| style="vertical-align:top;" | <br />
sélectionnez dans la liste déroulante le type de menu que vous souhaitez personnaliser selon qu'il s'agit d'un menu principal, d'un menu secondaire ou d'une entrée de menu secondaire.<br />
|-<br />
| style="vertical-align:top;" |<br />
Texte de remplacement <br />
| style="vertical-align:top;" | <br />
texte de votre choix qui sera affiché à la place du libellé natif.<br />
|-<br />
| style="vertical-align:top;" |<br />
Auteur<br />
| style="vertical-align:top;" | <br />
le nom du créateur du myField<br />
|}<br />
<br />
| style="vertical-align:top;" | <br />
{| class="wikitable"<br />
| style="vertical-align:top;width:25%;" |<br />
Affichage<br />
| style="vertical-align:top;" | <br />
*Visible : le champ sera affiché. Il s'agit du fonctionnement standard de Dolibarr.<br />
*Invisible : le champ sera absent des fiches<br />
*Caché : le champ sera absent des fiches mais pourra être affiché (Show/Hide).<br />
|-<br />
| style="vertical-align:top;" |<br />
Couleur de fond <br />
| style="vertical-align:top;" | <br />
utilisez le sélecteur de couleur pour déterminer la couleur de fond du champ.<br />
|-<br />
| style="vertical-align:top;" |<br />
Déplacement <br />
| style="vertical-align:top;" | <br />
saisissez -1 pour déplacer l'onglet du menu vers la gauche, 1 vers la droite.<br />
|-<br />
| style="vertical-align:top;" |<br />
URL de redirection <br />
| style="vertical-align:top;" | <br />
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.<br />
|}<br />
<br />
|}<br />
<br />
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)<br />
<br />
===Exemple de personnalisation d'un menu principal===<br />
Personnalisons le menu ''Accueil''.<br />
<br />
[[file:myfield-Param-menu-accueil.png|600px]]<br />
<br />
[[file:Myfield-menu-resultat.png|600px]]<br />
<br />
===Exemple de personnalisation d'un menu et d'une entrée de menu secondaire===<br />
Personnalisons le menu secondaire Propositions commerciales et l'entrée de menu secondaire Nouvelle proposition.<br />
<br />
[[file:myfield-Param-menu-secondaire.png|600px]] <br />
<br />
[[file:myfield-Param-entree-menu-secondaire.png|600px]] <br />
<br />
{{Note|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}}<br />
Suite à l'application de ces deux personnalisations, le menu secondaire devient :<br />
<br />
{| class="wikitable"<br />
| [[file:Myfield-entree-menu-secondaire.png]]<br />
| style="vertical-align:top;" |<br />
plutôt que<br />
| [[file:Myfield-menu-secondaire.png]] <br />
|}<br />
<br />
===Cas particulier de entrées de menu secondaire "Liste"===<br />
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 ('''#''') :<br />
<br />
{| class="wikitable"<br />
| style="vertical-align:top;" |<br />
''Ajoutez au libellé le menu secondaire : Propositions commerciales#Liste''<br />
<br />
[[file:myfield_Liste-param.png|600px]] <br />
<br />
| style="vertical-align:top;" | <br />
Pour obtenir <br />
<br />
[[file:myfield_Liste-param-menu.png]]<br />
|}<br />
<br />
==Personnalisation d'un onglet avec myField==<br />
===Création du myField===<br />
La page de création d'un myField est accessible depuis le lien de menu secondaire '''Patastools > MyField > Nouveau MyTab'''.<br />
<br />
[[file:myfield-Page-creation-onglet.png|600px]]<br />
<br />
{| <br />
| style="vertical-align:top;width:50%;" |<br />
{| class="wikitable"<br />
| style="vertical-align:top;width:25%;" |<br />
Type de myField <br />
| style="vertical-align:top;" | <br />
le champ automatiquement rempli en fonction du lien de menu sur lequel vous avez cliqué.<br />
|-<br />
| style="vertical-align:top;" |<br />
Libellé natif <br />
| style="vertical-align:top;" | <br />
saisissez ici le libellé natif du menu tel qu'il est affiché à l'écran.<br />
|-<br />
| style="vertical-align:top;" |<br />
Contexte d'activation <br />
| style="vertical-align:top;" | <br />
le contexte d'activation permet de limiter l'action des myFields sur les seuls champs des pages comportant le contexte indiqué ici. <br />
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.<br />
<br />
[[#Context_d.27activation|Liste des principaux contexte ]]<br />
<br />
|-<br />
| style="vertical-align:top;" |<br />
Texte de remplacement <br />
| style="vertical-align:top;" | <br />
texte de votre choix qui sera affiché à la place du libellé natif.<br />
|-<br />
| style="vertical-align:top;" |<br />
Auteur<br />
| style="vertical-align:top;" | <br />
le nom du créateur du myField<br />
<br />
|}<br />
<br />
| style="vertical-align:top;" | <br />
{| class="wikitable"<br />
| style="vertical-align:top;width:25%;" |<br />
Affichage<br />
| style="vertical-align:top;" | <br />
*Visible : le champ sera affiché. Il s'agit du fonctionnement standard de Dolibarr.<br />
*Invisible : le champ sera absent des fiches<br />
*Caché : le champ sera absent des fiches mais pourra être affiché (Show/Hide).<br />
<br />
|-<br />
| style="vertical-align:top;" |<br />
Couleur de fond <br />
| style="vertical-align:top;" | <br />
utilisez le sélecteur de couleur pour déterminer la couleur de fond du myField.<br />
|-<br />
| style="vertical-align:top;" |<br />
Déplacement <br />
| style="vertical-align:top;" | <br />
saisissez -1 pour déplacer l'onglet du menu vers la gauche, 1 vers la droite.<br />
|-<br />
| style="vertical-align:top;" |<br />
URL de redirection <br />
| style="vertical-align:top;" | <br />
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.<br />
|}<br />
<br />
|}<br />
<br />
<br />
{{Note|N'indiquez ici que la partie de l'URL suivant ''/htdocs/''}}<br />
Requête d'affichage : voir section Fonctionnement, ci-dessous<br />
<br />
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).<br />
<br />
===Exemple de personnalisation d'un onglet===<br />
Personnalisons l'onglet fiche des fiches des éléments.<br />
<br />
[[file:myfield-Param-onglet-fiche.png|600px]] <br />
<br />
La fiche devient alors <br />
<br />
[[file:myfield-Natif-fiche.png|600px]] <br />
{{Note|Si l'onglet est actif, la couleur sera affichée sur ses bords}}<br />
<br />
==Personnalisation d'un champ avec myField==<br />
===Création du myField===<br />
La page de création d'un myField est accessible depuis le lien de menu secondaire '''Patastools > MyField > Nouveau MyField'''.<br />
[[file:myfield-Page-creation.png|600px]] <br />
<br />
<br />
{| <br />
| style="vertical-align:top;width:50%;" |<br />
{| class="wikitable"<br />
| style="vertical-align:top;width:25%;" |<br />
Type de myField <br />
| style="vertical-align:top;" | <br />
le champ automatiquement rempli en fonction du lien de menu sur lequel vous avez cliqué.<br />
|-<br />
| style="vertical-align:top;" |<br />
Libellé natif <br />
| style="vertical-align:top;" | <br />
saisissez ici le libellé natif du champ tel qu'il est affiché à l'écran.<br />
|-<br />
| style="vertical-align:top;" |<br />
Contexte d'activation <br />
| style="vertical-align:top;" | <br />
le contexte d'activation permet de limiter l'action des myFields sur les seuls champs des pages comportant le contexte indiqué ici. <br />
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.<br />
<br />
[[#Context_d.27activation|Liste des principaux contexte ]]<br />
<br />
|-<br />
| style="vertical-align:top;" |<br />
Texte de remplacement <br />
| style="vertical-align:top;" | <br />
texte de votre choix qui sera affiché à la place du libellé natif.<br />
|-<br />
| style="vertical-align:top;" |<br />
Auteur<br />
| style="vertical-align:top;" | <br />
le nom du créateur du myField<br />
<br />
|}<br />
<br />
| style="vertical-align:top;" | <br />
{| class="wikitable"<br />
| style="vertical-align:top;width:25%;" |<br />
Affichage<br />
| style="vertical-align:top;" | <br />
*Visible : le champ sera affiché. Il s'agit du fonctionnement standard de Dolibarr.<br />
*Invisible : le champ sera absent des fiches<br />
*Caché : le champ sera absent des fiches mais pourra être affiché (Show/Hide).<br />
<br />
|-<br />
| style="vertical-align:top;" |<br />
Couleur de fond <br />
| style="vertical-align:top;" | <br />
utilisez le sélecteur de couleur pour déterminer la couleur de fond du myField.<br />
|-<br />
| style="vertical-align:top;" |<br />
Déplacement <br />
| style="vertical-align:top;" | <br />
saisissez 1 pour remonter d'un champ, -1 pour descendre. <br />
|-<br />
| style="vertical-align:top;" |<br />
Valeur par défaut <br />
| style="vertical-align:top;" | <br />
<br />
|-<br />
| style="vertical-align:top;" |<br />
Taille du champ de saisie <br />
| style="vertical-align:top;" | <br />
à définir selon vos besoins. Si laissé vide, la valeur native du champ est conservée.<br />
|-<br />
| style="vertical-align:top;" |<br />
Obligatoire : <br />
| style="vertical-align:top;" | <br />
cochez cette case pour rendre la saisie de valeurs dans le champ obligatoire pour enregistrer la création ou les modifications de la page<br />
{{Note|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|warn}}<br />
|-<br />
| style="vertical-align:top;" |<br />
Masque de saisie<br />
| style="vertical-align:top;" | <br />
le masque de saisie est paramétrable avec les caractères suivants :<br />
*a pour une lettre (A-Z,a-z)<br />
*9 pour un chiffre (0-9)<br />
*pour un caractère alphanumérique (A-Z,a-z,0-9)<br />
: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<br />
*UPPERCASE pour forcer la saisie en majuscule.<br />
|-<br />
| style="vertical-align:top;" |<br />
Requête d'affichage<br />
| style="vertical-align:top;" | <br />
Voir section Fonctionnement<br />
|}<br />
<br />
|}<br />
<br />
{{Note|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}}<br />
<br />
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).<br />
<br />
===Exemple de personnalisation d'un champ===<br />
Personnalisons le champ ''Id. prof. 2 (SIRET)'' des fiches de tiers.<br />
<br />
{| class="wikitable"<br />
|- style="vertical-align:top;"<br />
| [[file:myfield_Param-champ.png|600px]]<br />
| Le champ a été paramétré en tant qu'invisible avec un masque de saisie de chiffres (999 999 999 99999) <br />
<br />
|- style="vertical-align:top;"<br />
| [[file:Myfield-champ.png|600px]] <br />
<br />
[[file:myfield-Masque.png]]<br />
<br />
|<br />
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<br />
<br />
<br />
<br />
<br />
<br />
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.<br />
|}<br />
<br />
==Personnalisation d'un myField de liste==<br />
===Création du myField===<br />
Les mylist de liste permettent de limiter l'affichage de champs.<br />
Masquons le champ Tiers de la liste des contrats avec le myField suivant :<br />
[[file:Myfield-masque-tiers.png|600px]]<br />
<br />
[[#Context_d.27activation|Liste des principaux contexte ]]<br />
<br />
La liste ne contient plus le champs Tiers, et il n'est pas possible de le sélectionner dans le sélecteur de champs.<br />
<br />
[[file:myfield_Liste-contrats.png|600px]]<br />
<br />
{{Note|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 !}}<br />
<br />
=Requête SQL de traitement=<br />
==Fonctionnement==<br />
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.<br />
<br />
Saisissez ici la requête d'affichage applicable au champs sur l'exemple suivant :<br />
<br />
''#SEL# if llx_product.type=1 FROM llx_product WHERE rowid=#ID#''<br />
<br />
==Exemple==<br />
Avec le myfield suivant<br />
<br />
[[file:myfield_Creation_requete.png|800px]] <br />
<br />
{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| On obtient la fiche suivante sur un produit<br />
[[file:myfield_Creation_requete_result.png|500px]] <br />
| Tandis que sur la fiche d'un service <br />
[[file:myfield_Creation_requete-fiche.png|500px]]<br />
<br />
|}<br />
<br />
=Paramétrage des droits d'accès aux myFields, tabs et menus=<br />
==Configuration des droits d'accès==<br />
En tant qu'utilisateur administrateur, tous les myFields vous sont visibles.<br />
{{Note|Sur la page d'accueil du module MyField, l'application des personnalisations est désactivée}}<br />
<br />
Si vous n'avez pas défini de groupes utilisateurs, les myfields sont affichés sur les interfaces de tous les utilsiateurs.<br />
<br />
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 :<br />
<br />
[[file:myfield-Droits-d-acces.png|600px]]<br />
<br />
Il existe quatre droits d'accès :<br />
<br />
{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[File:lecture-off.png]] Bloqué en accès<br />
[[file:lecture-on.png]] Accès en lecture<br />
| [[file:modif-of.png]] Bloqué en modification<br />
[[file:modif-on.png]] Accès en modification<br />
|}<br />
<br />
==Comportement selon les droits d'accès==<br />
===Bloqué en accès ([[file:lecture-off.png]]) ===<br />
<br />
{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[file:myfield-User-lecture-.png|600px]]<br />
| Le champ sera caché aux utilisateurs du groupe. Ils ne pourront pas l'afficher<br />
<br />
le lien ''Show/Hide'' ne sera pas actif<br />
|}<br />
===Accès en lecture mais bloqué en modification ([[file:lecture-on.png]][[file:modif-of.png]]) ===<br />
{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[file:myfield-User-lecture-.png|600px]]<br />
| Les utilisateurs du groupe pourront afficher le champ, mais ne pourront pas en modifier le contenu.<br />
|}<br />
===Accès en lecture et Accès en modification ([[file:lecture-on.png]][[file:modif-on.png]]) ===<br />
{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[file:myfield-User-lecture+-modif+.png|600px]]<br />
| <br />
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,...)<br />
|}<br />
<br />
=Autres fonctionnalités=<br />
==Import des myField==<br />
Il est possible d'enregistrer une liste de myfields et leurs paramétrages en important un fichier XML.<br />
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'''.<br />
{{Note|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|warn}}<br />
Paramétrer ensuite les droits d'accès des utilisateurs au myField.<br />
<br />
==Contexte d'activation==<br />
Une liste de tous les contextes disponible est présent sur le wiki de dolibarr.<br />
<br />
{| <br />
| <br />
{| class="wikitable"<br />
|- style="background-color:orange; font-weight:bold;"<br />
| Fiche<br />
| Contexte<br />
|-<br />
| Adhérent<br />
| membertypecard<br />
|-<br />
| Catégories<br />
| categorycard<br />
|-<br />
| Commandes<br />
| ordercard<br />
|-<br />
| Commande fournisseur<br />
| ordersuppliercard<br />
|-<br />
| Contact<br />
| contactcard<br />
|-<br />
| Contrat<br />
| contractcard<br />
|-<br />
| Don<br />
| doncard<br />
|-<br />
| Entrepôt<br />
| warehousecard<br />
|-<br />
| Expédition<br />
| expeditioncard<br />
|-<br />
| Facture client<br />
| invoicecard<br />
|-<br />
| Facture fournisseur<br />
| suppliercard<br />
|} <br />
<br />
<br />
| style="vertical-align:top;" | <br />
{| class="wikitable"<br />
|- style="background-color:orange; font-weight:bold;"<br />
| Fiche<br />
| Contexte<br />
|-<br />
| Intervention<br />
| interventioncard<br />
|-<br />
| Livraison<br />
| deliverycard<br />
|-<br />
| Note de frais<br />
| tripandexpensecard<br />
|-<br />
| Produit<br />
| productcard<br />
|-<br />
| Projet<br />
| projectcard<br />
|-<br />
| Proposition commerciale<br />
| propalcard<br />
|-<br />
| Règlement client<br />
| paiementcard<br />
|-<br />
| Règlement fournisseur<br />
| paymentsupplier<br />
|-<br />
| Salaire<br />
| salarycard<br />
|-<br />
| Tache<br />
| projecttaskcard<br />
|-<br />
| Tiers<br />
| thirdpartycard<br />
|-<br />
| Utilisateur<br />
| usercard<br />
<br />
|}<br />
<br />
|}<br />
<br />
=Questions fréquentes=<br />
== Général ==<br />
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.<br />
Si vous rencontrez une autre erreur que celles décrites ci-dessous lors de l'utilisation de ce module :<br />
#Désactivez et réactivez le module,<br />
#Vérifier sur le ChangeLog si une nouvelle version a été publiée,<br />
#Ré-installez/mettez à jour le module,<br />
#Vérifiez que le remplacement de fichiers natifs de Dolibarr ne soit pas nécessaire au bon fonctionnement du module.<br />
#Vérifiez qu'aucune incompatibilité avec un autre module ne soit indiquée. Le cas échéant, suivez nos préconisations.<br />
<br />
Si, malgré ces manipulations, l'erreur persiste, contactez-nous en utilisant le formulaire dédié (http://docs.patas-monkey.com/support/).<br />
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.<br />
<br />
== Affichage d'un message en haut des pages de Dolibarr==<br />
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<br />
(voir Configuration).<br />
<br />
[[file:Myfield-Message-contexte.png]]<br />
<br />
==Message erreur d'ordonnancement==<br />
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.<br />
<br />
Le message d'erreur s'affiche en bas de page et est le suivant<br />
<br />
[[file:myfield_Erreur-dbclose-message.png]] <br />
<br />
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''.<br />
<br />
L'erreur vient de l'inversion des lignes ''llxFooter();'' et ''$db->close();'' en fin de fichier.<br />
<br />
{| class="wikitable" style="width:60%;" <br />
|- style="vertical-align:top;" <br />
| Modifiez le code de la page pour obtenir <br />
[[file:Erreur-dbclose-correction.png]]<br />
| au lieu de<br />
<br />
[[file:Erreur-dbclose.png]]<br />
|}</div>Nomihttps://wiki.patas-monkey.com/index.php?title=MyField&diff=907MyField2021-03-29T14:15:07Z<p>Nomi : /* Exemple de personnalisation d'un champ */</p>
<hr />
<div>{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[File:Myfield-250x250.png]]<br />
| Ce Module permet de personnaliser les libellés des menus, onglets, champs des fiches et listes de Dolibarr.<br />
Vous pouvez choisir vous-même le libellé de vos menus, le libellé des onglets et champs des fiches et listes<br />
|}<br />
<br />
== Présentation ==<br />
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...<br />
<br />
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.<br />
<br />
MyField permet encore de cacher des menus à des groupes d'utilisateurs et d'en modifier l'URL de destination.<br />
<br />
== Paramétrage ==<br />
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 [[file:doli-setup.png]] ou l'icône [[file:doli-setup-old.png]] en bout de ligne.<br />
<br />
[[file:myfield_Configuration.png|600px]]<br />
<br />
=== Page de configuration du module ===<br />
==== Activation du contexte pour le développement====<br />
MyField permet d'afficher sur certaines pages de Dolibarr les contextes utilisables pour limiter les actions de personnalisations des myFields.<br />
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.<br />
Paramétrer l'affichage des contexte sur vos pages vous permettra de les identifier pour paramétrer au mieux vos myfields.<br />
<br />
{| class="wikitable"<br />
| [[file:myfield-Message-contexte.png]]<br />
| style="vertical-align:top;" | <br />
L'activation de l'affichage des contextes se traduit par des messages du type ci-contre<br />
|} <br />
<br />
==== Droits des administrateurs====<br />
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.<br />
<br />
==== Remplacement des boutons natifs====<br />
MyField permet le remplacement des boutons standards de Dolibarr par des icônes.<br />
{| class="wikitable"<br />
| [[file:myfield_Button-replace.png|300px]]<br />
| au lieu de <br />
| [[file:myfield_Button-standard.png|500px]]<br />
|}<br />
<br />
==== Information de support ==== <br />
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 :<br />
[[file:Myfield_Technical-information.png||800px]]<br />
<br />
===Permissions===<br />
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 ([[file:tick.png]]).<br />
<br />
====Permissions utilisateurs et groupes====<br />
{| class="wikitable"<br />
| [[file:myfield-Permissions-utilisateur.png|600px]]<br />
| style="vertical-align:top;" | <br />
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<br />
|}<br />
<br />
====Permissions par défaut====<br />
{| class="wikitable"<br />
| [[file:myfield-Permissions-defaut.png|600px]]<br />
| style="vertical-align:top;" | <br />
Les permissions par défaut ('''Accueil > Configuration > Sécurité > Permissions par défaut'''), accordées à tout utilisateur créé ultérieurement à l'installation du module, si il n'est pas ajouté à un groupe, sont les suivantes<br />
|}<br />
<br />
== Démarrage ==<br />
<br />
Les fonctionnalités de MyField sont accessibles depuis l'onglet de menu principal Patastools.<br />
Votre menu secondaire présente alors les entrées de menu suivantes :<br />
<br />
{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| style='border-style: none;' | '''MyField'''<br />
| L'entrée principale affiche la liste de tous les myFields de votre environnement<br />
|- style="vertical-align:top;" <br />
| style='border-style: none;' | <br />
'''Nouveau myField'''<br /><br />
'''Nouveau myTab'''<br /><br />
'''Nouveau myField de liste'''<br /> <br />
'''Nouveau myMenu'''<br />
| Ces entrées afficheront la page de création d'un nouveau myField selon son type :<br />
* champ de fiche <br />
* onglet<br />
* champs de liste <br />
* menu <br />
|- style="vertical-align:top;" <br />
| style='border-style: none;' | '''Liste des éléments'''<br />
| Cette entrée affichera également la liste des myFields enregistrés sur votre environnement <br />
|- style="vertical-align:top;" <br />
| style='border-style: none;' | '''Droits d'accès aux éléments'''<br />
| Cette page vous permettra de paramétrer les habilitations des groupes d'utilisateurs aux fonctionnalités de MyFields, tabs et menus.<br />
|- style="vertical-align:top;"<br />
| style='border-style: none;' | '''Import XML'''<br />
| Cette entré affichera une page permettant de copier un fichier d'import d'un myfield au format XML.<br />
|}<br />
<br />
== Personnalisation d'un menu avec myField ==<br />
=== Création du myField ===<br />
La page de création d'un myField de type menu est accessible depuis le lien de menu secondaire '''Patas-tools > MyField > Nouveau myMenu.'''<br />
[[File:Myfield-Page-creation-menu.png|800px]]<br />
<br />
<br />
{| <br />
| style="vertical-align:top;width:50%;" |<br />
{| class="wikitable"<br />
| style="vertical-align:top;width:25%;" |<br />
Type de myField <br />
| style="vertical-align:top;" | <br />
le champ automatiquement rempli en fonction du lien de menu sur lequel vous avez cliqué pour afficher cette page de création (menu).<br />
|-<br />
| style="vertical-align:top;" |<br />
Libellé natif <br />
| style="vertical-align:top;" | <br />
saisissez ici le libellé natif du menu tel qu'il est affiché sur votre interface.<br />
|-<br />
| style="vertical-align:top;" |<br />
Type de menu <br />
| style="vertical-align:top;" | <br />
sélectionnez dans la liste déroulante le type de menu que vous souhaitez personnaliser selon qu'il s'agit d'un menu principal, d'un menu secondaire ou d'une entrée de menu secondaire.<br />
|-<br />
| style="vertical-align:top;" |<br />
Texte de remplacement <br />
| style="vertical-align:top;" | <br />
texte de votre choix qui sera affiché à la place du libellé natif.<br />
|-<br />
| style="vertical-align:top;" |<br />
Auteur<br />
| style="vertical-align:top;" | <br />
le nom du créateur du myField<br />
|}<br />
<br />
| style="vertical-align:top;" | <br />
{| class="wikitable"<br />
| style="vertical-align:top;width:25%;" |<br />
Affichage<br />
| style="vertical-align:top;" | <br />
*Visible : le champ sera affiché. Il s'agit du fonctionnement standard de Dolibarr.<br />
*Invisible : le champ sera absent des fiches<br />
*Caché : le champ sera absent des fiches mais pourra être affiché (Show/Hide).<br />
|-<br />
| style="vertical-align:top;" |<br />
Couleur de fond <br />
| style="vertical-align:top;" | <br />
utilisez le sélecteur de couleur pour déterminer la couleur de fond du champ.<br />
|-<br />
| style="vertical-align:top;" |<br />
Déplacement <br />
| style="vertical-align:top;" | <br />
saisissez -1 pour déplacer l'onglet du menu vers la gauche, 1 vers la droite.<br />
|-<br />
| style="vertical-align:top;" |<br />
URL de redirection <br />
| style="vertical-align:top;" | <br />
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.<br />
|}<br />
<br />
|}<br />
<br />
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)<br />
<br />
===Exemple de personnalisation d'un menu principal===<br />
Personnalisons le menu ''Accueil''.<br />
<br />
[[file:myfield-Param-menu-accueil.png|600px]]<br />
<br />
[[file:Myfield-menu-resultat.png|600px]]<br />
<br />
===Exemple de personnalisation d'un menu et d'une entrée de menu secondaire===<br />
Personnalisons le menu secondaire Propositions commerciales et l'entrée de menu secondaire Nouvelle proposition.<br />
<br />
[[file:myfield-Param-menu-secondaire.png|600px]] <br />
<br />
[[file:myfield-Param-entree-menu-secondaire.png|600px]] <br />
<br />
{{Note|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}}<br />
Suite à l'application de ces deux personnalisations, le menu secondaire devient :<br />
<br />
{| class="wikitable"<br />
| [[file:Myfield-entree-menu-secondaire.png]]<br />
| style="vertical-align:top;" |<br />
plutôt que<br />
| [[file:Myfield-menu-secondaire.png]] <br />
|}<br />
<br />
===Cas particulier de entrées de menu secondaire "Liste"===<br />
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 ('''#''') :<br />
<br />
{| class="wikitable"<br />
| style="vertical-align:top;" |<br />
''Ajoutez au libellé le menu secondaire : Propositions commerciales#Liste''<br />
<br />
[[file:myfield_Liste-param.png|600px]] <br />
<br />
| style="vertical-align:top;" | <br />
Pour obtenir <br />
<br />
[[file:myfield_Liste-param-menu.png]]<br />
|}<br />
<br />
==Personnalisation d'un onglet avec myField==<br />
===Création du myField===<br />
La page de création d'un myField est accessible depuis le lien de menu secondaire '''Patastools > MyField > Nouveau MyTab'''.<br />
<br />
[[file:myfield-Page-creation-onglet.png|600px]]<br />
<br />
{| <br />
| style="vertical-align:top;width:50%;" |<br />
{| class="wikitable"<br />
| style="vertical-align:top;width:25%;" |<br />
Type de myField <br />
| style="vertical-align:top;" | <br />
le champ automatiquement rempli en fonction du lien de menu sur lequel vous avez cliqué.<br />
|-<br />
| style="vertical-align:top;" |<br />
Libellé natif <br />
| style="vertical-align:top;" | <br />
saisissez ici le libellé natif du menu tel qu'il est affiché à l'écran.<br />
|-<br />
| style="vertical-align:top;" |<br />
Contexte d'activation <br />
| style="vertical-align:top;" | <br />
le contexte d'activation permet de limiter l'action des myFields sur les seuls champs des pages comportant le contexte indiqué ici. <br />
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.<br />
<br />
[[#Context_d.27activation|Liste des principaux contexte ]]<br />
<br />
|-<br />
| style="vertical-align:top;" |<br />
Texte de remplacement <br />
| style="vertical-align:top;" | <br />
texte de votre choix qui sera affiché à la place du libellé natif.<br />
|-<br />
| style="vertical-align:top;" |<br />
Auteur<br />
| style="vertical-align:top;" | <br />
le nom du créateur du myField<br />
<br />
|}<br />
<br />
| style="vertical-align:top;" | <br />
{| class="wikitable"<br />
| style="vertical-align:top;width:25%;" |<br />
Affichage<br />
| style="vertical-align:top;" | <br />
*Visible : le champ sera affiché. Il s'agit du fonctionnement standard de Dolibarr.<br />
*Invisible : le champ sera absent des fiches<br />
*Caché : le champ sera absent des fiches mais pourra être affiché (Show/Hide).<br />
<br />
|-<br />
| style="vertical-align:top;" |<br />
Couleur de fond <br />
| style="vertical-align:top;" | <br />
utilisez le sélecteur de couleur pour déterminer la couleur de fond du myField.<br />
|-<br />
| style="vertical-align:top;" |<br />
Déplacement <br />
| style="vertical-align:top;" | <br />
saisissez -1 pour déplacer l'onglet du menu vers la gauche, 1 vers la droite.<br />
|-<br />
| style="vertical-align:top;" |<br />
URL de redirection <br />
| style="vertical-align:top;" | <br />
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.<br />
|}<br />
<br />
|}<br />
<br />
<br />
{{Note|N'indiquez ici que la partie de l'URL suivant ''/htdocs/''}}<br />
Requête d'affichage : voir section Fonctionnement, ci-dessous<br />
<br />
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).<br />
<br />
===Exemple de personnalisation d'un onglet===<br />
Personnalisons l'onglet fiche des fiches des éléments.<br />
<br />
[[file:myfield-Param-onglet-fiche.png|600px]] <br />
<br />
La fiche devient alors <br />
<br />
[[file:myfield-Natif-fiche.png|600px]] <br />
{{Note|Si l'onglet est actif, la couleur sera affichée sur ses bords}}<br />
<br />
==Personnalisation d'un champ avec myField==<br />
===Création du myField===<br />
La page de création d'un myField est accessible depuis le lien de menu secondaire '''Patastools > MyField > Nouveau MyField'''.<br />
[[file:myfield-Page-creation.png|600px]] <br />
<br />
<br />
{| <br />
| style="vertical-align:top;width:50%;" |<br />
{| class="wikitable"<br />
| style="vertical-align:top;width:25%;" |<br />
Type de myField <br />
| style="vertical-align:top;" | <br />
le champ automatiquement rempli en fonction du lien de menu sur lequel vous avez cliqué.<br />
|-<br />
| style="vertical-align:top;" |<br />
Libellé natif <br />
| style="vertical-align:top;" | <br />
saisissez ici le libellé natif du champ tel qu'il est affiché à l'écran.<br />
|-<br />
| style="vertical-align:top;" |<br />
Contexte d'activation <br />
| style="vertical-align:top;" | <br />
le contexte d'activation permet de limiter l'action des myFields sur les seuls champs des pages comportant le contexte indiqué ici. <br />
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.<br />
<br />
[[#Context_d.27activation|Liste des principaux contexte ]]<br />
<br />
|-<br />
| style="vertical-align:top;" |<br />
Texte de remplacement <br />
| style="vertical-align:top;" | <br />
texte de votre choix qui sera affiché à la place du libellé natif.<br />
|-<br />
| style="vertical-align:top;" |<br />
Auteur<br />
| style="vertical-align:top;" | <br />
le nom du créateur du myField<br />
<br />
|}<br />
<br />
| style="vertical-align:top;" | <br />
{| class="wikitable"<br />
| style="vertical-align:top;width:25%;" |<br />
Affichage<br />
| style="vertical-align:top;" | <br />
*Visible : le champ sera affiché. Il s'agit du fonctionnement standard de Dolibarr.<br />
*Invisible : le champ sera absent des fiches<br />
*Caché : le champ sera absent des fiches mais pourra être affiché (Show/Hide).<br />
<br />
|-<br />
| style="vertical-align:top;" |<br />
Couleur de fond <br />
| style="vertical-align:top;" | <br />
utilisez le sélecteur de couleur pour déterminer la couleur de fond du myField.<br />
|-<br />
| style="vertical-align:top;" |<br />
Déplacement <br />
| style="vertical-align:top;" | <br />
saisissez 1 pour remonter d'un champ, -1 pour descendre. <br />
|-<br />
| style="vertical-align:top;" |<br />
Valeur par défaut <br />
| style="vertical-align:top;" | <br />
<br />
|-<br />
| style="vertical-align:top;" |<br />
Taille du champ de saisie <br />
| style="vertical-align:top;" | <br />
à définir selon vos besoins. Si laissé vide, la valeur native du champ est conservée.<br />
|-<br />
| style="vertical-align:top;" |<br />
Obligatoire : <br />
| style="vertical-align:top;" | <br />
cochez cette case pour rendre la saisie de valeurs dans le champ obligatoire pour enregistrer la création ou les modifications de la page<br />
{{Note|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|warn}}<br />
|-<br />
| style="vertical-align:top;" |<br />
Masque de saisie<br />
| style="vertical-align:top;" | <br />
le masque de saisie est paramétrable avec les caractères suivants :<br />
*a pour une lettre (A-Z,a-z)<br />
*9 pour un chiffre (0-9)<br />
*pour un caractère alphanumérique (A-Z,a-z,0-9)<br />
: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<br />
*UPPERCASE pour forcer la saisie en majuscule.<br />
|-<br />
| style="vertical-align:top;" |<br />
Requête d'affichage<br />
| style="vertical-align:top;" | <br />
Voir section Fonctionnement<br />
|}<br />
<br />
|}<br />
<br />
{{Note|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}}<br />
<br />
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).<br />
<br />
===Exemple de personnalisation d'un champ===<br />
<br />
{| class="wikitable"<br />
|- style="vertical-align:top;"<br />
| [[file:myfield_Param-champ.png|600px]]<br />
|<br />
Personnalisons le champ ''Id. prof. 2 (SIRET)'' des fiches de tiers.<br />
|- style="vertical-align:top;"<br />
| [[file:Myfield-champ.png|600px]] <br />
|<br />
Le champ a été paramétré en tant qu'invisible. 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<br />
|- style="vertical-align:top;"<br />
| [[file:myfield-Masque.png]]<br />
|<br />
En édition du champ, le masque sera activé et ne permettra que la saisie de chiffres (masque saisi 999 999 999 99999) et sa complétion vérifiée (rendu obligatoire) pour empêcher l'enregistrement de la page sans qu'il ne soit rempli<br />
|}<br />
<br />
==Personnalisation d'un myField de liste==<br />
===Création du myField===<br />
Les mylist de liste permettent de limiter l'affichage de champs.<br />
Masquons le champ Tiers de la liste des contrats avec le myField suivant :<br />
[[file:Myfield-masque-tiers.png|600px]]<br />
<br />
[[#Context_d.27activation|Liste des principaux contexte ]]<br />
<br />
La liste ne contient plus le champs Tiers, et il n'est pas possible de le sélectionner dans le sélecteur de champs.<br />
<br />
[[file:myfield_Liste-contrats.png|600px]]<br />
<br />
{{Note|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 !}}<br />
<br />
=Requête SQL de traitement=<br />
==Fonctionnement==<br />
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.<br />
<br />
Saisissez ici la requête d'affichage applicable au champs sur l'exemple suivant :<br />
<br />
''#SEL# if llx_product.type=1 FROM llx_product WHERE rowid=#ID#''<br />
<br />
==Exemple==<br />
Avec le myfield suivante :<br />
<br />
[[file:myfield_Creation_requete.png|600px]] <br />
<br />
On obtient la fiche suivante sur un produit :<br />
<br />
[[file:myfield_Creation_requete_result.png|600px]] <br />
<br />
Tandis que sur la fiche d'un service :<br />
<br />
[[file:myfield_Creation_requete-fiche.png|600px]]<br />
<br />
=Paramétrage des droits d'accès aux myFields, tabs et menus=<br />
==Configuration des droits d'accès==<br />
En tant qu'utilisateur administrateur, tous les myFields vous sont visibles.<br />
{{Note|Sur la page d'accueil du module MyField, l'application des personnalisations est désactivée}}<br />
<br />
Si vous n'avez pas défini de groupes utilisateurs, les myfields sont affichés sur les interfaces de tous les utilsiateurs.<br />
<br />
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 :<br />
<br />
[[file:myfield-Droits-d-acces.png|600px]]<br />
<br />
Il existe quatre droits d'accès :<br />
<br />
{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[File:lecture-off.png]] Bloqué en accès<br />
[[file:lecture-on.png]] Accès en lecture<br />
| [[file:modif-of.png]] Bloqué en modification<br />
[[file:modif-on.png]] Accès en modification<br />
|}<br />
<br />
==Comportement selon les droits d'accès==<br />
===Bloqué en accès ([[file:lecture-off.png]]) ===<br />
<br />
{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[file:myfield-User-lecture-.png|600px]]<br />
| Le champ sera caché aux utilisateurs du groupe. Ils ne pourront pas l'afficher<br />
<br />
le lien ''Show/Hide'' ne sera pas actif<br />
|}<br />
===Accès en lecture mais bloqué en modification ([[file:lecture-on.png]][[file:modif-of.png]]) ===<br />
{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[file:myfield-User-lecture-.png|600px]]<br />
| Les utilisateurs du groupe pourront afficher le champ, mais ne pourront pas en modifier le contenu.<br />
|}<br />
===Accès en lecture et Accès en modification ([[file:lecture-on.png]][[file:modif-on.png]]) ===<br />
{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[file:myfield-User-lecture+-modif+.png|600px]]<br />
| <br />
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,...)<br />
|}<br />
<br />
=Autres fonctionnalités=<br />
==Import des myField==<br />
Il est possible d'enregistrer une liste de myfields et leurs paramétrages en important un fichier XML.<br />
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'''.<br />
{{Note|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|warn}}<br />
Paramétrer ensuite les droits d'accès des utilisateurs au myField.<br />
<br />
==Contexte d'activation==<br />
Une liste de tous les contextes disponible est présent sur le wiki de dolibarr.<br />
<br />
:{| class="wikitable"<br />
|- style="background-color:orange; font-weight:bold;"<br />
| Fiche<br />
| Contexte<br />
|-<br />
| Adhérent<br />
| membertypecard<br />
|-<br />
| Catégories<br />
| categorycard<br />
|-<br />
| Commandes<br />
| ordercard<br />
|-<br />
| Commande fournisseur<br />
| ordersuppliercard<br />
|-<br />
| Contact<br />
| contactcard<br />
|-<br />
| Contrat<br />
| contractcard<br />
|-<br />
| Don<br />
| doncard<br />
|-<br />
| Entrepôt<br />
| warehousecard<br />
|-<br />
| Expédition<br />
| expeditioncard<br />
|-<br />
| Facture client<br />
| invoicecard<br />
|-<br />
| Facture fournisseur<br />
| suppliercard<br />
|-<br />
| Intervention<br />
| interventioncard<br />
|-<br />
| Livraison<br />
| deliverycard<br />
|-<br />
| Note de frais<br />
| tripandexpensecard<br />
|-<br />
| Produit<br />
| productcard<br />
|-<br />
| Projet<br />
| projectcard<br />
|-<br />
| Proposition commerciale<br />
| propalcard<br />
|-<br />
| Règlement client<br />
| paiementcard<br />
|-<br />
| Règlement fournisseur<br />
| paymentsupplier<br />
|-<br />
| Salaire<br />
| salarycard<br />
|-<br />
| Tache<br />
| projecttaskcard<br />
|-<br />
| Tiers<br />
| thirdpartycard<br />
|-<br />
| Utilisateur<br />
| usercard<br />
|}<br />
<br />
=Questions fréquentes=<br />
== Général ==<br />
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.<br />
Si vous rencontrez une autre erreur que celles décrites ci-dessous lors de l'utilisation de ce module :<br />
#Désactivez et réactivez le module,<br />
#Vérifier sur le ChangeLog si une nouvelle version a été publiée,<br />
#Ré-installez/mettez à jour le module,<br />
#Vérifiez que le remplacement de fichiers natifs de Dolibarr ne soit pas nécessaire au bon fonctionnement du module.<br />
#Vérifiez qu'aucune incompatibilité avec un autre module ne soit indiquée. Le cas échéant, suivez nos préconisations.<br />
<br />
Si, malgré ces manipulations, l'erreur persiste, contactez-nous en utilisant le formulaire dédié (http://docs.patas-monkey.com/support/).<br />
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.<br />
<br />
== Affichage d'un message en haut des pages de Dolibarr==<br />
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<br />
(voir Configuration).<br />
<br />
[[file:Myfield-Message-contexte.png]]<br />
<br />
==Message erreur d'ordonnancement==<br />
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.<br />
<br />
Le message d'erreur s'affiche en bas de page et est le suivant<br />
<br />
[[file:myfield_Erreur-dbclose-message.png]] <br />
<br />
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''.<br />
<br />
L'erreur vient de l'inversion des lignes ''llxFooter();'' et ''$db->close();'' en fin de fichier.<br />
<br />
{| class="wikitable" style="width:60%;" <br />
|- style="vertical-align:top;" <br />
| Modifiez le code de la page pour obtenir <br />
[[file:Erreur-dbclose-correction.png]]<br />
| au lieu de<br />
<br />
[[file:Erreur-dbclose.png]]<br />
|}</div>Nomihttps://wiki.patas-monkey.com/index.php?title=MyField&diff=906MyField2021-03-29T14:11:33Z<p>Nomi : /* Création du myField */</p>
<hr />
<div>{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[File:Myfield-250x250.png]]<br />
| Ce Module permet de personnaliser les libellés des menus, onglets, champs des fiches et listes de Dolibarr.<br />
Vous pouvez choisir vous-même le libellé de vos menus, le libellé des onglets et champs des fiches et listes<br />
|}<br />
<br />
== Présentation ==<br />
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...<br />
<br />
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.<br />
<br />
MyField permet encore de cacher des menus à des groupes d'utilisateurs et d'en modifier l'URL de destination.<br />
<br />
== Paramétrage ==<br />
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 [[file:doli-setup.png]] ou l'icône [[file:doli-setup-old.png]] en bout de ligne.<br />
<br />
[[file:myfield_Configuration.png|600px]]<br />
<br />
=== Page de configuration du module ===<br />
==== Activation du contexte pour le développement====<br />
MyField permet d'afficher sur certaines pages de Dolibarr les contextes utilisables pour limiter les actions de personnalisations des myFields.<br />
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.<br />
Paramétrer l'affichage des contexte sur vos pages vous permettra de les identifier pour paramétrer au mieux vos myfields.<br />
<br />
{| class="wikitable"<br />
| [[file:myfield-Message-contexte.png]]<br />
| style="vertical-align:top;" | <br />
L'activation de l'affichage des contextes se traduit par des messages du type ci-contre<br />
|} <br />
<br />
==== Droits des administrateurs====<br />
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.<br />
<br />
==== Remplacement des boutons natifs====<br />
MyField permet le remplacement des boutons standards de Dolibarr par des icônes.<br />
{| class="wikitable"<br />
| [[file:myfield_Button-replace.png|300px]]<br />
| au lieu de <br />
| [[file:myfield_Button-standard.png|500px]]<br />
|}<br />
<br />
==== Information de support ==== <br />
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 :<br />
[[file:Myfield_Technical-information.png||800px]]<br />
<br />
===Permissions===<br />
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 ([[file:tick.png]]).<br />
<br />
====Permissions utilisateurs et groupes====<br />
{| class="wikitable"<br />
| [[file:myfield-Permissions-utilisateur.png|600px]]<br />
| style="vertical-align:top;" | <br />
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<br />
|}<br />
<br />
====Permissions par défaut====<br />
{| class="wikitable"<br />
| [[file:myfield-Permissions-defaut.png|600px]]<br />
| style="vertical-align:top;" | <br />
Les permissions par défaut ('''Accueil > Configuration > Sécurité > Permissions par défaut'''), accordées à tout utilisateur créé ultérieurement à l'installation du module, si il n'est pas ajouté à un groupe, sont les suivantes<br />
|}<br />
<br />
== Démarrage ==<br />
<br />
Les fonctionnalités de MyField sont accessibles depuis l'onglet de menu principal Patastools.<br />
Votre menu secondaire présente alors les entrées de menu suivantes :<br />
<br />
{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| style='border-style: none;' | '''MyField'''<br />
| L'entrée principale affiche la liste de tous les myFields de votre environnement<br />
|- style="vertical-align:top;" <br />
| style='border-style: none;' | <br />
'''Nouveau myField'''<br /><br />
'''Nouveau myTab'''<br /><br />
'''Nouveau myField de liste'''<br /> <br />
'''Nouveau myMenu'''<br />
| Ces entrées afficheront la page de création d'un nouveau myField selon son type :<br />
* champ de fiche <br />
* onglet<br />
* champs de liste <br />
* menu <br />
|- style="vertical-align:top;" <br />
| style='border-style: none;' | '''Liste des éléments'''<br />
| Cette entrée affichera également la liste des myFields enregistrés sur votre environnement <br />
|- style="vertical-align:top;" <br />
| style='border-style: none;' | '''Droits d'accès aux éléments'''<br />
| Cette page vous permettra de paramétrer les habilitations des groupes d'utilisateurs aux fonctionnalités de MyFields, tabs et menus.<br />
|- style="vertical-align:top;"<br />
| style='border-style: none;' | '''Import XML'''<br />
| Cette entré affichera une page permettant de copier un fichier d'import d'un myfield au format XML.<br />
|}<br />
<br />
== Personnalisation d'un menu avec myField ==<br />
=== Création du myField ===<br />
La page de création d'un myField de type menu est accessible depuis le lien de menu secondaire '''Patas-tools > MyField > Nouveau myMenu.'''<br />
[[File:Myfield-Page-creation-menu.png|800px]]<br />
<br />
<br />
{| <br />
| style="vertical-align:top;width:50%;" |<br />
{| class="wikitable"<br />
| style="vertical-align:top;width:25%;" |<br />
Type de myField <br />
| style="vertical-align:top;" | <br />
le champ automatiquement rempli en fonction du lien de menu sur lequel vous avez cliqué pour afficher cette page de création (menu).<br />
|-<br />
| style="vertical-align:top;" |<br />
Libellé natif <br />
| style="vertical-align:top;" | <br />
saisissez ici le libellé natif du menu tel qu'il est affiché sur votre interface.<br />
|-<br />
| style="vertical-align:top;" |<br />
Type de menu <br />
| style="vertical-align:top;" | <br />
sélectionnez dans la liste déroulante le type de menu que vous souhaitez personnaliser selon qu'il s'agit d'un menu principal, d'un menu secondaire ou d'une entrée de menu secondaire.<br />
|-<br />
| style="vertical-align:top;" |<br />
Texte de remplacement <br />
| style="vertical-align:top;" | <br />
texte de votre choix qui sera affiché à la place du libellé natif.<br />
|-<br />
| style="vertical-align:top;" |<br />
Auteur<br />
| style="vertical-align:top;" | <br />
le nom du créateur du myField<br />
|}<br />
<br />
| style="vertical-align:top;" | <br />
{| class="wikitable"<br />
| style="vertical-align:top;width:25%;" |<br />
Affichage<br />
| style="vertical-align:top;" | <br />
*Visible : le champ sera affiché. Il s'agit du fonctionnement standard de Dolibarr.<br />
*Invisible : le champ sera absent des fiches<br />
*Caché : le champ sera absent des fiches mais pourra être affiché (Show/Hide).<br />
|-<br />
| style="vertical-align:top;" |<br />
Couleur de fond <br />
| style="vertical-align:top;" | <br />
utilisez le sélecteur de couleur pour déterminer la couleur de fond du champ.<br />
|-<br />
| style="vertical-align:top;" |<br />
Déplacement <br />
| style="vertical-align:top;" | <br />
saisissez -1 pour déplacer l'onglet du menu vers la gauche, 1 vers la droite.<br />
|-<br />
| style="vertical-align:top;" |<br />
URL de redirection <br />
| style="vertical-align:top;" | <br />
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.<br />
|}<br />
<br />
|}<br />
<br />
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)<br />
<br />
===Exemple de personnalisation d'un menu principal===<br />
Personnalisons le menu ''Accueil''.<br />
<br />
[[file:myfield-Param-menu-accueil.png|600px]]<br />
<br />
[[file:Myfield-menu-resultat.png|600px]]<br />
<br />
===Exemple de personnalisation d'un menu et d'une entrée de menu secondaire===<br />
Personnalisons le menu secondaire Propositions commerciales et l'entrée de menu secondaire Nouvelle proposition.<br />
<br />
[[file:myfield-Param-menu-secondaire.png|600px]] <br />
<br />
[[file:myfield-Param-entree-menu-secondaire.png|600px]] <br />
<br />
{{Note|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}}<br />
Suite à l'application de ces deux personnalisations, le menu secondaire devient :<br />
<br />
{| class="wikitable"<br />
| [[file:Myfield-entree-menu-secondaire.png]]<br />
| style="vertical-align:top;" |<br />
plutôt que<br />
| [[file:Myfield-menu-secondaire.png]] <br />
|}<br />
<br />
===Cas particulier de entrées de menu secondaire "Liste"===<br />
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 ('''#''') :<br />
<br />
{| class="wikitable"<br />
| style="vertical-align:top;" |<br />
''Ajoutez au libellé le menu secondaire : Propositions commerciales#Liste''<br />
<br />
[[file:myfield_Liste-param.png|600px]] <br />
<br />
| style="vertical-align:top;" | <br />
Pour obtenir <br />
<br />
[[file:myfield_Liste-param-menu.png]]<br />
|}<br />
<br />
==Personnalisation d'un onglet avec myField==<br />
===Création du myField===<br />
La page de création d'un myField est accessible depuis le lien de menu secondaire '''Patastools > MyField > Nouveau MyTab'''.<br />
<br />
[[file:myfield-Page-creation-onglet.png|600px]]<br />
<br />
{| <br />
| style="vertical-align:top;width:50%;" |<br />
{| class="wikitable"<br />
| style="vertical-align:top;width:25%;" |<br />
Type de myField <br />
| style="vertical-align:top;" | <br />
le champ automatiquement rempli en fonction du lien de menu sur lequel vous avez cliqué.<br />
|-<br />
| style="vertical-align:top;" |<br />
Libellé natif <br />
| style="vertical-align:top;" | <br />
saisissez ici le libellé natif du menu tel qu'il est affiché à l'écran.<br />
|-<br />
| style="vertical-align:top;" |<br />
Contexte d'activation <br />
| style="vertical-align:top;" | <br />
le contexte d'activation permet de limiter l'action des myFields sur les seuls champs des pages comportant le contexte indiqué ici. <br />
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.<br />
<br />
[[#Context_d.27activation|Liste des principaux contexte ]]<br />
<br />
|-<br />
| style="vertical-align:top;" |<br />
Texte de remplacement <br />
| style="vertical-align:top;" | <br />
texte de votre choix qui sera affiché à la place du libellé natif.<br />
|-<br />
| style="vertical-align:top;" |<br />
Auteur<br />
| style="vertical-align:top;" | <br />
le nom du créateur du myField<br />
<br />
|}<br />
<br />
| style="vertical-align:top;" | <br />
{| class="wikitable"<br />
| style="vertical-align:top;width:25%;" |<br />
Affichage<br />
| style="vertical-align:top;" | <br />
*Visible : le champ sera affiché. Il s'agit du fonctionnement standard de Dolibarr.<br />
*Invisible : le champ sera absent des fiches<br />
*Caché : le champ sera absent des fiches mais pourra être affiché (Show/Hide).<br />
<br />
|-<br />
| style="vertical-align:top;" |<br />
Couleur de fond <br />
| style="vertical-align:top;" | <br />
utilisez le sélecteur de couleur pour déterminer la couleur de fond du myField.<br />
|-<br />
| style="vertical-align:top;" |<br />
Déplacement <br />
| style="vertical-align:top;" | <br />
saisissez -1 pour déplacer l'onglet du menu vers la gauche, 1 vers la droite.<br />
|-<br />
| style="vertical-align:top;" |<br />
URL de redirection <br />
| style="vertical-align:top;" | <br />
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.<br />
|}<br />
<br />
|}<br />
<br />
<br />
{{Note|N'indiquez ici que la partie de l'URL suivant ''/htdocs/''}}<br />
Requête d'affichage : voir section Fonctionnement, ci-dessous<br />
<br />
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).<br />
<br />
===Exemple de personnalisation d'un onglet===<br />
Personnalisons l'onglet fiche des fiches des éléments.<br />
<br />
[[file:myfield-Param-onglet-fiche.png|600px]] <br />
<br />
La fiche devient alors <br />
<br />
[[file:myfield-Natif-fiche.png|600px]] <br />
{{Note|Si l'onglet est actif, la couleur sera affichée sur ses bords}}<br />
<br />
==Personnalisation d'un champ avec myField==<br />
===Création du myField===<br />
La page de création d'un myField est accessible depuis le lien de menu secondaire '''Patastools > MyField > Nouveau MyField'''.<br />
[[file:myfield-Page-creation.png|600px]] <br />
<br />
<br />
{| <br />
| style="vertical-align:top;width:50%;" |<br />
{| class="wikitable"<br />
| style="vertical-align:top;width:25%;" |<br />
Type de myField <br />
| style="vertical-align:top;" | <br />
le champ automatiquement rempli en fonction du lien de menu sur lequel vous avez cliqué.<br />
|-<br />
| style="vertical-align:top;" |<br />
Libellé natif <br />
| style="vertical-align:top;" | <br />
saisissez ici le libellé natif du champ tel qu'il est affiché à l'écran.<br />
|-<br />
| style="vertical-align:top;" |<br />
Contexte d'activation <br />
| style="vertical-align:top;" | <br />
le contexte d'activation permet de limiter l'action des myFields sur les seuls champs des pages comportant le contexte indiqué ici. <br />
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.<br />
<br />
[[#Context_d.27activation|Liste des principaux contexte ]]<br />
<br />
|-<br />
| style="vertical-align:top;" |<br />
Texte de remplacement <br />
| style="vertical-align:top;" | <br />
texte de votre choix qui sera affiché à la place du libellé natif.<br />
|-<br />
| style="vertical-align:top;" |<br />
Auteur<br />
| style="vertical-align:top;" | <br />
le nom du créateur du myField<br />
<br />
|}<br />
<br />
| style="vertical-align:top;" | <br />
{| class="wikitable"<br />
| style="vertical-align:top;width:25%;" |<br />
Affichage<br />
| style="vertical-align:top;" | <br />
*Visible : le champ sera affiché. Il s'agit du fonctionnement standard de Dolibarr.<br />
*Invisible : le champ sera absent des fiches<br />
*Caché : le champ sera absent des fiches mais pourra être affiché (Show/Hide).<br />
<br />
|-<br />
| style="vertical-align:top;" |<br />
Couleur de fond <br />
| style="vertical-align:top;" | <br />
utilisez le sélecteur de couleur pour déterminer la couleur de fond du myField.<br />
|-<br />
| style="vertical-align:top;" |<br />
Déplacement <br />
| style="vertical-align:top;" | <br />
saisissez 1 pour remonter d'un champ, -1 pour descendre. <br />
|-<br />
| style="vertical-align:top;" |<br />
Valeur par défaut <br />
| style="vertical-align:top;" | <br />
<br />
|-<br />
| style="vertical-align:top;" |<br />
Taille du champ de saisie <br />
| style="vertical-align:top;" | <br />
à définir selon vos besoins. Si laissé vide, la valeur native du champ est conservée.<br />
|-<br />
| style="vertical-align:top;" |<br />
Obligatoire : <br />
| style="vertical-align:top;" | <br />
cochez cette case pour rendre la saisie de valeurs dans le champ obligatoire pour enregistrer la création ou les modifications de la page<br />
{{Note|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|warn}}<br />
|-<br />
| style="vertical-align:top;" |<br />
Masque de saisie<br />
| style="vertical-align:top;" | <br />
le masque de saisie est paramétrable avec les caractères suivants :<br />
*a pour une lettre (A-Z,a-z)<br />
*9 pour un chiffre (0-9)<br />
*pour un caractère alphanumérique (A-Z,a-z,0-9)<br />
: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<br />
*UPPERCASE pour forcer la saisie en majuscule.<br />
|-<br />
| style="vertical-align:top;" |<br />
Requête d'affichage<br />
| style="vertical-align:top;" | <br />
Voir section Fonctionnement<br />
|}<br />
<br />
|}<br />
<br />
{{Note|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}}<br />
<br />
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).<br />
<br />
===Exemple de personnalisation d'un champ===<br />
Personnalisons le champ ''Id. prof. 2 (SIRET)'' des fiches de tiers.<br />
<br />
[[file:myfield_Param-champ.png|600px]] <br />
<br />
Le champ a été paramétré en tant qu'invisible. 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 :<br />
<br />
[[file:Myfield-champ.png|600px]] <br />
<br />
En édition du champ, le masque sera activé et ne permettra que la saisie de chiffres (masque saisi 999 999 999 99999) et sa complétion vérifiée (rendu obligatoire) pour empêcher l'enregistrement de la page sans qu'il ne soit rempli :<br />
<br />
[[file:myfield-Masque.png]]<br />
<br />
==Personnalisation d'un myField de liste==<br />
===Création du myField===<br />
Les mylist de liste permettent de limiter l'affichage de champs.<br />
Masquons le champ Tiers de la liste des contrats avec le myField suivant :<br />
[[file:Myfield-masque-tiers.png|600px]]<br />
<br />
[[#Context_d.27activation|Liste des principaux contexte ]]<br />
<br />
La liste ne contient plus le champs Tiers, et il n'est pas possible de le sélectionner dans le sélecteur de champs.<br />
<br />
[[file:myfield_Liste-contrats.png|600px]]<br />
<br />
{{Note|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 !}}<br />
<br />
=Requête SQL de traitement=<br />
==Fonctionnement==<br />
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.<br />
<br />
Saisissez ici la requête d'affichage applicable au champs sur l'exemple suivant :<br />
<br />
''#SEL# if llx_product.type=1 FROM llx_product WHERE rowid=#ID#''<br />
<br />
==Exemple==<br />
Avec le myfield suivante :<br />
<br />
[[file:myfield_Creation_requete.png|600px]] <br />
<br />
On obtient la fiche suivante sur un produit :<br />
<br />
[[file:myfield_Creation_requete_result.png|600px]] <br />
<br />
Tandis que sur la fiche d'un service :<br />
<br />
[[file:myfield_Creation_requete-fiche.png|600px]]<br />
<br />
=Paramétrage des droits d'accès aux myFields, tabs et menus=<br />
==Configuration des droits d'accès==<br />
En tant qu'utilisateur administrateur, tous les myFields vous sont visibles.<br />
{{Note|Sur la page d'accueil du module MyField, l'application des personnalisations est désactivée}}<br />
<br />
Si vous n'avez pas défini de groupes utilisateurs, les myfields sont affichés sur les interfaces de tous les utilsiateurs.<br />
<br />
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 :<br />
<br />
[[file:myfield-Droits-d-acces.png|600px]]<br />
<br />
Il existe quatre droits d'accès :<br />
<br />
{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[File:lecture-off.png]] Bloqué en accès<br />
[[file:lecture-on.png]] Accès en lecture<br />
| [[file:modif-of.png]] Bloqué en modification<br />
[[file:modif-on.png]] Accès en modification<br />
|}<br />
<br />
==Comportement selon les droits d'accès==<br />
===Bloqué en accès ([[file:lecture-off.png]]) ===<br />
<br />
{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[file:myfield-User-lecture-.png|600px]]<br />
| Le champ sera caché aux utilisateurs du groupe. Ils ne pourront pas l'afficher<br />
<br />
le lien ''Show/Hide'' ne sera pas actif<br />
|}<br />
===Accès en lecture mais bloqué en modification ([[file:lecture-on.png]][[file:modif-of.png]]) ===<br />
{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[file:myfield-User-lecture-.png|600px]]<br />
| Les utilisateurs du groupe pourront afficher le champ, mais ne pourront pas en modifier le contenu.<br />
|}<br />
===Accès en lecture et Accès en modification ([[file:lecture-on.png]][[file:modif-on.png]]) ===<br />
{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[file:myfield-User-lecture+-modif+.png|600px]]<br />
| <br />
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,...)<br />
|}<br />
<br />
=Autres fonctionnalités=<br />
==Import des myField==<br />
Il est possible d'enregistrer une liste de myfields et leurs paramétrages en important un fichier XML.<br />
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'''.<br />
{{Note|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|warn}}<br />
Paramétrer ensuite les droits d'accès des utilisateurs au myField.<br />
<br />
==Contexte d'activation==<br />
Une liste de tous les contextes disponible est présent sur le wiki de dolibarr.<br />
<br />
:{| class="wikitable"<br />
|- style="background-color:orange; font-weight:bold;"<br />
| Fiche<br />
| Contexte<br />
|-<br />
| Adhérent<br />
| membertypecard<br />
|-<br />
| Catégories<br />
| categorycard<br />
|-<br />
| Commandes<br />
| ordercard<br />
|-<br />
| Commande fournisseur<br />
| ordersuppliercard<br />
|-<br />
| Contact<br />
| contactcard<br />
|-<br />
| Contrat<br />
| contractcard<br />
|-<br />
| Don<br />
| doncard<br />
|-<br />
| Entrepôt<br />
| warehousecard<br />
|-<br />
| Expédition<br />
| expeditioncard<br />
|-<br />
| Facture client<br />
| invoicecard<br />
|-<br />
| Facture fournisseur<br />
| suppliercard<br />
|-<br />
| Intervention<br />
| interventioncard<br />
|-<br />
| Livraison<br />
| deliverycard<br />
|-<br />
| Note de frais<br />
| tripandexpensecard<br />
|-<br />
| Produit<br />
| productcard<br />
|-<br />
| Projet<br />
| projectcard<br />
|-<br />
| Proposition commerciale<br />
| propalcard<br />
|-<br />
| Règlement client<br />
| paiementcard<br />
|-<br />
| Règlement fournisseur<br />
| paymentsupplier<br />
|-<br />
| Salaire<br />
| salarycard<br />
|-<br />
| Tache<br />
| projecttaskcard<br />
|-<br />
| Tiers<br />
| thirdpartycard<br />
|-<br />
| Utilisateur<br />
| usercard<br />
|}<br />
<br />
=Questions fréquentes=<br />
== Général ==<br />
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.<br />
Si vous rencontrez une autre erreur que celles décrites ci-dessous lors de l'utilisation de ce module :<br />
#Désactivez et réactivez le module,<br />
#Vérifier sur le ChangeLog si une nouvelle version a été publiée,<br />
#Ré-installez/mettez à jour le module,<br />
#Vérifiez que le remplacement de fichiers natifs de Dolibarr ne soit pas nécessaire au bon fonctionnement du module.<br />
#Vérifiez qu'aucune incompatibilité avec un autre module ne soit indiquée. Le cas échéant, suivez nos préconisations.<br />
<br />
Si, malgré ces manipulations, l'erreur persiste, contactez-nous en utilisant le formulaire dédié (http://docs.patas-monkey.com/support/).<br />
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.<br />
<br />
== Affichage d'un message en haut des pages de Dolibarr==<br />
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<br />
(voir Configuration).<br />
<br />
[[file:Myfield-Message-contexte.png]]<br />
<br />
==Message erreur d'ordonnancement==<br />
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.<br />
<br />
Le message d'erreur s'affiche en bas de page et est le suivant<br />
<br />
[[file:myfield_Erreur-dbclose-message.png]] <br />
<br />
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''.<br />
<br />
L'erreur vient de l'inversion des lignes ''llxFooter();'' et ''$db->close();'' en fin de fichier.<br />
<br />
{| class="wikitable" style="width:60%;" <br />
|- style="vertical-align:top;" <br />
| Modifiez le code de la page pour obtenir <br />
[[file:Erreur-dbclose-correction.png]]<br />
| au lieu de<br />
<br />
[[file:Erreur-dbclose.png]]<br />
|}</div>Nomihttps://wiki.patas-monkey.com/index.php?title=MyField&diff=904MyField2021-03-29T14:08:39Z<p>Nomi : /* Création du myField */</p>
<hr />
<div>{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[File:Myfield-250x250.png]]<br />
| Ce Module permet de personnaliser les libellés des menus, onglets, champs des fiches et listes de Dolibarr.<br />
Vous pouvez choisir vous-même le libellé de vos menus, le libellé des onglets et champs des fiches et listes<br />
|}<br />
<br />
== Présentation ==<br />
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...<br />
<br />
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.<br />
<br />
MyField permet encore de cacher des menus à des groupes d'utilisateurs et d'en modifier l'URL de destination.<br />
<br />
== Paramétrage ==<br />
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 [[file:doli-setup.png]] ou l'icône [[file:doli-setup-old.png]] en bout de ligne.<br />
<br />
[[file:myfield_Configuration.png|600px]]<br />
<br />
=== Page de configuration du module ===<br />
==== Activation du contexte pour le développement====<br />
MyField permet d'afficher sur certaines pages de Dolibarr les contextes utilisables pour limiter les actions de personnalisations des myFields.<br />
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.<br />
Paramétrer l'affichage des contexte sur vos pages vous permettra de les identifier pour paramétrer au mieux vos myfields.<br />
<br />
{| class="wikitable"<br />
| [[file:myfield-Message-contexte.png]]<br />
| style="vertical-align:top;" | <br />
L'activation de l'affichage des contextes se traduit par des messages du type ci-contre<br />
|} <br />
<br />
==== Droits des administrateurs====<br />
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.<br />
<br />
==== Remplacement des boutons natifs====<br />
MyField permet le remplacement des boutons standards de Dolibarr par des icônes.<br />
{| class="wikitable"<br />
| [[file:myfield_Button-replace.png|300px]]<br />
| au lieu de <br />
| [[file:myfield_Button-standard.png|500px]]<br />
|}<br />
<br />
==== Information de support ==== <br />
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 :<br />
[[file:Myfield_Technical-information.png]] <br />
<br />
===Permissions===<br />
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 ([[file:tick.png]]).<br />
<br />
====Permissions utilisateurs et groupes====<br />
{| class="wikitable"<br />
| [[file:myfield-Permissions-utilisateur.png|600px]]<br />
| style="vertical-align:top;" | <br />
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<br />
|}<br />
<br />
====Permissions par défaut====<br />
{| class="wikitable"<br />
| [[file:myfield-Permissions-defaut.png|600px]]<br />
| style="vertical-align:top;" | <br />
Les permissions par défaut ('''Accueil > Configuration > Sécurité > Permissions par défaut'''), accordées à tout utilisateur créé ultérieurement à l'installation du module, si il n'est pas ajouté à un groupe, sont les suivantes<br />
|}<br />
<br />
== Démarrage ==<br />
<br />
Les fonctionnalités de MyField sont accessibles depuis l'onglet de menu principal Patastools.<br />
Votre menu secondaire présente alors les entrées de menu suivantes :<br />
<br />
{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| style='border-style: none;' | '''MyField'''<br />
| L'entrée principale affiche la liste de tous les myFields de votre environnement<br />
|- style="vertical-align:top;" <br />
| style='border-style: none;' | <br />
'''Nouveau myField'''<br /><br />
'''Nouveau myTab'''<br /><br />
'''Nouveau myField de liste'''<br /> <br />
'''Nouveau myMenu'''<br />
| Ces entrées afficheront la page de création d'un nouveau myField selon son type :<br />
* champ de fiche <br />
* onglet<br />
* champs de liste <br />
* menu <br />
|- style="vertical-align:top;" <br />
| style='border-style: none;' | '''Liste des éléments'''<br />
| Cette entrée affichera également la liste des myFields enregistrés sur votre environnement <br />
|- style="vertical-align:top;" <br />
| style='border-style: none;' | '''Droits d'accès aux éléments'''<br />
| Cette page vous permettra de paramétrer les habilitations des groupes d'utilisateurs aux fonctionnalités de MyFields, tabs et menus.<br />
|- style="vertical-align:top;"<br />
| style='border-style: none;' | '''Import XML'''<br />
| Cette entré affichera une page permettant de copier un fichier d'import d'un myfield au format XML.<br />
|}<br />
<br />
== Personnalisation d'un menu avec myField ==<br />
=== Création du myField ===<br />
La page de création d'un myField de type menu est accessible depuis le lien de menu secondaire '''Patas-tools > MyField > Nouveau myMenu.'''<br />
[[File:Myfield-Page-creation-menu.png|800px]]<br />
<br />
<br />
{| <br />
| style="vertical-align:top;width:50%;" |<br />
{| class="wikitable"<br />
| style="vertical-align:top;width:25%;" |<br />
Type de myField <br />
| style="vertical-align:top;" | <br />
le champ automatiquement rempli en fonction du lien de menu sur lequel vous avez cliqué pour afficher cette page de création (menu).<br />
|-<br />
| style="vertical-align:top;" |<br />
Libellé natif <br />
| style="vertical-align:top;" | <br />
saisissez ici le libellé natif du menu tel qu'il est affiché sur votre interface.<br />
|-<br />
| style="vertical-align:top;" |<br />
Type de menu <br />
| style="vertical-align:top;" | <br />
sélectionnez dans la liste déroulante le type de menu que vous souhaitez personnaliser selon qu'il s'agit d'un menu principal, d'un menu secondaire ou d'une entrée de menu secondaire.<br />
|-<br />
| style="vertical-align:top;" |<br />
Texte de remplacement <br />
| style="vertical-align:top;" | <br />
texte de votre choix qui sera affiché à la place du libellé natif.<br />
|-<br />
| style="vertical-align:top;" |<br />
Auteur<br />
| style="vertical-align:top;" | <br />
le nom du créateur du myField<br />
|}<br />
<br />
| style="vertical-align:top;" | <br />
{| class="wikitable"<br />
| style="vertical-align:top;width:25%;" |<br />
Affichage<br />
| style="vertical-align:top;" | <br />
*Visible : le champ sera affiché. Il s'agit du fonctionnement standard de Dolibarr.<br />
*Invisible : le champ sera absent des fiches<br />
*Caché : le champ sera absent des fiches mais pourra être affiché (Show/Hide).<br />
|-<br />
| style="vertical-align:top;" |<br />
Couleur de fond <br />
| style="vertical-align:top;" | <br />
utilisez le sélecteur de couleur pour déterminer la couleur de fond du champ.<br />
|-<br />
| style="vertical-align:top;" |<br />
Déplacement <br />
| style="vertical-align:top;" | <br />
saisissez -1 pour déplacer l'onglet du menu vers la gauche, 1 vers la droite.<br />
|-<br />
| style="vertical-align:top;" |<br />
URL de redirection <br />
| style="vertical-align:top;" | <br />
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.<br />
|}<br />
<br />
|}<br />
<br />
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)<br />
<br />
===Exemple de personnalisation d'un menu principal===<br />
Personnalisons le menu ''Accueil''.<br />
<br />
[[file:myfield-Param-menu-accueil.png|600px]]<br />
<br />
[[file:Myfield-menu-resultat.png|600px]]<br />
<br />
===Exemple de personnalisation d'un menu et d'une entrée de menu secondaire===<br />
Personnalisons le menu secondaire Propositions commerciales et l'entrée de menu secondaire Nouvelle proposition.<br />
<br />
[[file:myfield-Param-menu-secondaire.png|600px]] <br />
<br />
[[file:myfield-Param-entree-menu-secondaire.png|600px]] <br />
<br />
{{Note|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}}<br />
Suite à l'application de ces deux personnalisations, le menu secondaire devient :<br />
<br />
{| class="wikitable"<br />
| [[file:Myfield-entree-menu-secondaire.png]]<br />
| style="vertical-align:top;" |<br />
plutôt que<br />
| [[file:Myfield-menu-secondaire.png]] <br />
|}<br />
<br />
===Cas particulier de entrées de menu secondaire "Liste"===<br />
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 ('''#''') :<br />
<br />
{| class="wikitable"<br />
| style="vertical-align:top;" |<br />
''Ajoutez au libellé le menu secondaire : Propositions commerciales#Liste''<br />
<br />
[[file:myfield_Liste-param.png|600px]] <br />
<br />
| style="vertical-align:top;" | <br />
Pour obtenir <br />
<br />
[[file:myfield_Liste-param-menu.png]]<br />
|}<br />
<br />
==Personnalisation d'un onglet avec myField==<br />
===Création du myField===<br />
La page de création d'un myField est accessible depuis le lien de menu secondaire '''Patastools > MyField > Nouveau MyTab'''.<br />
<br />
[[file:myfield-Page-creation-onglet.png|600px]]<br />
<br />
{| <br />
| style="vertical-align:top;width:50%;" |<br />
{| class="wikitable"<br />
| style="vertical-align:top;width:25%;" |<br />
Type de myField <br />
| style="vertical-align:top;" | <br />
le champ automatiquement rempli en fonction du lien de menu sur lequel vous avez cliqué.<br />
|-<br />
| style="vertical-align:top;" |<br />
Libellé natif <br />
| style="vertical-align:top;" | <br />
saisissez ici le libellé natif du menu tel qu'il est affiché à l'écran.<br />
|-<br />
| style="vertical-align:top;" |<br />
Contexte d'activation <br />
| style="vertical-align:top;" | <br />
le contexte d'activation permet de limiter l'action des myFields sur les seuls champs des pages comportant le contexte indiqué ici. <br />
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.<br />
<br />
[[#Context_d.27activation|Liste des principaux contexte ]]<br />
<br />
|-<br />
| style="vertical-align:top;" |<br />
Texte de remplacement <br />
| style="vertical-align:top;" | <br />
texte de votre choix qui sera affiché à la place du libellé natif.<br />
|-<br />
| style="vertical-align:top;" |<br />
Auteur<br />
| style="vertical-align:top;" | <br />
le nom du créateur du myField<br />
<br />
|}<br />
<br />
| style="vertical-align:top;" | <br />
{| class="wikitable"<br />
| style="vertical-align:top;width:25%;" |<br />
Affichage<br />
| style="vertical-align:top;" | <br />
*Visible : le champ sera affiché. Il s'agit du fonctionnement standard de Dolibarr.<br />
*Invisible : le champ sera absent des fiches<br />
*Caché : le champ sera absent des fiches mais pourra être affiché (Show/Hide).<br />
<br />
|-<br />
| style="vertical-align:top;" |<br />
Couleur de fond <br />
| style="vertical-align:top;" | <br />
utilisez le sélecteur de couleur pour déterminer la couleur de fond du myField.<br />
|-<br />
| style="vertical-align:top;" |<br />
Déplacement <br />
| style="vertical-align:top;" | <br />
saisissez -1 pour déplacer l'onglet du menu vers la gauche, 1 vers la droite.<br />
|-<br />
| style="vertical-align:top;" |<br />
URL de redirection <br />
| style="vertical-align:top;" | <br />
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.<br />
|}<br />
<br />
|}<br />
<br />
<br />
{{Note|N'indiquez ici que la partie de l'URL suivant ''/htdocs/''}}<br />
Requête d'affichage : voir section Fonctionnement, ci-dessous<br />
<br />
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).<br />
<br />
===Exemple de personnalisation d'un onglet===<br />
Personnalisons l'onglet fiche des fiches des éléments.<br />
<br />
[[file:myfield-Param-onglet-fiche.png|600px]] <br />
<br />
La fiche devient alors <br />
<br />
[[file:myfield-Natif-fiche.png|600px]] <br />
{{Note|Si l'onglet est actif, la couleur sera affichée sur ses bords}}<br />
<br />
==Personnalisation d'un champ avec myField==<br />
===Création du myField===<br />
La page de création d'un myField est accessible depuis le lien de menu secondaire '''Patastools > MyField > Nouveau MyField'''.<br />
[[file:myfield-Page-creation.png|600px]] <br />
<br />
<br />
{| <br />
| style="vertical-align:top;width:50%;" |<br />
{| class="wikitable"<br />
| style="vertical-align:top;width:25%;" |<br />
Type de myField <br />
| style="vertical-align:top;" | <br />
le champ automatiquement rempli en fonction du lien de menu sur lequel vous avez cliqué.<br />
|-<br />
| style="vertical-align:top;" |<br />
Libellé natif <br />
| style="vertical-align:top;" | <br />
saisissez ici le libellé natif du champ tel qu'il est affiché à l'écran.<br />
|-<br />
| style="vertical-align:top;" |<br />
Contexte d'activation <br />
| style="vertical-align:top;" | <br />
le contexte d'activation permet de limiter l'action des myFields sur les seuls champs des pages comportant le contexte indiqué ici. <br />
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.<br />
<br />
[[#Context_d.27activation|Liste des principaux contexte ]]<br />
<br />
|-<br />
| style="vertical-align:top;" |<br />
Texte de remplacement <br />
| style="vertical-align:top;" | <br />
texte de votre choix qui sera affiché à la place du libellé natif.<br />
|-<br />
| style="vertical-align:top;" |<br />
Auteur<br />
| style="vertical-align:top;" | <br />
le nom du créateur du myField<br />
<br />
|}<br />
<br />
| style="vertical-align:top;" | <br />
{| class="wikitable"<br />
| style="vertical-align:top;width:25%;" |<br />
Affichage<br />
| style="vertical-align:top;" | <br />
*Visible : le champ sera affiché. Il s'agit du fonctionnement standard de Dolibarr.<br />
*Invisible : le champ sera absent des fiches<br />
*Caché : le champ sera absent des fiches mais pourra être affiché (Show/Hide).<br />
<br />
|-<br />
| style="vertical-align:top;" |<br />
Couleur de fond <br />
| style="vertical-align:top;" | <br />
utilisez le sélecteur de couleur pour déterminer la couleur de fond du myField.<br />
|-<br />
| style="vertical-align:top;" |<br />
Déplacement <br />
| style="vertical-align:top;" | <br />
saisissez 1 pour remonter d'un champ, -1 pour descendre. <br />
|-<br />
| style="vertical-align:top;" |<br />
Valeur par défaut <br />
| style="vertical-align:top;" | <br />
<br />
|-<br />
| style="vertical-align:top;" |<br />
Taille du champ de saisie <br />
| style="vertical-align:top;" | <br />
à définir selon vos besoins. Si laissé vide, la valeur native du champ est conservée.<br />
|-<br />
| style="vertical-align:top;" |<br />
Obligatoire : <br />
| style="vertical-align:top;" | <br />
cochez cette case pour rendre la saisie de valeurs dans le champ obligatoire pour enregistrer la création ou les modifications de la page<br />
{{Note|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|warn}}<br />
{{Note|N'indiquez ici que la partie de l'URL suivant ''/htdocs/''}}<br />
|-<br />
| style="vertical-align:top;" |<br />
Masque de saisie<br />
| style="vertical-align:top;" | <br />
le masque de saisie est paramétrable avec les caractères suivants :<br />
*a pour une lettre (A-Z,a-z)<br />
*9 pour un chiffre (0-9)<br />
*pour un caractère alphanumérique (A-Z,a-z,0-9)<br />
: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<br />
*UPPERCASE pour forcer la saisie en majuscule.<br />
|-<br />
| style="vertical-align:top;" |<br />
Requête d'affichage<br />
| style="vertical-align:top;" | <br />
Voir section Fonctionnement<br />
|}<br />
<br />
|}<br />
<br />
{{Note|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}}<br />
<br />
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).<br />
<br />
===Exemple de personnalisation d'un champ===<br />
Personnalisons le champ ''Id. prof. 2 (SIRET)'' des fiches de tiers.<br />
<br />
[[file:myfield_Param-champ.png|600px]] <br />
<br />
Le champ a été paramétré en tant qu'invisible. 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 :<br />
<br />
[[file:Myfield-champ.png|600px]] <br />
<br />
En édition du champ, le masque sera activé et ne permettra que la saisie de chiffres (masque saisi 999 999 999 99999) et sa complétion vérifiée (rendu obligatoire) pour empêcher l'enregistrement de la page sans qu'il ne soit rempli :<br />
<br />
[[file:myfield-Masque.png]]<br />
<br />
==Personnalisation d'un myField de liste==<br />
===Création du myField===<br />
Les mylist de liste permettent de limiter l'affichage de champs.<br />
Masquons le champ Tiers de la liste des contrats avec le myField suivant :<br />
[[file:Myfield-masque-tiers.png|600px]]<br />
<br />
[[#Context_d.27activation|Liste des principaux contexte ]]<br />
<br />
La liste ne contient plus le champs Tiers, et il n'est pas possible de le sélectionner dans le sélecteur de champs.<br />
<br />
[[file:myfield_Liste-contrats.png|600px]]<br />
<br />
{{Note|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 !}}<br />
<br />
=Requête SQL de traitement=<br />
==Fonctionnement==<br />
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.<br />
<br />
Saisissez ici la requête d'affichage applicable au champs sur l'exemple suivant :<br />
<br />
''#SEL# if llx_product.type=1 FROM llx_product WHERE rowid=#ID#''<br />
<br />
==Exemple==<br />
Avec le myfield suivante :<br />
<br />
[[file:myfield_Creation_requete.png|600px]] <br />
<br />
On obtient la fiche suivante sur un produit :<br />
<br />
[[file:myfield_Creation_requete_result.png|600px]] <br />
<br />
Tandis que sur la fiche d'un service :<br />
<br />
[[file:myfield_Creation_requete-fiche.png|600px]]<br />
<br />
=Paramétrage des droits d'accès aux myFields, tabs et menus=<br />
==Configuration des droits d'accès==<br />
En tant qu'utilisateur administrateur, tous les myFields vous sont visibles.<br />
{{Note|Sur la page d'accueil du module MyField, l'application des personnalisations est désactivée}}<br />
<br />
Si vous n'avez pas défini de groupes utilisateurs, les myfields sont affichés sur les interfaces de tous les utilsiateurs.<br />
<br />
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 :<br />
<br />
[[file:myfield-Droits-d-acces.png|600px]]<br />
<br />
Il existe quatre droits d'accès :<br />
<br />
{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[File:lecture-off.png]] Bloqué en accès<br />
[[file:lecture-on.png]] Accès en lecture<br />
| [[file:modif-of.png]] Bloqué en modification<br />
[[file:modif-on.png]] Accès en modification<br />
|}<br />
<br />
==Comportement selon les droits d'accès==<br />
===Bloqué en accès ([[file:lecture-off.png]]) ===<br />
<br />
{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[file:myfield-User-lecture-.png|600px]]<br />
| Le champ sera caché aux utilisateurs du groupe. Ils ne pourront pas l'afficher<br />
<br />
le lien ''Show/Hide'' ne sera pas actif<br />
|}<br />
===Accès en lecture mais bloqué en modification ([[file:lecture-on.png]][[file:modif-of.png]]) ===<br />
{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[file:myfield-User-lecture-.png|600px]]<br />
| Les utilisateurs du groupe pourront afficher le champ, mais ne pourront pas en modifier le contenu.<br />
|}<br />
===Accès en lecture et Accès en modification ([[file:lecture-on.png]][[file:modif-on.png]]) ===<br />
{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[file:myfield-User-lecture+-modif+.png|600px]]<br />
| <br />
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,...)<br />
|}<br />
<br />
=Autres fonctionnalités=<br />
==Import des myField==<br />
Il est possible d'enregistrer une liste de myfields et leurs paramétrages en important un fichier XML.<br />
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'''.<br />
{{Note|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|warn}}<br />
Paramétrer ensuite les droits d'accès des utilisateurs au myField.<br />
<br />
==Contexte d'activation==<br />
Une liste de tous les contextes disponible est présent sur le wiki de dolibarr.<br />
<br />
:{| class="wikitable"<br />
|- style="background-color:orange; font-weight:bold;"<br />
| Fiche<br />
| Contexte<br />
|-<br />
| Adhérent<br />
| membertypecard<br />
|-<br />
| Catégories<br />
| categorycard<br />
|-<br />
| Commandes<br />
| ordercard<br />
|-<br />
| Commande fournisseur<br />
| ordersuppliercard<br />
|-<br />
| Contact<br />
| contactcard<br />
|-<br />
| Contrat<br />
| contractcard<br />
|-<br />
| Don<br />
| doncard<br />
|-<br />
| Entrepôt<br />
| warehousecard<br />
|-<br />
| Expédition<br />
| expeditioncard<br />
|-<br />
| Facture client<br />
| invoicecard<br />
|-<br />
| Facture fournisseur<br />
| suppliercard<br />
|-<br />
| Intervention<br />
| interventioncard<br />
|-<br />
| Livraison<br />
| deliverycard<br />
|-<br />
| Note de frais<br />
| tripandexpensecard<br />
|-<br />
| Produit<br />
| productcard<br />
|-<br />
| Projet<br />
| projectcard<br />
|-<br />
| Proposition commerciale<br />
| propalcard<br />
|-<br />
| Règlement client<br />
| paiementcard<br />
|-<br />
| Règlement fournisseur<br />
| paymentsupplier<br />
|-<br />
| Salaire<br />
| salarycard<br />
|-<br />
| Tache<br />
| projecttaskcard<br />
|-<br />
| Tiers<br />
| thirdpartycard<br />
|-<br />
| Utilisateur<br />
| usercard<br />
|}<br />
<br />
=Questions fréquentes=<br />
== Général ==<br />
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.<br />
Si vous rencontrez une autre erreur que celles décrites ci-dessous lors de l'utilisation de ce module :<br />
#Désactivez et réactivez le module,<br />
#Vérifier sur le ChangeLog si une nouvelle version a été publiée,<br />
#Ré-installez/mettez à jour le module,<br />
#Vérifiez que le remplacement de fichiers natifs de Dolibarr ne soit pas nécessaire au bon fonctionnement du module.<br />
#Vérifiez qu'aucune incompatibilité avec un autre module ne soit indiquée. Le cas échéant, suivez nos préconisations.<br />
<br />
Si, malgré ces manipulations, l'erreur persiste, contactez-nous en utilisant le formulaire dédié (http://docs.patas-monkey.com/support/).<br />
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.<br />
<br />
== Affichage d'un message en haut des pages de Dolibarr==<br />
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<br />
(voir Configuration).<br />
<br />
[[file:Myfield-Message-contexte.png]]<br />
<br />
==Message erreur d'ordonnancement==<br />
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.<br />
<br />
Le message d'erreur s'affiche en bas de page et est le suivant<br />
<br />
[[file:myfield_Erreur-dbclose-message.png]] <br />
<br />
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''.<br />
<br />
L'erreur vient de l'inversion des lignes ''llxFooter();'' et ''$db->close();'' en fin de fichier.<br />
<br />
{| class="wikitable" style="width:60%;" <br />
|- style="vertical-align:top;" <br />
| Modifiez le code de la page pour obtenir <br />
[[file:Erreur-dbclose-correction.png]]<br />
| au lieu de<br />
<br />
[[file:Erreur-dbclose.png]]<br />
|}</div>Nomihttps://wiki.patas-monkey.com/index.php?title=MyField&diff=898MyField2021-03-29T13:46:30Z<p>Nomi : /* Création du myField */</p>
<hr />
<div>{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[File:Myfield-250x250.png]]<br />
| Ce Module permet de personnaliser les libellés des menus, onglets, champs des fiches et listes de Dolibarr.<br />
Vous pouvez choisir vous-même le libellé de vos menus, le libellé des onglets et champs des fiches et listes<br />
|}<br />
<br />
== Présentation ==<br />
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...<br />
<br />
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.<br />
<br />
MyField permet encore de cacher des menus à des groupes d'utilisateurs et d'en modifier l'URL de destination.<br />
<br />
== Paramétrage ==<br />
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 [[file:doli-setup.png]] ou l'icône [[file:doli-setup-old.png]] en bout de ligne.<br />
<br />
[[file:myfield_Configuration.png|600px]]<br />
<br />
=== Page de configuration du module ===<br />
==== Activation du contexte pour le développement====<br />
MyField permet d'afficher sur certaines pages de Dolibarr les contextes utilisables pour limiter les actions de personnalisations des myFields.<br />
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.<br />
Paramétrer l'affichage des contexte sur vos pages vous permettra de les identifier pour paramétrer au mieux vos myfields.<br />
<br />
{| class="wikitable"<br />
| [[file:myfield-Message-contexte.png]]<br />
| style="vertical-align:top;" | <br />
L'activation de l'affichage des contextes se traduit par des messages du type ci-contre<br />
|} <br />
<br />
==== Droits des administrateurs====<br />
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.<br />
<br />
==== Remplacement des boutons natifs====<br />
MyField permet le remplacement des boutons standards de Dolibarr par des icônes.<br />
{| class="wikitable"<br />
| [[file:myfield_Button-replace.png|300px]]<br />
| au lieu de <br />
| [[file:myfield_Button-standard.png|500px]]<br />
|}<br />
<br />
==== Information de support ==== <br />
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 :<br />
[[file:Myfield_Technical-information.png]] <br />
<br />
===Permissions===<br />
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 ([[file:tick.png]]).<br />
<br />
====Permissions utilisateurs et groupes====<br />
{| class="wikitable"<br />
| [[file:myfield-Permissions-utilisateur.png|600px]]<br />
| style="vertical-align:top;" | <br />
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<br />
|}<br />
<br />
====Permissions par défaut====<br />
{| class="wikitable"<br />
| [[file:myfield-Permissions-defaut.png|600px]]<br />
| style="vertical-align:top;" | <br />
Les permissions par défaut ('''Accueil > Configuration > Sécurité > Permissions par défaut'''), accordées à tout utilisateur créé ultérieurement à l'installation du module, si il n'est pas ajouté à un groupe, sont les suivantes<br />
|}<br />
<br />
== Démarrage ==<br />
<br />
Les fonctionnalités de MyField sont accessibles depuis l'onglet de menu principal Patastools.<br />
Votre menu secondaire présente alors les entrées de menu suivantes :<br />
<br />
{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| style='border-style: none;' | '''MyField'''<br />
| L'entrée principale affiche la liste de tous les myFields de votre environnement<br />
|- style="vertical-align:top;" <br />
| style='border-style: none;' | <br />
'''Nouveau myField'''<br /><br />
'''Nouveau myTab'''<br /><br />
'''Nouveau myField de liste'''<br /> <br />
'''Nouveau myMenu'''<br />
| Ces entrées afficheront la page de création d'un nouveau myField selon son type :<br />
* champ de fiche <br />
* onglet<br />
* champs de liste <br />
* menu <br />
|- style="vertical-align:top;" <br />
| style='border-style: none;' | '''Liste des éléments'''<br />
| Cette entrée affichera également la liste des myFields enregistrés sur votre environnement <br />
|- style="vertical-align:top;" <br />
| style='border-style: none;' | '''Droits d'accès aux éléments'''<br />
| Cette page vous permettra de paramétrer les habilitations des groupes d'utilisateurs aux fonctionnalités de MyFields, tabs et menus.<br />
|- style="vertical-align:top;"<br />
| style='border-style: none;' | '''Import XML'''<br />
| Cette entré affichera une page permettant de copier un fichier d'import d'un myfield au format XML.<br />
|}<br />
<br />
== Personnalisation d'un menu avec myField ==<br />
=== Création du myField ===<br />
La page de création d'un myField de type menu est accessible depuis le lien de menu secondaire '''Patas-tools > MyField > Nouveau myMenu.'''<br />
[[File:Myfield-Page-creation-menu.png|800px]]<br />
<br />
<br />
{| <br />
| style="vertical-align:top;width:50%;" |<br />
{| class="wikitable"<br />
| style="vertical-align:top;width:25%;" |<br />
Type de myField <br />
| style="vertical-align:top;" | <br />
le champ automatiquement rempli en fonction du lien de menu sur lequel vous avez cliqué pour afficher cette page de création (menu).<br />
|-<br />
| style="vertical-align:top;" |<br />
Libellé natif <br />
| style="vertical-align:top;" | <br />
saisissez ici le libellé natif du menu tel qu'il est affiché sur votre interface.<br />
|-<br />
| style="vertical-align:top;" |<br />
Type de menu <br />
| style="vertical-align:top;" | <br />
sélectionnez dans la liste déroulante le type de menu que vous souhaitez personnaliser selon qu'il s'agit d'un menu principal, d'un menu secondaire ou d'une entrée de menu secondaire.<br />
|-<br />
| style="vertical-align:top;" |<br />
Texte de remplacement <br />
| style="vertical-align:top;" | <br />
texte de votre choix qui sera affiché à la place du libellé natif.<br />
|-<br />
| style="vertical-align:top;" |<br />
Auteur<br />
| style="vertical-align:top;" | <br />
le nom du créateur du myField<br />
|}<br />
<br />
| style="vertical-align:top;" | <br />
{| class="wikitable"<br />
| style="vertical-align:top;width:25%;" |<br />
Affichage<br />
| style="vertical-align:top;" | <br />
*Visible : le champ sera affiché. Il s'agit du fonctionnement standard de Dolibarr.<br />
*Invisible : le champ sera absent des fiches<br />
*Caché : le champ sera absent des fiches mais pourra être affiché (Show/Hide).<br />
|-<br />
| style="vertical-align:top;" |<br />
Couleur de fond <br />
| style="vertical-align:top;" | <br />
utilisez le sélecteur de couleur pour déterminer la couleur de fond du champ.<br />
|-<br />
| style="vertical-align:top;" |<br />
Déplacement <br />
| style="vertical-align:top;" | <br />
saisissez -1 pour déplacer l'onglet du menu vers la gauche, 1 vers la droite.<br />
|-<br />
| style="vertical-align:top;" |<br />
URL de redirection <br />
| style="vertical-align:top;" | <br />
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.<br />
|}<br />
<br />
|}<br />
<br />
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)<br />
<br />
===Exemple de personnalisation d'un menu principal===<br />
Personnalisons le menu ''Accueil''.<br />
<br />
[[file:myfield-Param-menu-accueil.png|600px]]<br />
<br />
[[file:Myfield-menu-resultat.png|600px]]<br />
<br />
===Exemple de personnalisation d'un menu et d'une entrée de menu secondaire===<br />
Personnalisons le menu secondaire Propositions commerciales et l'entrée de menu secondaire Nouvelle proposition.<br />
<br />
[[file:myfield-Param-menu-secondaire.png|600px]] <br />
<br />
[[file:myfield-Param-entree-menu-secondaire.png|600px]] <br />
<br />
{{Note|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}}<br />
Suite à l'application de ces deux personnalisations, le menu secondaire devient :<br />
<br />
{| class="wikitable"<br />
| [[file:Myfield-entree-menu-secondaire.png]]<br />
| style="vertical-align:top;" |<br />
plutôt que<br />
| [[file:Myfield-menu-secondaire.png]] <br />
|}<br />
<br />
===Cas particulier de entrées de menu secondaire "Liste"===<br />
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 ('''#''') :<br />
<br />
{| class="wikitable"<br />
| style="vertical-align:top;" |<br />
''Ajoutez au libellé le menu secondaire : Propositions commerciales#Liste''<br />
<br />
[[file:myfield_Liste-param.png|600px]] <br />
<br />
| style="vertical-align:top;" | <br />
Pour obtenir <br />
<br />
[[file:myfield_Liste-param-menu.png]]<br />
|}<br />
<br />
==Personnalisation d'un onglet avec myField==<br />
===Création du myField===<br />
La page de création d'un myField est accessible depuis le lien de menu secondaire '''Patastools > MyField > Nouveau MyTab'''.<br />
<br />
[[file:myfield-Page-creation-onglet.png|600px]]<br />
<br />
{| <br />
| style="vertical-align:top;width:50%;" |<br />
{| class="wikitable"<br />
| style="vertical-align:top;width:25%;" |<br />
Type de myField <br />
| style="vertical-align:top;" | <br />
le champ automatiquement rempli en fonction du lien de menu sur lequel vous avez cliqué.<br />
|-<br />
| style="vertical-align:top;" |<br />
Libellé natif <br />
| style="vertical-align:top;" | <br />
saisissez ici le libellé natif du menu tel qu'il est affiché à l'écran.<br />
|-<br />
| style="vertical-align:top;" |<br />
Contexte d'activation <br />
| style="vertical-align:top;" | <br />
le contexte d'activation permet de limiter l'action des myFields sur les seuls champs des pages comportant le contexte indiqué ici. <br />
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.<br />
<br />
[[#Context_d.27activation|Liste des principaux contexte ]]<br />
<br />
|-<br />
| style="vertical-align:top;" |<br />
Texte de remplacement <br />
| style="vertical-align:top;" | <br />
texte de votre choix qui sera affiché à la place du libellé natif.<br />
|-<br />
| style="vertical-align:top;" |<br />
Auteur<br />
| style="vertical-align:top;" | <br />
le nom du créateur du myField<br />
<br />
|}<br />
<br />
| style="vertical-align:top;" | <br />
{| class="wikitable"<br />
| style="vertical-align:top;width:25%;" |<br />
Affichage<br />
| style="vertical-align:top;" | <br />
*Visible : le champ sera affiché. Il s'agit du fonctionnement standard de Dolibarr.<br />
*Invisible : le champ sera absent des fiches<br />
*Caché : le champ sera absent des fiches mais pourra être affiché (Show/Hide).<br />
<br />
|-<br />
| style="vertical-align:top;" |<br />
Couleur de fond <br />
| style="vertical-align:top;" | <br />
utilisez le sélecteur de couleur pour déterminer la couleur de fond du myField.<br />
|-<br />
| style="vertical-align:top;" |<br />
Déplacement <br />
| style="vertical-align:top;" | <br />
saisissez -1 pour déplacer l'onglet du menu vers la gauche, 1 vers la droite.<br />
|-<br />
| style="vertical-align:top;" |<br />
URL de redirection <br />
| style="vertical-align:top;" | <br />
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.<br />
|}<br />
<br />
|}<br />
<br />
<br />
{{Note|N'indiquez ici que la partie de l'URL suivant ''/htdocs/''}}<br />
Requête d'affichage : voir section Fonctionnement, ci-dessous<br />
<br />
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).<br />
<br />
===Exemple de personnalisation d'un onglet===<br />
Personnalisons l'onglet fiche des fiches des éléments.<br />
<br />
[[file:myfield-Param-onglet-fiche.png|600px]] <br />
<br />
La fiche devient alors <br />
<br />
[[file:myfield-Natif-fiche.png|600px]] <br />
{{Note|Si l'onglet est actif, la couleur sera affichée sur ses bords}}<br />
<br />
==Personnalisation d'un champ avec myField==<br />
===Création du myField===<br />
La page de création d'un myField est accessible depuis le lien de menu secondaire '''Patastools > MyField > Nouveau MyField'''.<br />
[[file:myfield-Page-creation.png|600px]] <br />
<br />
<br />
{| <br />
| style="vertical-align:top;width:50%;" |<br />
{| class="wikitable"<br />
| style="vertical-align:top;width:25%;" |<br />
Type de myField <br />
| style="vertical-align:top;" | <br />
le champ automatiquement rempli en fonction du lien de menu sur lequel vous avez cliqué.<br />
|-<br />
| style="vertical-align:top;" |<br />
Libellé natif <br />
| style="vertical-align:top;" | <br />
saisissez ici le libellé natif du champ tel qu'il est affiché à l'écran.<br />
|-<br />
| style="vertical-align:top;" |<br />
Contexte d'activation <br />
| style="vertical-align:top;" | <br />
le contexte d'activation permet de limiter l'action des myFields sur les seuls champs des pages comportant le contexte indiqué ici. <br />
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.<br />
<br />
[[#Context_d.27activation|Liste des principaux contexte ]]<br />
<br />
|-<br />
| style="vertical-align:top;" |<br />
Texte de remplacement <br />
| style="vertical-align:top;" | <br />
texte de votre choix qui sera affiché à la place du libellé natif.<br />
|-<br />
| style="vertical-align:top;" |<br />
Auteur<br />
| style="vertical-align:top;" | <br />
le nom du créateur du myField<br />
<br />
|}<br />
<br />
| style="vertical-align:top;" | <br />
{| class="wikitable"<br />
| style="vertical-align:top;width:25%;" |<br />
Affichage<br />
| style="vertical-align:top;" | <br />
*Visible : le champ sera affiché. Il s'agit du fonctionnement standard de Dolibarr.<br />
*Invisible : le champ sera absent des fiches<br />
*Caché : le champ sera absent des fiches mais pourra être affiché (Show/Hide).<br />
<br />
|-<br />
| style="vertical-align:top;" |<br />
Couleur de fond <br />
| style="vertical-align:top;" | <br />
utilisez le sélecteur de couleur pour déterminer la couleur de fond du myField.<br />
|-<br />
| style="vertical-align:top;" |<br />
Déplacement <br />
| style="vertical-align:top;" | <br />
saisissez 1 pour remonter d'un champ, -1 pour descendre. <br />
|-<br />
| style="vertical-align:top;" |<br />
URL de redirection <br />
| style="vertical-align:top;" | <br />
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.<br />
|}<br />
<br />
|}<br />
<br />
<br />
{{Note|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}}<br />
<br />
*Taille du champ de saisie : à définir selon vos besoins. Si laissé vide, la valeur native du champ est conservée.<br />
<br />
*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<br />
:{{Note|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|warn}}<br />
:{{Note|N'indiquez ici que la partie de l'URL suivant ''/htdocs/''}}<br />
*Masque de saisie : le masque de saisie est paramétrable avec les caractères suivants :<br />
**a pour une lettre (A-Z,a-z)<br />
**9 pour un chiffre (0-9)<br />
** * pour un caractère alphanumérique (A-Z,a-z,0-9)<br />
: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<br />
:*UPPERCASE pour forcer la saisie en majuscule.<br />
<br />
*Requête d'affichage : Voir section Fonctionnement<br />
<br />
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).<br />
<br />
===Exemple de personnalisation d'un champ===<br />
Personnalisons le champ ''Id. prof. 2 (SIRET)'' des fiches de tiers.<br />
<br />
[[file:myfield_Param-champ.png|600px]] <br />
<br />
Le champ a été paramétré en tant qu'invisible. 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 :<br />
<br />
[[file:Myfield-champ.png|600px]] <br />
<br />
En édition du champ, le masque sera activé et ne permettra que la saisie de chiffres (masque saisi 999 999 999 99999) et sa complétion vérifiée (rendu obligatoire) pour empêcher l'enregistrement de la page sans qu'il ne soit rempli :<br />
<br />
[[file:myfield-Masque.png]]<br />
<br />
==Personnalisation d'un myField de liste==<br />
===Création du myField===<br />
Les mylist de liste permettent de limiter l'affichage de champs.<br />
Masquons le champ Tiers de la liste des contrats avec le myField suivant :<br />
[[file:Myfield-masque-tiers.png|600px]]<br />
<br />
[[#Context_d.27activation|Liste des principaux contexte ]]<br />
<br />
La liste ne contient plus le champs Tiers, et il n'est pas possible de le sélectionner dans le sélecteur de champs.<br />
<br />
[[file:myfield_Liste-contrats.png|600px]]<br />
<br />
{{Note|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 !}}<br />
<br />
=Requête SQL de traitement=<br />
==Fonctionnement==<br />
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.<br />
<br />
Saisissez ici la requête d'affichage applicable au champs sur l'exemple suivant :<br />
<br />
''#SEL# if llx_product.type=1 FROM llx_product WHERE rowid=#ID#''<br />
<br />
==Exemple==<br />
Avec le myfield suivante :<br />
<br />
[[file:myfield_Creation_requete.png|600px]] <br />
<br />
On obtient la fiche suivante sur un produit :<br />
<br />
[[file:myfield_Creation_requete_result.png|600px]] <br />
<br />
Tandis que sur la fiche d'un service :<br />
<br />
[[file:myfield_Creation_requete-fiche.png|600px]]<br />
<br />
=Paramétrage des droits d'accès aux myFields, tabs et menus=<br />
==Configuration des droits d'accès==<br />
En tant qu'utilisateur administrateur, tous les myFields vous sont visibles.<br />
{{Note|Sur la page d'accueil du module MyField, l'application des personnalisations est désactivée}}<br />
<br />
Si vous n'avez pas défini de groupes utilisateurs, les myfields sont affichés sur les interfaces de tous les utilsiateurs.<br />
<br />
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 :<br />
<br />
[[file:myfield-Droits-d-acces.png|600px]]<br />
<br />
Il existe quatre droits d'accès :<br />
<br />
{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[File:lecture-off.png]] Bloqué en accès<br />
[[file:lecture-on.png]] Accès en lecture<br />
| [[file:modif-of.png]] Bloqué en modification<br />
[[file:modif-on.png]] Accès en modification<br />
|}<br />
<br />
==Comportement selon les droits d'accès==<br />
===Bloqué en accès ([[file:lecture-off.png]]) ===<br />
<br />
{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[file:myfield-User-lecture-.png|600px]]<br />
| Le champ sera caché aux utilisateurs du groupe. Ils ne pourront pas l'afficher<br />
<br />
le lien ''Show/Hide'' ne sera pas actif<br />
|}<br />
===Accès en lecture mais bloqué en modification ([[file:lecture-on.png]][[file:modif-of.png]]) ===<br />
{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[file:myfield-User-lecture-.png|600px]]<br />
| Les utilisateurs du groupe pourront afficher le champ, mais ne pourront pas en modifier le contenu.<br />
|}<br />
===Accès en lecture et Accès en modification ([[file:lecture-on.png]][[file:modif-on.png]]) ===<br />
{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[file:myfield-User-lecture+-modif+.png|600px]]<br />
| <br />
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,...)<br />
|}<br />
<br />
=Autres fonctionnalités=<br />
==Import des myField==<br />
Il est possible d'enregistrer une liste de myfields et leurs paramétrages en important un fichier XML.<br />
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'''.<br />
{{Note|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|warn}}<br />
Paramétrer ensuite les droits d'accès des utilisateurs au myField.<br />
<br />
==Contexte d'activation==<br />
Une liste de tous les contextes disponible est présent sur le wiki de dolibarr.<br />
<br />
:{| class="wikitable"<br />
|- style="background-color:orange; font-weight:bold;"<br />
| Fiche<br />
| Contexte<br />
|-<br />
| Adhérent<br />
| membertypecard<br />
|-<br />
| Catégories<br />
| categorycard<br />
|-<br />
| Commandes<br />
| ordercard<br />
|-<br />
| Commande fournisseur<br />
| ordersuppliercard<br />
|-<br />
| Contact<br />
| contactcard<br />
|-<br />
| Contrat<br />
| contractcard<br />
|-<br />
| Don<br />
| doncard<br />
|-<br />
| Entrepôt<br />
| warehousecard<br />
|-<br />
| Expédition<br />
| expeditioncard<br />
|-<br />
| Facture client<br />
| invoicecard<br />
|-<br />
| Facture fournisseur<br />
| suppliercard<br />
|-<br />
| Intervention<br />
| interventioncard<br />
|-<br />
| Livraison<br />
| deliverycard<br />
|-<br />
| Note de frais<br />
| tripandexpensecard<br />
|-<br />
| Produit<br />
| productcard<br />
|-<br />
| Projet<br />
| projectcard<br />
|-<br />
| Proposition commerciale<br />
| propalcard<br />
|-<br />
| Règlement client<br />
| paiementcard<br />
|-<br />
| Règlement fournisseur<br />
| paymentsupplier<br />
|-<br />
| Salaire<br />
| salarycard<br />
|-<br />
| Tache<br />
| projecttaskcard<br />
|-<br />
| Tiers<br />
| thirdpartycard<br />
|-<br />
| Utilisateur<br />
| usercard<br />
|}<br />
<br />
=Questions fréquentes=<br />
== Général ==<br />
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.<br />
Si vous rencontrez une autre erreur que celles décrites ci-dessous lors de l'utilisation de ce module :<br />
#Désactivez et réactivez le module,<br />
#Vérifier sur le ChangeLog si une nouvelle version a été publiée,<br />
#Ré-installez/mettez à jour le module,<br />
#Vérifiez que le remplacement de fichiers natifs de Dolibarr ne soit pas nécessaire au bon fonctionnement du module.<br />
#Vérifiez qu'aucune incompatibilité avec un autre module ne soit indiquée. Le cas échéant, suivez nos préconisations.<br />
<br />
Si, malgré ces manipulations, l'erreur persiste, contactez-nous en utilisant le formulaire dédié (http://docs.patas-monkey.com/support/).<br />
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.<br />
<br />
== Affichage d'un message en haut des pages de Dolibarr==<br />
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<br />
(voir Configuration).<br />
<br />
[[file:Myfield-Message-contexte.png]]<br />
<br />
==Message erreur d'ordonnancement==<br />
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.<br />
<br />
Le message d'erreur s'affiche en bas de page et est le suivant<br />
<br />
[[file:myfield_Erreur-dbclose-message.png]] <br />
<br />
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''.<br />
<br />
L'erreur vient de l'inversion des lignes ''llxFooter();'' et ''$db->close();'' en fin de fichier.<br />
<br />
{| class="wikitable" style="width:60%;" <br />
|- style="vertical-align:top;" <br />
| Modifiez le code de la page pour obtenir <br />
[[file:Erreur-dbclose-correction.png]]<br />
| au lieu de<br />
<br />
[[file:Erreur-dbclose.png]]<br />
|}</div>Nomihttps://wiki.patas-monkey.com/index.php?title=MyField&diff=887MyField2021-03-29T13:39:16Z<p>Nomi : /* Création du myField */</p>
<hr />
<div>{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[File:Myfield-250x250.png]]<br />
| Ce Module permet de personnaliser les libellés des menus, onglets, champs des fiches et listes de Dolibarr.<br />
Vous pouvez choisir vous-même le libellé de vos menus, le libellé des onglets et champs des fiches et listes<br />
|}<br />
<br />
== Présentation ==<br />
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...<br />
<br />
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.<br />
<br />
MyField permet encore de cacher des menus à des groupes d'utilisateurs et d'en modifier l'URL de destination.<br />
<br />
== Paramétrage ==<br />
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 [[file:doli-setup.png]] ou l'icône [[file:doli-setup-old.png]] en bout de ligne.<br />
<br />
[[file:myfield_Configuration.png|600px]]<br />
<br />
=== Page de configuration du module ===<br />
==== Activation du contexte pour le développement====<br />
MyField permet d'afficher sur certaines pages de Dolibarr les contextes utilisables pour limiter les actions de personnalisations des myFields.<br />
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.<br />
Paramétrer l'affichage des contexte sur vos pages vous permettra de les identifier pour paramétrer au mieux vos myfields.<br />
<br />
{| class="wikitable"<br />
| [[file:myfield-Message-contexte.png]]<br />
| style="vertical-align:top;" | <br />
L'activation de l'affichage des contextes se traduit par des messages du type ci-contre<br />
|} <br />
<br />
==== Droits des administrateurs====<br />
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.<br />
<br />
==== Remplacement des boutons natifs====<br />
MyField permet le remplacement des boutons standards de Dolibarr par des icônes.<br />
{| class="wikitable"<br />
| [[file:myfield_Button-replace.png|300px]]<br />
| au lieu de <br />
| [[file:myfield_Button-standard.png|500px]]<br />
|}<br />
<br />
==== Information de support ==== <br />
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 :<br />
[[file:Myfield_Technical-information.png]] <br />
<br />
===Permissions===<br />
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 ([[file:tick.png]]).<br />
<br />
====Permissions utilisateurs et groupes====<br />
{| class="wikitable"<br />
| [[file:myfield-Permissions-utilisateur.png|600px]]<br />
| style="vertical-align:top;" | <br />
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<br />
|}<br />
<br />
====Permissions par défaut====<br />
{| class="wikitable"<br />
| [[file:myfield-Permissions-defaut.png|600px]]<br />
| style="vertical-align:top;" | <br />
Les permissions par défaut ('''Accueil > Configuration > Sécurité > Permissions par défaut'''), accordées à tout utilisateur créé ultérieurement à l'installation du module, si il n'est pas ajouté à un groupe, sont les suivantes<br />
|}<br />
<br />
== Démarrage ==<br />
<br />
Les fonctionnalités de MyField sont accessibles depuis l'onglet de menu principal Patastools.<br />
Votre menu secondaire présente alors les entrées de menu suivantes :<br />
<br />
{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| style='border-style: none;' | '''MyField'''<br />
| L'entrée principale affiche la liste de tous les myFields de votre environnement<br />
|- style="vertical-align:top;" <br />
| style='border-style: none;' | <br />
'''Nouveau myField'''<br /><br />
'''Nouveau myTab'''<br /><br />
'''Nouveau myField de liste'''<br /> <br />
'''Nouveau myMenu'''<br />
| Ces entrées afficheront la page de création d'un nouveau myField selon son type :<br />
* champ de fiche <br />
* onglet<br />
* champs de liste <br />
* menu <br />
|- style="vertical-align:top;" <br />
| style='border-style: none;' | '''Liste des éléments'''<br />
| Cette entrée affichera également la liste des myFields enregistrés sur votre environnement <br />
|- style="vertical-align:top;" <br />
| style='border-style: none;' | '''Droits d'accès aux éléments'''<br />
| Cette page vous permettra de paramétrer les habilitations des groupes d'utilisateurs aux fonctionnalités de MyFields, tabs et menus.<br />
|- style="vertical-align:top;"<br />
| style='border-style: none;' | '''Import XML'''<br />
| Cette entré affichera une page permettant de copier un fichier d'import d'un myfield au format XML.<br />
|}<br />
<br />
== Personnalisation d'un menu avec myField ==<br />
=== Création du myField ===<br />
La page de création d'un myField de type menu est accessible depuis le lien de menu secondaire '''Patas-tools > MyField > Nouveau myMenu.'''<br />
[[File:Myfield-Page-creation-menu.png|800px]]<br />
<br />
<br />
{| <br />
| style="vertical-align:top;width:50%;" |<br />
{| class="wikitable"<br />
| style="vertical-align:top;width:25%;" |<br />
Type de myField <br />
| style="vertical-align:top;" | <br />
le champ automatiquement rempli en fonction du lien de menu sur lequel vous avez cliqué pour afficher cette page de création (menu).<br />
|-<br />
| style="vertical-align:top;" |<br />
Libellé natif <br />
| style="vertical-align:top;" | <br />
saisissez ici le libellé natif du menu tel qu'il est affiché sur votre interface.<br />
|-<br />
| style="vertical-align:top;" |<br />
Type de menu <br />
| style="vertical-align:top;" | <br />
sélectionnez dans la liste déroulante le type de menu que vous souhaitez personnaliser selon qu'il s'agit d'un menu principal, d'un menu secondaire ou d'une entrée de menu secondaire.<br />
|-<br />
| style="vertical-align:top;" |<br />
Texte de remplacement <br />
| style="vertical-align:top;" | <br />
texte de votre choix qui sera affiché à la place du libellé natif.<br />
|-<br />
| style="vertical-align:top;" |<br />
Auteur<br />
| style="vertical-align:top;" | <br />
le nom du créateur du myField<br />
|}<br />
<br />
| style="vertical-align:top;" | <br />
{| class="wikitable"<br />
| style="vertical-align:top;width:25%;" |<br />
Affichage<br />
| style="vertical-align:top;" | <br />
*Visible : le champ sera affiché. Il s'agit du fonctionnement standard de Dolibarr.<br />
*Invisible : le champ sera absent des fiches<br />
*Caché : le champ sera absent des fiches mais pourra être affiché (Show/Hide).<br />
|-<br />
| style="vertical-align:top;" |<br />
Couleur de fond <br />
| style="vertical-align:top;" | <br />
utilisez le sélecteur de couleur pour déterminer la couleur de fond du champ.<br />
|-<br />
| style="vertical-align:top;" |<br />
Déplacement <br />
| style="vertical-align:top;" | <br />
saisissez -1 pour déplacer l'onglet du menu vers la gauche, 1 vers la droite.<br />
|-<br />
| style="vertical-align:top;" |<br />
URL de redirection <br />
| style="vertical-align:top;" | <br />
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.<br />
|}<br />
<br />
|}<br />
<br />
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)<br />
<br />
===Exemple de personnalisation d'un menu principal===<br />
Personnalisons le menu ''Accueil''.<br />
<br />
[[file:myfield-Param-menu-accueil.png|600px]]<br />
<br />
[[file:Myfield-menu-resultat.png|600px]]<br />
<br />
===Exemple de personnalisation d'un menu et d'une entrée de menu secondaire===<br />
Personnalisons le menu secondaire Propositions commerciales et l'entrée de menu secondaire Nouvelle proposition.<br />
<br />
[[file:myfield-Param-menu-secondaire.png|600px]] <br />
<br />
[[file:myfield-Param-entree-menu-secondaire.png|600px]] <br />
<br />
{{Note|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}}<br />
Suite à l'application de ces deux personnalisations, le menu secondaire devient :<br />
<br />
{| class="wikitable"<br />
| [[file:Myfield-entree-menu-secondaire.png]]<br />
| style="vertical-align:top;" |<br />
plutôt que<br />
| [[file:Myfield-menu-secondaire.png]] <br />
|}<br />
<br />
===Cas particulier de entrées de menu secondaire "Liste"===<br />
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 ('''#''') :<br />
<br />
{| class="wikitable"<br />
| style="vertical-align:top;" |<br />
''Ajoutez au libellé le menu secondaire : Propositions commerciales#Liste''<br />
<br />
[[file:myfield_Liste-param.png|600px]] <br />
<br />
| style="vertical-align:top;" | <br />
Pour obtenir <br />
<br />
[[file:myfield_Liste-param-menu.png]]<br />
|}<br />
<br />
==Personnalisation d'un onglet avec myField==<br />
===Création du myField===<br />
La page de création d'un myField est accessible depuis le lien de menu secondaire '''Patastools > MyField > Nouveau MyTab'''.<br />
<br />
[[file:myfield-Page-creation-onglet.png|600px]]<br />
<br />
{| <br />
| style="vertical-align:top;width:50%;" |<br />
{| class="wikitable"<br />
| style="vertical-align:top;width:25%;" |<br />
Type de myField <br />
| style="vertical-align:top;" | <br />
le champ automatiquement rempli en fonction du lien de menu sur lequel vous avez cliqué.<br />
|-<br />
| style="vertical-align:top;" |<br />
Libellé natif <br />
| style="vertical-align:top;" | <br />
saisissez ici le libellé natif du menu tel qu'il est affiché à l'écran.<br />
|-<br />
| style="vertical-align:top;" |<br />
Contexte d'activation <br />
| style="vertical-align:top;" | <br />
le contexte d'activation permet de limiter l'action des myFields sur les seuls champs des pages comportant le contexte indiqué ici. <br />
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.<br />
<br />
[[#Context_d.27activation|Liste des principaux contexte ]]<br />
<br />
|-<br />
| style="vertical-align:top;" |<br />
Texte de remplacement <br />
| style="vertical-align:top;" | <br />
texte de votre choix qui sera affiché à la place du libellé natif.<br />
|-<br />
| style="vertical-align:top;" |<br />
Auteur<br />
| style="vertical-align:top;" | <br />
le nom du créateur du myField<br />
<br />
|}<br />
<br />
| style="vertical-align:top;" | <br />
{| class="wikitable"<br />
| style="vertical-align:top;width:25%;" |<br />
Affichage<br />
| style="vertical-align:top;" | <br />
*Visible : le champ sera affiché. Il s'agit du fonctionnement standard de Dolibarr.<br />
*Invisible : le champ sera absent des fiches<br />
*Caché : le champ sera absent des fiches mais pourra être affiché (Show/Hide).<br />
<br />
|-<br />
| style="vertical-align:top;" |<br />
Couleur de fond <br />
| style="vertical-align:top;" | <br />
utilisez le sélecteur de couleur pour déterminer la couleur de fond du myField.<br />
|-<br />
| style="vertical-align:top;" |<br />
Déplacement <br />
| style="vertical-align:top;" | <br />
saisissez -1 pour déplacer l'onglet du menu vers la gauche, 1 vers la droite.<br />
|-<br />
| style="vertical-align:top;" |<br />
URL de redirection <br />
| style="vertical-align:top;" | <br />
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.<br />
|}<br />
<br />
|}<br />
<br />
<br />
{{Note|N'indiquez ici que la partie de l'URL suivant ''/htdocs/''}}<br />
Requête d'affichage : voir section Fonctionnement, ci-dessous<br />
<br />
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).<br />
<br />
===Exemple de personnalisation d'un onglet===<br />
Personnalisons l'onglet fiche des fiches des éléments.<br />
<br />
[[file:myfield-Param-onglet-fiche.png|600px]] <br />
<br />
La fiche devient alors <br />
<br />
[[file:myfield-Natif-fiche.png|600px]] <br />
{{Note|Si l'onglet est actif, la couleur sera affichée sur ses bords}}<br />
<br />
==Personnalisation d'un champ avec myField==<br />
===Création du myField===<br />
La page de création d'un myField est accessible depuis le lien de menu secondaire '''Patastools > MyField > Nouveau MyField'''.<br />
[[file:myfield-Page-creation.png|600px]] <br />
<br />
*Type de myField : le champ automatiquement rempli en fonction du lien de menu sur lequel vous avez cliqué.<br />
*Libellé natif du champ : saisissez ici le libellé natif du champ tel qu'il est affiché à l'écran.<br />
*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. Soi 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.<br />
[[#Context_d.27activation|Liste des principaux contexte ]]<br />
*Texte de remplacement : texte de votre choix qui sera affiché à la place du libellé natif.<br />
*Auteur<br />
*Affichage : MyField permet de cacher des champs. Sélectionnez dans la liste déroulante :<br />
**Visible : le champ sera affiché. Il s'agit du fonctionnement standard de Dolibarr.<br />
**Invisible : le champ sera absent des fiches<br />
**Caché : le champ sera absent des fiches mais pourra être affiché (Show/Hide).<br />
*Couleur : utilisez le sélecteur de couleur pour déterminer la couleur de fond du myField.<br />
*Déplacement : saisissez 1 pour remonter d'un champ, -1 pour descendre. : <br />
:{{Note|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}}<br />
*Taille du champ de saisie : à définir selon vos besoins. Si laissé vide, la valeur native du champ est conservée.<br />
*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<br />
:{{Note|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|warn}}<br />
:{{Note|N'indiquez ici que la partie de l'URL suivant ''/htdocs/''}}<br />
*Masque de saisie : le masque de saisie est paramétrable avec les caractères suivants :<br />
**a pour une lettre (A-Z,a-z)<br />
**9 pour un chiffre (0-9)<br />
** * pour un caractère alphanumérique (A-Z,a-z,0-9)<br />
: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<br />
:*UPPERCASE pour forcer la saisie en majuscule.<br />
*Requête d'affichage : Voir section Fonctionnement<br />
<br />
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).<br />
<br />
===Exemple de personnalisation d'un champ===<br />
Personnalisons le champ ''Id. prof. 2 (SIRET)'' des fiches de tiers.<br />
<br />
[[file:myfield_Param-champ.png|600px]] <br />
<br />
Le champ a été paramétré en tant qu'invisible. 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 :<br />
<br />
[[file:Myfield-champ.png|600px]] <br />
<br />
En édition du champ, le masque sera activé et ne permettra que la saisie de chiffres (masque saisi 999 999 999 99999) et sa complétion vérifiée (rendu obligatoire) pour empêcher l'enregistrement de la page sans qu'il ne soit rempli :<br />
<br />
[[file:myfield-Masque.png]]<br />
<br />
==Personnalisation d'un myField de liste==<br />
===Création du myField===<br />
Les mylist de liste permettent de limiter l'affichage de champs.<br />
Masquons le champ Tiers de la liste des contrats avec le myField suivant :<br />
[[file:Myfield-masque-tiers.png|600px]]<br />
<br />
[[#Context_d.27activation|Liste des principaux contexte ]]<br />
<br />
La liste ne contient plus le champs Tiers, et il n'est pas possible de le sélectionner dans le sélecteur de champs.<br />
<br />
[[file:myfield_Liste-contrats.png|600px]]<br />
<br />
{{Note|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 !}}<br />
<br />
=Requête SQL de traitement=<br />
==Fonctionnement==<br />
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.<br />
<br />
Saisissez ici la requête d'affichage applicable au champs sur l'exemple suivant :<br />
<br />
''#SEL# if llx_product.type=1 FROM llx_product WHERE rowid=#ID#''<br />
<br />
==Exemple==<br />
Avec le myfield suivante :<br />
<br />
[[file:myfield_Creation_requete.png|600px]] <br />
<br />
On obtient la fiche suivante sur un produit :<br />
<br />
[[file:myfield_Creation_requete_result.png|600px]] <br />
<br />
Tandis que sur la fiche d'un service :<br />
<br />
[[file:myfield_Creation_requete-fiche.png|600px]]<br />
<br />
=Paramétrage des droits d'accès aux myFields, tabs et menus=<br />
==Configuration des droits d'accès==<br />
En tant qu'utilisateur administrateur, tous les myFields vous sont visibles.<br />
{{Note|Sur la page d'accueil du module MyField, l'application des personnalisations est désactivée}}<br />
<br />
Si vous n'avez pas défini de groupes utilisateurs, les myfields sont affichés sur les interfaces de tous les utilsiateurs.<br />
<br />
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 :<br />
<br />
[[file:myfield-Droits-d-acces.png|600px]]<br />
<br />
Il existe quatre droits d'accès :<br />
<br />
{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[File:lecture-off.png]] Bloqué en accès<br />
[[file:lecture-on.png]] Accès en lecture<br />
| [[file:modif-of.png]] Bloqué en modification<br />
[[file:modif-on.png]] Accès en modification<br />
|}<br />
<br />
==Comportement selon les droits d'accès==<br />
===Bloqué en accès ([[file:lecture-off.png]]) ===<br />
<br />
{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[file:myfield-User-lecture-.png|600px]]<br />
| Le champ sera caché aux utilisateurs du groupe. Ils ne pourront pas l'afficher<br />
<br />
le lien ''Show/Hide'' ne sera pas actif<br />
|}<br />
===Accès en lecture mais bloqué en modification ([[file:lecture-on.png]][[file:modif-of.png]]) ===<br />
{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[file:myfield-User-lecture-.png|600px]]<br />
| Les utilisateurs du groupe pourront afficher le champ, mais ne pourront pas en modifier le contenu.<br />
|}<br />
===Accès en lecture et Accès en modification ([[file:lecture-on.png]][[file:modif-on.png]]) ===<br />
{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[file:myfield-User-lecture+-modif+.png|600px]]<br />
| <br />
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,...)<br />
|}<br />
<br />
=Autres fonctionnalités=<br />
==Import des myField==<br />
Il est possible d'enregistrer une liste de myfields et leurs paramétrages en important un fichier XML.<br />
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'''.<br />
{{Note|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|warn}}<br />
Paramétrer ensuite les droits d'accès des utilisateurs au myField.<br />
<br />
==Contexte d'activation==<br />
Une liste de tous les contextes disponible est présent sur le wiki de dolibarr.<br />
<br />
:{| class="wikitable"<br />
|- style="background-color:orange; font-weight:bold;"<br />
| Fiche<br />
| Contexte<br />
|-<br />
| Adhérent<br />
| membertypecard<br />
|-<br />
| Catégories<br />
| categorycard<br />
|-<br />
| Commandes<br />
| ordercard<br />
|-<br />
| Commande fournisseur<br />
| ordersuppliercard<br />
|-<br />
| Contact<br />
| contactcard<br />
|-<br />
| Contrat<br />
| contractcard<br />
|-<br />
| Don<br />
| doncard<br />
|-<br />
| Entrepôt<br />
| warehousecard<br />
|-<br />
| Expédition<br />
| expeditioncard<br />
|-<br />
| Facture client<br />
| invoicecard<br />
|-<br />
| Facture fournisseur<br />
| suppliercard<br />
|-<br />
| Intervention<br />
| interventioncard<br />
|-<br />
| Livraison<br />
| deliverycard<br />
|-<br />
| Note de frais<br />
| tripandexpensecard<br />
|-<br />
| Produit<br />
| productcard<br />
|-<br />
| Projet<br />
| projectcard<br />
|-<br />
| Proposition commerciale<br />
| propalcard<br />
|-<br />
| Règlement client<br />
| paiementcard<br />
|-<br />
| Règlement fournisseur<br />
| paymentsupplier<br />
|-<br />
| Salaire<br />
| salarycard<br />
|-<br />
| Tache<br />
| projecttaskcard<br />
|-<br />
| Tiers<br />
| thirdpartycard<br />
|-<br />
| Utilisateur<br />
| usercard<br />
|}<br />
<br />
=Questions fréquentes=<br />
== Général ==<br />
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.<br />
Si vous rencontrez une autre erreur que celles décrites ci-dessous lors de l'utilisation de ce module :<br />
#Désactivez et réactivez le module,<br />
#Vérifier sur le ChangeLog si une nouvelle version a été publiée,<br />
#Ré-installez/mettez à jour le module,<br />
#Vérifiez que le remplacement de fichiers natifs de Dolibarr ne soit pas nécessaire au bon fonctionnement du module.<br />
#Vérifiez qu'aucune incompatibilité avec un autre module ne soit indiquée. Le cas échéant, suivez nos préconisations.<br />
<br />
Si, malgré ces manipulations, l'erreur persiste, contactez-nous en utilisant le formulaire dédié (http://docs.patas-monkey.com/support/).<br />
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.<br />
<br />
== Affichage d'un message en haut des pages de Dolibarr==<br />
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<br />
(voir Configuration).<br />
<br />
[[file:Myfield-Message-contexte.png]]<br />
<br />
==Message erreur d'ordonnancement==<br />
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.<br />
<br />
Le message d'erreur s'affiche en bas de page et est le suivant<br />
<br />
[[file:myfield_Erreur-dbclose-message.png]] <br />
<br />
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''.<br />
<br />
L'erreur vient de l'inversion des lignes ''llxFooter();'' et ''$db->close();'' en fin de fichier.<br />
<br />
{| class="wikitable" style="width:30%;" <br />
|- style="vertical-align:top;" <br />
| Modifiez le code de la page pour obtenir <br />
[[file:Erreur-dbclose-correction.png]]<br />
| <br />
au lieu de<br />
[[file:Erreur-dbclose.png]]<br />
|}</div>Nomihttps://wiki.patas-monkey.com/index.php?title=MyField&diff=886MyField2021-03-29T13:38:19Z<p>Nomi : /* Création du myField */</p>
<hr />
<div>{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[File:Myfield-250x250.png]]<br />
| Ce Module permet de personnaliser les libellés des menus, onglets, champs des fiches et listes de Dolibarr.<br />
Vous pouvez choisir vous-même le libellé de vos menus, le libellé des onglets et champs des fiches et listes<br />
|}<br />
<br />
== Présentation ==<br />
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...<br />
<br />
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.<br />
<br />
MyField permet encore de cacher des menus à des groupes d'utilisateurs et d'en modifier l'URL de destination.<br />
<br />
== Paramétrage ==<br />
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 [[file:doli-setup.png]] ou l'icône [[file:doli-setup-old.png]] en bout de ligne.<br />
<br />
[[file:myfield_Configuration.png|600px]]<br />
<br />
=== Page de configuration du module ===<br />
==== Activation du contexte pour le développement====<br />
MyField permet d'afficher sur certaines pages de Dolibarr les contextes utilisables pour limiter les actions de personnalisations des myFields.<br />
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.<br />
Paramétrer l'affichage des contexte sur vos pages vous permettra de les identifier pour paramétrer au mieux vos myfields.<br />
<br />
{| class="wikitable"<br />
| [[file:myfield-Message-contexte.png]]<br />
| style="vertical-align:top;" | <br />
L'activation de l'affichage des contextes se traduit par des messages du type ci-contre<br />
|} <br />
<br />
==== Droits des administrateurs====<br />
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.<br />
<br />
==== Remplacement des boutons natifs====<br />
MyField permet le remplacement des boutons standards de Dolibarr par des icônes.<br />
{| class="wikitable"<br />
| [[file:myfield_Button-replace.png|300px]]<br />
| au lieu de <br />
| [[file:myfield_Button-standard.png|500px]]<br />
|}<br />
<br />
==== Information de support ==== <br />
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 :<br />
[[file:Myfield_Technical-information.png]] <br />
<br />
===Permissions===<br />
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 ([[file:tick.png]]).<br />
<br />
====Permissions utilisateurs et groupes====<br />
{| class="wikitable"<br />
| [[file:myfield-Permissions-utilisateur.png|600px]]<br />
| style="vertical-align:top;" | <br />
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<br />
|}<br />
<br />
====Permissions par défaut====<br />
{| class="wikitable"<br />
| [[file:myfield-Permissions-defaut.png|600px]]<br />
| style="vertical-align:top;" | <br />
Les permissions par défaut ('''Accueil > Configuration > Sécurité > Permissions par défaut'''), accordées à tout utilisateur créé ultérieurement à l'installation du module, si il n'est pas ajouté à un groupe, sont les suivantes<br />
|}<br />
<br />
== Démarrage ==<br />
<br />
Les fonctionnalités de MyField sont accessibles depuis l'onglet de menu principal Patastools.<br />
Votre menu secondaire présente alors les entrées de menu suivantes :<br />
<br />
{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| style='border-style: none;' | '''MyField'''<br />
| L'entrée principale affiche la liste de tous les myFields de votre environnement<br />
|- style="vertical-align:top;" <br />
| style='border-style: none;' | <br />
'''Nouveau myField'''<br /><br />
'''Nouveau myTab'''<br /><br />
'''Nouveau myField de liste'''<br /> <br />
'''Nouveau myMenu'''<br />
| Ces entrées afficheront la page de création d'un nouveau myField selon son type :<br />
* champ de fiche <br />
* onglet<br />
* champs de liste <br />
* menu <br />
|- style="vertical-align:top;" <br />
| style='border-style: none;' | '''Liste des éléments'''<br />
| Cette entrée affichera également la liste des myFields enregistrés sur votre environnement <br />
|- style="vertical-align:top;" <br />
| style='border-style: none;' | '''Droits d'accès aux éléments'''<br />
| Cette page vous permettra de paramétrer les habilitations des groupes d'utilisateurs aux fonctionnalités de MyFields, tabs et menus.<br />
|- style="vertical-align:top;"<br />
| style='border-style: none;' | '''Import XML'''<br />
| Cette entré affichera une page permettant de copier un fichier d'import d'un myfield au format XML.<br />
|}<br />
<br />
== Personnalisation d'un menu avec myField ==<br />
=== Création du myField ===<br />
La page de création d'un myField de type menu est accessible depuis le lien de menu secondaire '''Patas-tools > MyField > Nouveau myMenu.'''<br />
[[File:Myfield-Page-creation-menu.png|800px]]<br />
<br />
<br />
{| <br />
| style="vertical-align:top;width:50%;" |<br />
{| class="wikitable"<br />
| style="vertical-align:top;width:25%;" |<br />
Type de myField <br />
| style="vertical-align:top;" | <br />
le champ automatiquement rempli en fonction du lien de menu sur lequel vous avez cliqué pour afficher cette page de création (menu).<br />
|-<br />
| style="vertical-align:top;" |<br />
Libellé natif <br />
| style="vertical-align:top;" | <br />
saisissez ici le libellé natif du menu tel qu'il est affiché sur votre interface.<br />
|-<br />
| style="vertical-align:top;" |<br />
Type de menu <br />
| style="vertical-align:top;" | <br />
sélectionnez dans la liste déroulante le type de menu que vous souhaitez personnaliser selon qu'il s'agit d'un menu principal, d'un menu secondaire ou d'une entrée de menu secondaire.<br />
|-<br />
| style="vertical-align:top;" |<br />
Texte de remplacement <br />
| style="vertical-align:top;" | <br />
texte de votre choix qui sera affiché à la place du libellé natif.<br />
|-<br />
| style="vertical-align:top;" |<br />
Auteur<br />
| style="vertical-align:top;" | <br />
le nom du créateur du myField<br />
|}<br />
<br />
| style="vertical-align:top;" | <br />
{| class="wikitable"<br />
| style="vertical-align:top;width:25%;" |<br />
Affichage<br />
| style="vertical-align:top;" | <br />
*Visible : le champ sera affiché. Il s'agit du fonctionnement standard de Dolibarr.<br />
*Invisible : le champ sera absent des fiches<br />
*Caché : le champ sera absent des fiches mais pourra être affiché (Show/Hide).<br />
|-<br />
| style="vertical-align:top;" |<br />
Couleur de fond <br />
| style="vertical-align:top;" | <br />
utilisez le sélecteur de couleur pour déterminer la couleur de fond du champ.<br />
|-<br />
| style="vertical-align:top;" |<br />
Déplacement <br />
| style="vertical-align:top;" | <br />
saisissez -1 pour déplacer l'onglet du menu vers la gauche, 1 vers la droite.<br />
|-<br />
| style="vertical-align:top;" |<br />
URL de redirection <br />
| style="vertical-align:top;" | <br />
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.<br />
|}<br />
<br />
|}<br />
<br />
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)<br />
<br />
===Exemple de personnalisation d'un menu principal===<br />
Personnalisons le menu ''Accueil''.<br />
<br />
[[file:myfield-Param-menu-accueil.png|600px]]<br />
<br />
[[file:Myfield-menu-resultat.png|600px]]<br />
<br />
===Exemple de personnalisation d'un menu et d'une entrée de menu secondaire===<br />
Personnalisons le menu secondaire Propositions commerciales et l'entrée de menu secondaire Nouvelle proposition.<br />
<br />
[[file:myfield-Param-menu-secondaire.png|600px]] <br />
<br />
[[file:myfield-Param-entree-menu-secondaire.png|600px]] <br />
<br />
{{Note|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}}<br />
Suite à l'application de ces deux personnalisations, le menu secondaire devient :<br />
<br />
{| class="wikitable"<br />
| [[file:Myfield-entree-menu-secondaire.png]]<br />
| style="vertical-align:top;" |<br />
plutôt que<br />
| [[file:Myfield-menu-secondaire.png]] <br />
|}<br />
<br />
===Cas particulier de entrées de menu secondaire "Liste"===<br />
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 ('''#''') :<br />
<br />
{| class="wikitable"<br />
| style="vertical-align:top;" |<br />
''Ajoutez au libellé le menu secondaire : Propositions commerciales#Liste''<br />
<br />
[[file:myfield_Liste-param.png|600px]] <br />
<br />
| style="vertical-align:top;" | <br />
Pour obtenir <br />
<br />
[[file:myfield_Liste-param-menu.png]]<br />
|}<br />
<br />
==Personnalisation d'un onglet avec myField==<br />
===Création du myField===<br />
La page de création d'un myField est accessible depuis le lien de menu secondaire '''Patastools > MyField > Nouveau MyTab'''.<br />
<br />
[[file:myfield-Page-creation-onglet.png|600px]]<br />
<br />
{| <br />
| style="vertical-align:top;width:50%;" |<br />
{| class="wikitable"<br />
| style="vertical-align:top;width:25%;" |<br />
Type de myField <br />
| style="vertical-align:top;" | <br />
le champ automatiquement rempli en fonction du lien de menu sur lequel vous avez cliqué.<br />
|-<br />
| style="vertical-align:top;" |<br />
Libellé natif <br />
| style="vertical-align:top;" | <br />
saisissez ici le libellé natif du menu tel qu'il est affiché à l'écran.<br />
|-<br />
| style="vertical-align:top;" |<br />
Contexte d'activation <br />
| style="vertical-align:top;" | <br />
le contexte d'activation permet de limiter l'action des myFields sur les seuls champs des pages comportant le contexte indiqué ici. <br />
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.<br />
[[#Context_d.27activation|Liste des principaux contexte ]]<br />
<br />
|-<br />
| style="vertical-align:top;" |<br />
Texte de remplacement <br />
| style="vertical-align:top;" | <br />
texte de votre choix qui sera affiché à la place du libellé natif.<br />
|-<br />
| style="vertical-align:top;" |<br />
Auteur<br />
| style="vertical-align:top;" | <br />
le nom du créateur du myField<br />
<br />
|}<br />
<br />
| style="vertical-align:top;" | <br />
{| class="wikitable"<br />
| style="vertical-align:top;width:25%;" |<br />
Affichage<br />
| style="vertical-align:top;" | <br />
*Visible : le champ sera affiché. Il s'agit du fonctionnement standard de Dolibarr.<br />
*Invisible : le champ sera absent des fiches<br />
*Caché : le champ sera absent des fiches mais pourra être affiché (Show/Hide).<br />
<br />
|-<br />
| style="vertical-align:top;" |<br />
Couleur de fond <br />
| style="vertical-align:top;" | <br />
utilisez le sélecteur de couleur pour déterminer la couleur de fond du myField.<br />
|-<br />
| style="vertical-align:top;" |<br />
Déplacement <br />
| style="vertical-align:top;" | <br />
saisissez -1 pour déplacer l'onglet du menu vers la gauche, 1 vers la droite.<br />
|-<br />
| style="vertical-align:top;" |<br />
URL de redirection <br />
| style="vertical-align:top;" | <br />
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.<br />
|}<br />
<br />
|}<br />
<br />
<br />
{{Note|N'indiquez ici que la partie de l'URL suivant ''/htdocs/''}}<br />
Requête d'affichage : voir section Fonctionnement, ci-dessous<br />
<br />
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).<br />
<br />
===Exemple de personnalisation d'un onglet===<br />
Personnalisons l'onglet fiche des fiches des éléments.<br />
<br />
[[file:myfield-Param-onglet-fiche.png|600px]] <br />
<br />
La fiche devient alors <br />
<br />
[[file:myfield-Natif-fiche.png|600px]] <br />
{{Note|Si l'onglet est actif, la couleur sera affichée sur ses bords}}<br />
<br />
==Personnalisation d'un champ avec myField==<br />
===Création du myField===<br />
La page de création d'un myField est accessible depuis le lien de menu secondaire '''Patastools > MyField > Nouveau MyField'''.<br />
[[file:myfield-Page-creation.png|600px]] <br />
<br />
*Type de myField : le champ automatiquement rempli en fonction du lien de menu sur lequel vous avez cliqué.<br />
*Libellé natif du champ : saisissez ici le libellé natif du champ tel qu'il est affiché à l'écran.<br />
*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. Soi 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.<br />
[[#Context_d.27activation|Liste des principaux contexte ]]<br />
*Texte de remplacement : texte de votre choix qui sera affiché à la place du libellé natif.<br />
*Auteur<br />
*Affichage : MyField permet de cacher des champs. Sélectionnez dans la liste déroulante :<br />
**Visible : le champ sera affiché. Il s'agit du fonctionnement standard de Dolibarr.<br />
**Invisible : le champ sera absent des fiches<br />
**Caché : le champ sera absent des fiches mais pourra être affiché (Show/Hide).<br />
*Couleur : utilisez le sélecteur de couleur pour déterminer la couleur de fond du myField.<br />
*Déplacement : saisissez 1 pour remonter d'un champ, -1 pour descendre. : <br />
:{{Note|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}}<br />
*Taille du champ de saisie : à définir selon vos besoins. Si laissé vide, la valeur native du champ est conservée.<br />
*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<br />
:{{Note|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|warn}}<br />
:{{Note|N'indiquez ici que la partie de l'URL suivant ''/htdocs/''}}<br />
*Masque de saisie : le masque de saisie est paramétrable avec les caractères suivants :<br />
**a pour une lettre (A-Z,a-z)<br />
**9 pour un chiffre (0-9)<br />
** * pour un caractère alphanumérique (A-Z,a-z,0-9)<br />
: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<br />
:*UPPERCASE pour forcer la saisie en majuscule.<br />
*Requête d'affichage : Voir section Fonctionnement<br />
<br />
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).<br />
<br />
===Exemple de personnalisation d'un champ===<br />
Personnalisons le champ ''Id. prof. 2 (SIRET)'' des fiches de tiers.<br />
<br />
[[file:myfield_Param-champ.png|600px]] <br />
<br />
Le champ a été paramétré en tant qu'invisible. 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 :<br />
<br />
[[file:Myfield-champ.png|600px]] <br />
<br />
En édition du champ, le masque sera activé et ne permettra que la saisie de chiffres (masque saisi 999 999 999 99999) et sa complétion vérifiée (rendu obligatoire) pour empêcher l'enregistrement de la page sans qu'il ne soit rempli :<br />
<br />
[[file:myfield-Masque.png]]<br />
<br />
==Personnalisation d'un myField de liste==<br />
===Création du myField===<br />
Les mylist de liste permettent de limiter l'affichage de champs.<br />
Masquons le champ Tiers de la liste des contrats avec le myField suivant :<br />
[[file:Myfield-masque-tiers.png|600px]]<br />
<br />
[[#Context_d.27activation|Liste des principaux contexte ]]<br />
<br />
La liste ne contient plus le champs Tiers, et il n'est pas possible de le sélectionner dans le sélecteur de champs.<br />
<br />
[[file:myfield_Liste-contrats.png|600px]]<br />
<br />
{{Note|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 !}}<br />
<br />
=Requête SQL de traitement=<br />
==Fonctionnement==<br />
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.<br />
<br />
Saisissez ici la requête d'affichage applicable au champs sur l'exemple suivant :<br />
<br />
''#SEL# if llx_product.type=1 FROM llx_product WHERE rowid=#ID#''<br />
<br />
==Exemple==<br />
Avec le myfield suivante :<br />
<br />
[[file:myfield_Creation_requete.png|600px]] <br />
<br />
On obtient la fiche suivante sur un produit :<br />
<br />
[[file:myfield_Creation_requete_result.png|600px]] <br />
<br />
Tandis que sur la fiche d'un service :<br />
<br />
[[file:myfield_Creation_requete-fiche.png|600px]]<br />
<br />
=Paramétrage des droits d'accès aux myFields, tabs et menus=<br />
==Configuration des droits d'accès==<br />
En tant qu'utilisateur administrateur, tous les myFields vous sont visibles.<br />
{{Note|Sur la page d'accueil du module MyField, l'application des personnalisations est désactivée}}<br />
<br />
Si vous n'avez pas défini de groupes utilisateurs, les myfields sont affichés sur les interfaces de tous les utilsiateurs.<br />
<br />
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 :<br />
<br />
[[file:myfield-Droits-d-acces.png|600px]]<br />
<br />
Il existe quatre droits d'accès :<br />
<br />
{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[File:lecture-off.png]] Bloqué en accès<br />
[[file:lecture-on.png]] Accès en lecture<br />
| [[file:modif-of.png]] Bloqué en modification<br />
[[file:modif-on.png]] Accès en modification<br />
|}<br />
<br />
==Comportement selon les droits d'accès==<br />
===Bloqué en accès ([[file:lecture-off.png]]) ===<br />
<br />
{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[file:myfield-User-lecture-.png|600px]]<br />
| Le champ sera caché aux utilisateurs du groupe. Ils ne pourront pas l'afficher<br />
<br />
le lien ''Show/Hide'' ne sera pas actif<br />
|}<br />
===Accès en lecture mais bloqué en modification ([[file:lecture-on.png]][[file:modif-of.png]]) ===<br />
{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[file:myfield-User-lecture-.png|600px]]<br />
| Les utilisateurs du groupe pourront afficher le champ, mais ne pourront pas en modifier le contenu.<br />
|}<br />
===Accès en lecture et Accès en modification ([[file:lecture-on.png]][[file:modif-on.png]]) ===<br />
{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[file:myfield-User-lecture+-modif+.png|600px]]<br />
| <br />
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,...)<br />
|}<br />
<br />
=Autres fonctionnalités=<br />
==Import des myField==<br />
Il est possible d'enregistrer une liste de myfields et leurs paramétrages en important un fichier XML.<br />
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'''.<br />
{{Note|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|warn}}<br />
Paramétrer ensuite les droits d'accès des utilisateurs au myField.<br />
<br />
==Contexte d'activation==<br />
Une liste de tous les contextes disponible est présent sur le wiki de dolibarr.<br />
<br />
:{| class="wikitable"<br />
|- style="background-color:orange; font-weight:bold;"<br />
| Fiche<br />
| Contexte<br />
|-<br />
| Adhérent<br />
| membertypecard<br />
|-<br />
| Catégories<br />
| categorycard<br />
|-<br />
| Commandes<br />
| ordercard<br />
|-<br />
| Commande fournisseur<br />
| ordersuppliercard<br />
|-<br />
| Contact<br />
| contactcard<br />
|-<br />
| Contrat<br />
| contractcard<br />
|-<br />
| Don<br />
| doncard<br />
|-<br />
| Entrepôt<br />
| warehousecard<br />
|-<br />
| Expédition<br />
| expeditioncard<br />
|-<br />
| Facture client<br />
| invoicecard<br />
|-<br />
| Facture fournisseur<br />
| suppliercard<br />
|-<br />
| Intervention<br />
| interventioncard<br />
|-<br />
| Livraison<br />
| deliverycard<br />
|-<br />
| Note de frais<br />
| tripandexpensecard<br />
|-<br />
| Produit<br />
| productcard<br />
|-<br />
| Projet<br />
| projectcard<br />
|-<br />
| Proposition commerciale<br />
| propalcard<br />
|-<br />
| Règlement client<br />
| paiementcard<br />
|-<br />
| Règlement fournisseur<br />
| paymentsupplier<br />
|-<br />
| Salaire<br />
| salarycard<br />
|-<br />
| Tache<br />
| projecttaskcard<br />
|-<br />
| Tiers<br />
| thirdpartycard<br />
|-<br />
| Utilisateur<br />
| usercard<br />
|}<br />
<br />
=Questions fréquentes=<br />
== Général ==<br />
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.<br />
Si vous rencontrez une autre erreur que celles décrites ci-dessous lors de l'utilisation de ce module :<br />
#Désactivez et réactivez le module,<br />
#Vérifier sur le ChangeLog si une nouvelle version a été publiée,<br />
#Ré-installez/mettez à jour le module,<br />
#Vérifiez que le remplacement de fichiers natifs de Dolibarr ne soit pas nécessaire au bon fonctionnement du module.<br />
#Vérifiez qu'aucune incompatibilité avec un autre module ne soit indiquée. Le cas échéant, suivez nos préconisations.<br />
<br />
Si, malgré ces manipulations, l'erreur persiste, contactez-nous en utilisant le formulaire dédié (http://docs.patas-monkey.com/support/).<br />
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.<br />
<br />
== Affichage d'un message en haut des pages de Dolibarr==<br />
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<br />
(voir Configuration).<br />
<br />
[[file:Myfield-Message-contexte.png]]<br />
<br />
==Message erreur d'ordonnancement==<br />
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.<br />
<br />
Le message d'erreur s'affiche en bas de page et est le suivant<br />
<br />
[[file:myfield_Erreur-dbclose-message.png]] <br />
<br />
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''.<br />
<br />
L'erreur vient de l'inversion des lignes ''llxFooter();'' et ''$db->close();'' en fin de fichier.<br />
<br />
{| class="wikitable" style="width:30%;" <br />
|- style="vertical-align:top;" <br />
| Modifiez le code de la page pour obtenir <br />
[[file:Erreur-dbclose-correction.png]]<br />
| <br />
au lieu de<br />
[[file:Erreur-dbclose.png]]<br />
|}</div>Nomihttps://wiki.patas-monkey.com/index.php?title=MyField&diff=868MyField2021-03-29T13:14:57Z<p>Nomi : /* Création du myField */</p>
<hr />
<div>{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[File:Myfield-250x250.png]]<br />
| Ce Module permet de personnaliser les libellés des menus, onglets, champs des fiches et listes de Dolibarr.<br />
Vous pouvez choisir vous-même le libellé de vos menus, le libellé des onglets et champs des fiches et listes<br />
|}<br />
<br />
== Présentation ==<br />
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...<br />
<br />
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.<br />
<br />
MyField permet encore de cacher des menus à des groupes d'utilisateurs et d'en modifier l'URL de destination.<br />
<br />
== Paramétrage ==<br />
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 [[file:doli-setup.png]] ou l'icône [[file:doli-setup-old.png]] en bout de ligne.<br />
<br />
[[file:myfield_Configuration.png|600px]]<br />
<br />
=== Page de configuration du module ===<br />
==== Activation du contexte pour le développement====<br />
MyField permet d'afficher sur certaines pages de Dolibarr les contextes utilisables pour limiter les actions de personnalisations des myFields.<br />
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.<br />
Paramétrer l'affichage des contexte sur vos pages vous permettra de les identifier pour paramétrer au mieux vos myfields.<br />
<br />
{| class="wikitable"<br />
| [[file:myfield-Message-contexte.png]]<br />
| style="vertical-align:top;" | <br />
L'activation de l'affichage des contextes se traduit par des messages du type ci-contre<br />
|} <br />
<br />
==== Droits des administrateurs====<br />
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.<br />
<br />
==== Remplacement des boutons natifs====<br />
MyField permet le remplacement des boutons standards de Dolibarr par des icônes.<br />
{| class="wikitable"<br />
| [[file:myfield_Button-replace.png|300px]]<br />
| au lieu de <br />
| [[file:myfield_Button-standard.png|500px]]<br />
|}<br />
<br />
==== Information de support ==== <br />
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 :<br />
[[file:Myfield_Technical-information.png]] <br />
<br />
===Permissions===<br />
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 ([[file:tick.png]]).<br />
<br />
====Permissions utilisateurs et groupes====<br />
{| class="wikitable"<br />
| [[file:myfield-Permissions-utilisateur.png|600px]]<br />
| style="vertical-align:top;" | <br />
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<br />
|}<br />
<br />
====Permissions par défaut====<br />
{| class="wikitable"<br />
| [[file:myfield-Permissions-defaut.png|600px]]<br />
| style="vertical-align:top;" | <br />
Les permissions par défaut ('''Accueil > Configuration > Sécurité > Permissions par défaut'''), accordées à tout utilisateur créé ultérieurement à l'installation du module, si il n'est pas ajouté à un groupe, sont les suivantes<br />
|}<br />
<br />
== Démarrage ==<br />
<br />
Les fonctionnalités de MyField sont accessibles depuis l'onglet de menu principal Patastools.<br />
Votre menu secondaire présente alors les entrées de menu suivantes :<br />
<br />
{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| style='border-style: none;' | '''MyField'''<br />
| L'entrée principale affiche la liste de tous les myFields de votre environnement<br />
|- style="vertical-align:top;" <br />
| style='border-style: none;' | <br />
'''Nouveau myField'''<br /><br />
'''Nouveau myTab'''<br /><br />
'''Nouveau myField de liste'''<br /> <br />
'''Nouveau myMenu'''<br />
| Ces entrées afficheront la page de création d'un nouveau myField selon son type :<br />
* champ de fiche <br />
* onglet<br />
* champs de liste <br />
* menu <br />
|- style="vertical-align:top;" <br />
| style='border-style: none;' | '''Liste des éléments'''<br />
| Cette entrée affichera également la liste des myFields enregistrés sur votre environnement <br />
|- style="vertical-align:top;" <br />
| style='border-style: none;' | '''Droits d'accès aux éléments'''<br />
| Cette page vous permettra de paramétrer les habilitations des groupes d'utilisateurs aux fonctionnalités de MyFields, tabs et menus.<br />
|- style="vertical-align:top;"<br />
| style='border-style: none;' | '''Import XML'''<br />
| Cette entré affichera une page permettant de copier un fichier d'import d'un myfield au format XML.<br />
|}<br />
<br />
== Personnalisation d'un menu avec myField ==<br />
=== Création du myField ===<br />
La page de création d'un myField de type menu est accessible depuis le lien de menu secondaire '''Patas-tools > MyField > Nouveau myMenu.'''<br />
[[File:Myfield-Page-creation-menu.png|800px]]<br />
<br />
<br />
{| class="wikitable"<br />
| style="vertical-align:top;" |<br />
{| class="wikitable"<br />
| style="vertical-align:top;" |<br />
Type de myField <br />
| style="vertical-align:top;" | <br />
le champ automatiquement rempli en fonction du lien de menu sur lequel vous avez cliqué pour afficher cette page de création (menu).<br />
|-<br />
| style="vertical-align:top;" |<br />
Libellé natif <br />
| style="vertical-align:top;" | <br />
saisissez ici le libellé natif du menu tel qu'il est affiché sur votre interface.<br />
|-<br />
| style="vertical-align:top;" |<br />
Type de menu <br />
| style="vertical-align:top;" | <br />
sélectionnez dans la liste déroulante le type de menu que vous souhaitez personnaliser selon qu'il s'agit d'un menu principal, d'un menu secondaire ou d'une entrée de menu secondaire.<br />
|-<br />
| style="vertical-align:top;" |<br />
Texte de remplacement <br />
| style="vertical-align:top;" | <br />
texte de votre choix qui sera affiché à la place du libellé natif.<br />
|-<br />
| style="vertical-align:top;" |<br />
Auteur<br />
| style="vertical-align:top;" | <br />
le nom du créateur du myField<br />
|}<br />
<br />
| style="vertical-align:top;" | <br />
{| class="wikitable"<br />
| style="vertical-align:top;" |<br />
Affichage<br />
| style="vertical-align:top;" | <br />
*Visible : le champ sera affiché. Il s'agit du fonctionnement standard de Dolibarr.<br />
*Invisible : le champ sera absent des fiches<br />
*Caché : le champ sera absent des fiches mais pourra être affiché (Show/Hide).<br />
|-<br />
| style="vertical-align:top;" |<br />
Couleur de fond <br />
| style="vertical-align:top;" | <br />
utilisez le sélecteur de couleur pour déterminer la couleur de fond du champ.<br />
|-<br />
| style="vertical-align:top;" |<br />
Déplacement <br />
| style="vertical-align:top;" | <br />
saisissez -1 pour déplacer l'onglet du menu vers la gauche, 1 vers la droite.<br />
|-<br />
| style="vertical-align:top;" |<br />
URL de redirection <br />
| style="vertical-align:top;" | <br />
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.<br />
|}<br />
<br />
|}<br />
<br />
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)<br />
<br />
===Exemple de personnalisation d'un menu principal===<br />
Personnalisons le menu ''Accueil''.<br />
<br />
[[file:myfield-Param-menu-accueil.png|600px]]<br />
<br />
[[file:Myfield-menu-resultat.png|600px]]<br />
<br />
===Exemple de personnalisation d'un menu et d'une entrée de menu secondaire===<br />
Personnalisons le menu secondaire Propositions commerciales et l'entrée de menu secondaire Nouvelle proposition.<br />
<br />
[[file:myfield-Param-menu-secondaire.png|600px]] <br />
<br />
[[file:myfield-Param-entree-menu-secondaire.png|600px]] <br />
<br />
{{Note|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}}<br />
Suite à l'application de ces deux personnalisations, le menu secondaire devient :<br />
<br />
{| class="wikitable"<br />
| [[file:Myfield-entree-menu-secondaire.png]]<br />
| style="vertical-align:top;" |<br />
plutôt que<br />
| [[file:Myfield-menu-secondaire.png]] <br />
|}<br />
<br />
===Cas particulier de entrées de menu secondaire "Liste"===<br />
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 ('''#''') :<br />
<br />
{| class="wikitable"<br />
| style="vertical-align:top;" |<br />
''Ajoutez au libellé le menu secondaire : Propositions commerciales#Liste''<br />
<br />
[[file:myfield_Liste-param.png|600px]] <br />
<br />
| style="vertical-align:top;" | <br />
Pour obtenir <br />
<br />
[[file:myfield_Liste-param-menu.png]]<br />
|}<br />
<br />
==Personnalisation d'un onglet avec myField==<br />
===Création du myField===<br />
La page de création d'un myField est accessible depuis le lien de menu secondaire '''Patastools > MyField > Nouveau MyTab'''.<br />
<br />
[[file:myfield-Page-creation-onglet.png|600px]]<br />
<br />
*Type de myField : le champ automatiquement rempli en fonction du lien de menu sur lequel vous avez cliqué.<br />
*Libellé natif : saisissez ici le libellé natif du champ tel qu'il est affiché à l'écran.<br />
*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. Soi 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.<br />
:Liste des principaux contexte :<br />
:Une liste des contextes est disponible sur le wiki de dolibarr.<br />
*Texte de remplacement : texte de votre choix qui sera affiché à la place du libellé natif.<br />
*Auteur<br />
*Affichage : MyField permet de cacher des onglets. Sélectionnez dans la liste déroulante :<br />
**Visible : le champ sera affiché. Il s'agit du fonctionnement standard de Dolibarr.<br />
**Invisible : le champ sera absent des fiches<br />
**Caché : le champ sera absent des fiches mais pourra être affiché (Show/Hide).<br />
*Couleur : utilisez le sélecteur de couleur pour déterminer la couleur de fond du myField.<br />
*Déplacement : saisissez 1 pour décaler vers la droite, -1 vers la gauche.<br />
*Taille du champ de saisie à définir selon vos besoins. Si laissé vide, la valeur native du champ est conservée.<br />
*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.<br />
{{Note|N'indiquez ici que la partie de l'URL suivant ''/htdocs/''}}<br />
Requête d'affichage : voir section Fonctionnement, ci-dessous<br />
<br />
Suite à la création d'un myField, il sera nécessaire de définir les droits d'accès aux myFields<br />
par groupes d'utilisateurs depuis le lien de menu secondaire du même nom (Voir section<br />
Configuration des droits d'accès).<br />
<br />
===Exemple de personnalisation d'un onglet===<br />
Personnalisons l'onglet fiche des fiches des éléments.<br />
<br />
[[file:myfield-Param-onglet-fiche.png|600px]] <br />
<br />
La fiche devient alors <br />
<br />
[[file:myfield-Natif-fiche.png|600px]] <br />
{{Note|Si l'onglet est actif, la couleur sera affichée sur ses bords}}<br />
<br />
==Personnalisation d'un champ avec myField==<br />
===Création du myField===<br />
La page de création d'un myField est accessible depuis le lien de menu secondaire '''Patastools > MyField > Nouveau MyField'''.<br />
[[file:myfield-Page-creation.png|600px]] <br />
<br />
*Type de myField : le champ automatiquement rempli en fonction du lien de menu sur lequel vous avez cliqué.<br />
*Libellé natif du champ : saisissez ici le libellé natif du champ tel qu'il est affiché à l'écran.<br />
*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. Soi 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.<br />
:Liste des principaux contexte :<br />
:{| class="wikitable"<br />
|- style="background-color:orange; font-weight:bold;"<br />
| Fiche<br />
| Contexte<br />
|-<br />
| Adhérent<br />
| membertypecard<br />
|-<br />
| Catégories<br />
| categorycard<br />
|-<br />
| Commandes<br />
| ordercard<br />
|-<br />
| Commande fournisseur<br />
| ordersuppliercard<br />
|-<br />
| Contact<br />
| contactcard<br />
|-<br />
| Contrat<br />
| contractcard<br />
|-<br />
| Don<br />
| doncard<br />
|-<br />
| Entrepôt<br />
| warehousecard<br />
|-<br />
| Expédition<br />
| expeditioncard<br />
|-<br />
| Facture client<br />
| invoicecard<br />
|-<br />
| Facture fournisseur<br />
| suppliercard<br />
|-<br />
| Intervention<br />
| interventioncard<br />
|-<br />
| Livraison<br />
| deliverycard<br />
|-<br />
| Note de frais<br />
| tripandexpensecard<br />
|-<br />
| Produit<br />
| productcard<br />
|-<br />
| Projet<br />
| projectcard<br />
|-<br />
| Proposition commerciale<br />
| propalcard<br />
|-<br />
| Règlement client<br />
| paiementcard<br />
|-<br />
| Règlement fournisseur<br />
| paymentsupplier<br />
|-<br />
| Salaire<br />
| salarycard<br />
|-<br />
| Tache<br />
| projecttaskcard<br />
|-<br />
| Tiers<br />
| thirdpartycard<br />
|-<br />
| Utilisateur<br />
| usercard<br />
|} <br />
:Une liste des contextes est disponible sur le wiki de dolibarr.<br />
*Texte de remplacement : texte de votre choix qui sera affiché à la place du libellé natif.<br />
*Auteur<br />
*Affichage : MyField permet de cacher des champs. Sélectionnez dans la liste déroulante :<br />
**Visible : le champ sera affiché. Il s'agit du fonctionnement standard de Dolibarr.<br />
**Invisible : le champ sera absent des fiches<br />
**Caché : le champ sera absent des fiches mais pourra être affiché (Show/Hide).<br />
*Couleur : utilisez le sélecteur de couleur pour déterminer la couleur de fond du myField.<br />
*Déplacement : saisissez 1 pour remonter d'un champ, -1 pour descendre. : <br />
:{{Note|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}}<br />
*Taille du champ de saisie : à définir selon vos besoins. Si laissé vide, la valeur native du champ est conservée.<br />
*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<br />
:{{Note|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|warn}}<br />
:{{Note|N'indiquez ici que la partie de l'URL suivant ''/htdocs/''}}<br />
*Masque de saisie : le masque de saisie est paramétrable avec les caractères suivants :<br />
**a pour une lettre (A-Z,a-z)<br />
**9 pour un chiffre (0-9)<br />
** * pour un caractère alphanumérique (A-Z,a-z,0-9)<br />
: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<br />
:*UPPERCASE pour forcer la saisie en majuscule.<br />
*Requête d'affichage : Voir section Fonctionnement<br />
<br />
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).<br />
<br />
===Exemple de personnalisation d'un champ===<br />
Personnalisons le champ ''Id. prof. 2 (SIRET)'' des fiches de tiers.<br />
<br />
[[file:myfield_Param-champ.png|600px]] <br />
<br />
Le champ a été paramétré en tant qu'invisible. 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 :<br />
<br />
[[file:Myfield-champ.png|600px]] <br />
<br />
En édition du champ, le masque sera activé et ne permettra que la saisie de chiffres (masque saisi 999 999 999 99999) et sa complétion vérifiée (rendu obligatoire) pour empêcher l'enregistrement de la page sans qu'il ne soit rempli :<br />
<br />
[[file:myfield-Masque.png]]<br />
<br />
==Personnalisation d'un myField de liste==<br />
===Création du myField===<br />
Les mylist de liste permettent de limiter l'affichage de champs.<br />
Masquons le champ Tiers de la liste des contrats avec le myField suivant :<br />
[[file:Myfield-masque-tiers.png|600px]]<br />
<br />
Liste des principaux contexte :<br />
{| class="wikitable"<br />
|- style="background-color:orange; font-weight:bold;"<br />
| Liste<br />
| Contexte<br />
|-<br />
| Contrat<br />
| contractlist<br />
|-<br />
| Proposition commerciale<br />
| propallist<br />
|- <br />
| Commande<br />
| orderlist<br />
|-<br />
| Facture client<br />
| invoicelist<br />
|-<br />
| Facture fournisseur<br />
| supplierorderlist<br />
|-<br />
| Proposition commerciale fournisseur<br />
| supplier_proposallist<br />
|-<br />
| Intervention<br />
| interventionlist<br />
|-<br />
| Expédition<br />
| shipementlist<br />
|-<br />
| Produits/services<br />
| productservicelist<br />
|} <br />
La liste ne contient plus le champs Tiers, et il n'est pas possible de le sélectionner dans le sélecteur de champs.<br />
<br />
[[file:myfield_Liste-contrats.png|600px]]<br />
<br />
{{Note|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 !}}<br />
<br />
=Requête SQL de traitement=<br />
==Fonctionnement==<br />
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.<br />
<br />
Saisissez ici la requête d'affichage applicable au champs sur l'exemple suivant :<br />
<br />
''#SEL# if llx_product.type=1 FROM llx_product WHERE rowid=#ID#''<br />
<br />
==Exemple==<br />
Avec le myfield suivante :<br />
<br />
[[file:myfield_Creation_requete.png|600px]] <br />
<br />
On obtient la fiche suivante sur un produit :<br />
<br />
[[file:myfield_Creation_requete_result.png|600px]] <br />
<br />
Tandis que sur la fiche d'un service :<br />
<br />
[[file:myfield_Creation_requete-fiche.png|600px]]<br />
<br />
=Paramétrage des droits d'accès aux myFields, tabs et menus=<br />
==Configuration des droits d'accès==<br />
En tant qu'utilisateur administrateur, tous les myFields vous sont visibles.<br />
{{Note|Sur la page d'accueil du module MyField, l'application des personnalisations est désactivée}}<br />
<br />
Si vous n'avez pas défini de groupes utilisateurs, les myfields sont affichés sur les interfaces de tous les utilsiateurs.<br />
<br />
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 :<br />
<br />
[[file:myfield-Droits-d-acces.png|600px]]<br />
<br />
Il existe quatre droits d'accès :<br />
<br />
{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[File:lecture-off.png]] Bloqué en accès<br />
[[file:lecture-on.png]] Accès en lecture<br />
| [[file:modif-of.png]] Bloqué en modification<br />
[[file:modif-on.png]] Accès en modification<br />
|}<br />
<br />
==Comportement selon les droits d'accès==<br />
*Bloqué en accès ([[file:lecture-off.png]]) : Le champ sera caché aux utilisateurs du groupe. Ils ne pourront pas l'afficher : le lien<br />
''Show/Hide'' ne sera pas actif :<br />
[[file:myfield-User-lecture-.png|600px]] <br />
<br />
*Accès en lecture mais bloqué en modification ([[file:lecture-on.png]][[file:modif-of.png]]): Les utilisateurs du groupe pourront afficher le champ, mais ne pourront pas en modifier le contenu.<br />
[[file:myfield-User-lecture-.png|600px]] <br />
<br />
*Accès en lecture et Accès en modification ([[file:lecture-on.png]][[file:modif-on.png]]) : 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,...) :<br />
[[file:myfield-User-lecture+-modif+.png|600px]]<br />
<br />
=Autres fonctionnalités=<br />
==Import des myField==<br />
Il est possible d'enregistrer une liste de myfields et leurs paramétrages en important un fichier XML.<br />
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'''.<br />
{{Note|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|warn}}<br />
Paramétrer ensuite les droits d'accès des utilisateurs au myField.<br />
<br />
==Context d'activation==<br />
:{| class="wikitable"<br />
|- style="background-color:orange; font-weight:bold;"<br />
| Fiche<br />
| Contexte<br />
|-<br />
| Adhérent<br />
| membertypecard<br />
|-<br />
| Catégories<br />
| categorycard<br />
|-<br />
| Commandes<br />
| ordercard<br />
|-<br />
| Commande fournisseur<br />
| ordersuppliercard<br />
|-<br />
| Contact<br />
| contactcard<br />
|-<br />
| Contrat<br />
| contractcard<br />
|-<br />
| Don<br />
| doncard<br />
|-<br />
| Entrepôt<br />
| warehousecard<br />
|-<br />
| Expédition<br />
| expeditioncard<br />
|-<br />
| Facture client<br />
| invoicecard<br />
|-<br />
| Facture fournisseur<br />
| suppliercard<br />
|-<br />
| Intervention<br />
| interventioncard<br />
|-<br />
| Livraison<br />
| deliverycard<br />
|-<br />
| Note de frais<br />
| tripandexpensecard<br />
|-<br />
| Produit<br />
| productcard<br />
|-<br />
| Projet<br />
| projectcard<br />
|-<br />
| Proposition commerciale<br />
| propalcard<br />
|-<br />
| Règlement client<br />
| paiementcard<br />
|-<br />
| Règlement fournisseur<br />
| paymentsupplier<br />
|-<br />
| Salaire<br />
| salarycard<br />
|-<br />
| Tache<br />
| projecttaskcard<br />
|-<br />
| Tiers<br />
| thirdpartycard<br />
|-<br />
| Utilisateur<br />
| usercard<br />
|}<br />
<br />
=Questions fréquentes=<br />
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.<br />
Si vous rencontrez une autre erreur que celles décrites ci-dessous lors de l'utilisation de ce module :<br />
#Désactivez et réactivez le module,<br />
#Vérifier sur le ChangeLog si une nouvelle version a été publiée,<br />
#Ré-installez/mettez à jour le module,<br />
#Vérifiez que le remplacement de fichiers natifs de Dolibarr ne soit pas nécessaire au bon fonctionnement du module.<br />
#Vérifiez qu'aucune incompatibilité avec un autre module ne soit indiquée. Le cas échéant, suivez nos préconisations.<br />
<br />
Si, malgré ces manipulations, l'erreur persiste, contactez-nous en utilisant le formulaire dédié (http://docs.patas-monkey.com/support/).<br />
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.<br />
<br />
*Affichage d'un message en haut des pages de Dolibarr<br />
: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<br />
(voir Configuration).<br />
:[[file:Myfield-Message-contexte.png]] <br />
<br />
*Message erreur d'ordonnancement<br />
: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.<br />
:Le message d'erreur s'affiche en bas de page et est le suivant :<br />
:[[file:myfield_Erreur-dbclose-message.png]] <br />
<br />
: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''.<br />
<br />
L'erreur vient de l'inversion des lignes ''llxFooter();'' et ''$db->close();'' en fin de fichier.<br />
Modifiez le code de la page pour obtenir :<br />
[[file:Erreur-dbclose-correction.png]]<br />
<br />
au lieu de :<br />
[[file:Erreur-dbclose.png]]</div>Nomihttps://wiki.patas-monkey.com/index.php?title=MyField&diff=861MyField2021-03-29T13:03:53Z<p>Nomi : /* Création du myField */</p>
<hr />
<div>{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[File:Myfield-250x250.png]]<br />
| Ce Module permet de personnaliser les libellés des menus, onglets, champs des fiches et listes de Dolibarr.<br />
Vous pouvez choisir vous-même le libellé de vos menus, le libellé des onglets et champs des fiches et listes<br />
|}<br />
<br />
== Présentation ==<br />
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...<br />
<br />
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.<br />
<br />
MyField permet encore de cacher des menus à des groupes d'utilisateurs et d'en modifier l'URL de destination.<br />
<br />
== Paramétrage ==<br />
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 [[file:doli-setup.png]] ou l'icône [[file:doli-setup-old.png]] en bout de ligne.<br />
<br />
[[file:myfield_Configuration.png|600px]]<br />
<br />
=== Page de configuration du module ===<br />
==== Activation du contexte pour le développement====<br />
MyField permet d'afficher sur certaines pages de Dolibarr les contextes utilisables pour limiter les actions de personnalisations des myFields.<br />
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.<br />
Paramétrer l'affichage des contexte sur vos pages vous permettra de les identifier pour paramétrer au mieux vos myfields.<br />
<br />
{| class="wikitable"<br />
| [[file:myfield-Message-contexte.png]]<br />
| style="vertical-align:top;" | <br />
L'activation de l'affichage des contextes se traduit par des messages du type ci-contre<br />
|} <br />
<br />
==== Droits des administrateurs====<br />
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.<br />
<br />
==== Remplacement des boutons natifs====<br />
MyField permet le remplacement des boutons standards de Dolibarr par des icônes.<br />
{| class="wikitable"<br />
| [[file:myfield_Button-replace.png|300px]]<br />
| au lieu de <br />
| [[file:myfield_Button-standard.png|500px]]<br />
|}<br />
<br />
==== Information de support ==== <br />
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 :<br />
[[file:Myfield_Technical-information.png]] <br />
<br />
===Permissions===<br />
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 ([[file:tick.png]]).<br />
<br />
====Permissions utilisateurs et groupes====<br />
{| class="wikitable"<br />
| [[file:myfield-Permissions-utilisateur.png|600px]]<br />
| style="vertical-align:top;" | <br />
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<br />
|}<br />
<br />
====Permissions par défaut====<br />
{| class="wikitable"<br />
| [[file:myfield-Permissions-defaut.png|600px]]<br />
| style="vertical-align:top;" | <br />
Les permissions par défaut ('''Accueil > Configuration > Sécurité > Permissions par défaut'''), accordées à tout utilisateur créé ultérieurement à l'installation du module, si il n'est pas ajouté à un groupe, sont les suivantes<br />
|}<br />
<br />
== Démarrage ==<br />
<br />
Les fonctionnalités de MyField sont accessibles depuis l'onglet de menu principal Patastools.<br />
Votre menu secondaire présente alors les entrées de menu suivantes :<br />
<br />
{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| style='border-style: none;' | '''MyField'''<br />
| L'entrée principale affiche la liste de tous les myFields de votre environnement<br />
|- style="vertical-align:top;" <br />
| style='border-style: none;' | <br />
'''Nouveau myField'''<br /><br />
'''Nouveau myTab'''<br /><br />
'''Nouveau myField de liste'''<br /> <br />
'''Nouveau myMenu'''<br />
| Ces entrées afficheront la page de création d'un nouveau myField selon son type :<br />
* champ de fiche <br />
* onglet<br />
* champs de liste <br />
* menu <br />
|- style="vertical-align:top;" <br />
| style='border-style: none;' | '''Liste des éléments'''<br />
| Cette entrée affichera également la liste des myFields enregistrés sur votre environnement <br />
|- style="vertical-align:top;" <br />
| style='border-style: none;' | '''Droits d'accès aux éléments'''<br />
| Cette page vous permettra de paramétrer les habilitations des groupes d'utilisateurs aux fonctionnalités de MyFields, tabs et menus.<br />
|- style="vertical-align:top;"<br />
| style='border-style: none;' | '''Import XML'''<br />
| Cette entré affichera une page permettant de copier un fichier d'import d'un myfield au format XML.<br />
|}<br />
<br />
== Personnalisation d'un menu avec myField ==<br />
=== Création du myField ===<br />
La page de création d'un myField de type menu est accessible depuis le lien de menu secondaire '''Patas-tools > MyField > Nouveau myMenu.'''<br />
[[File:Myfield-Page-creation-menu.png|800px]]<br />
<br />
<br />
*Type de myField : le champ automatiquement rempli en fonction du lien de menu sur lequel vous avez cliqué pour afficher cette page de création (menu).<br />
*Libellé natif : saisissez ici le libellé natif du menu tel qu'il est affiché sur votre interface.<br />
*Type de menu : sélectionnez dans la liste déroulante le type de menu que vous souhaitez personnaliser selon qu'il s'agit d'un menu principal, d'un menu secondaire ou d'une entrée de menu secondaire.<br />
*Texte de remplacement : texte de votre choix qui sera affiché à la place du libellé natif.<br />
*Auteur : le nom du créateur du myField<br />
<br />
*Affichage<br />
**Visible : le champ sera affiché. Il s'agit du fonctionnement standard de Dolibarr.<br />
**Invisible : le champ sera absent des fiches<br />
**Caché : le champ sera absent des fiches mais pourra être affiché (Show/Hide).<br />
*Couleur de fond : utilisez le sélecteur de couleur pour déterminer la couleur de fond du champ.<br />
*Déplacement : saisissez -1 pour déplacer l'onglet du menu vers la gauche, 1 vers la droite.<br />
*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.<br />
<br />
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)<br />
<br />
===Exemple de personnalisation d'un menu principal===<br />
Personnalisons le menu ''Accueil''.<br />
<br />
[[file:myfield-Param-menu-accueil.png|600px]]<br />
<br />
[[file:Myfield-menu-resultat.png|600px]]<br />
<br />
===Exemple de personnalisation d'un menu et d'une entrée de menu secondaire===<br />
Personnalisons le menu secondaire Propositions commerciales et l'entrée de menu secondaire Nouvelle proposition.<br />
<br />
[[file:myfield-Param-menu-secondaire.png|600px]] <br />
<br />
[[file:myfield-Param-entree-menu-secondaire.png|600px]] <br />
<br />
{{Note|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}}<br />
Suite à l'application de ces deux personnalisations, le menu secondaire devient :<br />
<br />
{| class="wikitable"<br />
| [[file:Myfield-entree-menu-secondaire.png]]<br />
| style="vertical-align:top;" |<br />
plutôt que<br />
| [[file:Myfield-menu-secondaire.png]] <br />
|}<br />
<br />
===Cas particulier de entrées de menu secondaire "Liste"===<br />
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 ('''#''') :<br />
<br />
{| class="wikitable"<br />
| style="vertical-align:top;" |<br />
''Ajoutez au libellé le menu secondaire : Propositions commerciales#Liste''<br />
<br />
[[file:myfield_Liste-param.png|600px]] <br />
<br />
| style="vertical-align:top;" | <br />
Pour obtenir <br />
<br />
[[file:myfield_Liste-param-menu.png]]<br />
|}<br />
<br />
==Personnalisation d'un onglet avec myField==<br />
===Création du myField===<br />
La page de création d'un myField est accessible depuis le lien de menu secondaire '''Patastools > MyField > Nouveau MyTab'''.<br />
<br />
[[file:myfield-Page-creation-onglet.png|600px]]<br />
<br />
*Type de myField : le champ automatiquement rempli en fonction du lien de menu sur lequel vous avez cliqué.<br />
*Libellé natif : saisissez ici le libellé natif du champ tel qu'il est affiché à l'écran.<br />
*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. Soi 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.<br />
:Liste des principaux contexte :<br />
:{| class="wikitable"<br />
|- style="background-color:orange; font-weight:bold;"<br />
| Fiche<br />
| Contexte<br />
|-<br />
| Adhérent<br />
| membertypecard<br />
|-<br />
| Catégories<br />
| categorycard<br />
|-<br />
| Commandes<br />
| ordercard<br />
|-<br />
| Commande fournisseur<br />
| ordersuppliercard<br />
|-<br />
| Contact<br />
| contactcard<br />
|-<br />
| Contrat<br />
| contractcard<br />
|-<br />
| Don<br />
| doncard<br />
|-<br />
| Entrepôt<br />
| warehousecard<br />
|-<br />
| Expédition<br />
| expeditioncard<br />
|-<br />
| Facture client<br />
| invoicecard<br />
|-<br />
| Facture fournisseur<br />
| suppliercard<br />
|-<br />
| Intervention<br />
| interventioncard<br />
|-<br />
| Livraison<br />
| deliverycard<br />
|-<br />
| Note de frais<br />
| tripandexpensecard<br />
|-<br />
| Produit<br />
| productcard<br />
|-<br />
| Projet<br />
| projectcard<br />
|-<br />
| Proposition commerciale<br />
| propalcard<br />
|-<br />
| Règlement client<br />
| paiementcard<br />
|-<br />
| Règlement fournisseur<br />
| paymentsupplier<br />
|-<br />
| Salaire<br />
| salarycard<br />
|-<br />
| Tache<br />
| projecttaskcard<br />
|-<br />
| Tiers<br />
| thirdpartycard<br />
|-<br />
| Utilisateur<br />
| usercard<br />
|} <br />
:Une liste des contextes est disponible sur le wiki de dolibarr.<br />
*Texte de remplacement : texte de votre choix qui sera affiché à la place du libellé natif.<br />
*Auteur<br />
*Affichage : MyField permet de cacher des onglets. Sélectionnez dans la liste déroulante :<br />
**Visible : le champ sera affiché. Il s'agit du fonctionnement standard de Dolibarr.<br />
**Invisible : le champ sera absent des fiches<br />
**Caché : le champ sera absent des fiches mais pourra être affiché (Show/Hide).<br />
*Couleur : utilisez le sélecteur de couleur pour déterminer la couleur de fond du myField.<br />
*Déplacement : saisissez 1 pour décaler vers la droite, -1 vers la gauche.<br />
*Taille du champ de saisie à définir selon vos besoins. Si laissé vide, la valeur native du champ est conservée.<br />
*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.<br />
{{Note|N'indiquez ici que la partie de l'URL suivant ''/htdocs/''}}<br />
Requête d'affichage : voir section Fonctionnement, ci-dessous<br />
<br />
Suite à la création d'un myField, il sera nécessaire de définir les droits d'accès aux myFields<br />
par groupes d'utilisateurs depuis le lien de menu secondaire du même nom (Voir section<br />
Configuration des droits d'accès).<br />
<br />
===Exemple de personnalisation d'un onglet===<br />
Personnalisons l'onglet fiche des fiches des éléments.<br />
[[file:myfield-Param-onglet-fiche.png|600px]] <br />
<br />
La fiche devient alors :<br />
[[file:myfield-Natif-fiche.png|600px]] <br />
{{Note|Si l'onglet est actif, la couleur sera affichée sur ses bords}}<br />
<br />
==Personnalisation d'un champ avec myField==<br />
===Création du myField===<br />
La page de création d'un myField est accessible depuis le lien de menu secondaire '''Patastools > MyField > Nouveau MyField'''.<br />
[[file:myfield-Page-creation.png|600px]] <br />
<br />
*Type de myField : le champ automatiquement rempli en fonction du lien de menu sur lequel vous avez cliqué.<br />
*Libellé natif du champ : saisissez ici le libellé natif du champ tel qu'il est affiché à l'écran.<br />
*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. Soi 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.<br />
:Liste des principaux contexte :<br />
:{| class="wikitable"<br />
|- style="background-color:orange; font-weight:bold;"<br />
| Fiche<br />
| Contexte<br />
|-<br />
| Adhérent<br />
| membertypecard<br />
|-<br />
| Catégories<br />
| categorycard<br />
|-<br />
| Commandes<br />
| ordercard<br />
|-<br />
| Commande fournisseur<br />
| ordersuppliercard<br />
|-<br />
| Contact<br />
| contactcard<br />
|-<br />
| Contrat<br />
| contractcard<br />
|-<br />
| Don<br />
| doncard<br />
|-<br />
| Entrepôt<br />
| warehousecard<br />
|-<br />
| Expédition<br />
| expeditioncard<br />
|-<br />
| Facture client<br />
| invoicecard<br />
|-<br />
| Facture fournisseur<br />
| suppliercard<br />
|-<br />
| Intervention<br />
| interventioncard<br />
|-<br />
| Livraison<br />
| deliverycard<br />
|-<br />
| Note de frais<br />
| tripandexpensecard<br />
|-<br />
| Produit<br />
| productcard<br />
|-<br />
| Projet<br />
| projectcard<br />
|-<br />
| Proposition commerciale<br />
| propalcard<br />
|-<br />
| Règlement client<br />
| paiementcard<br />
|-<br />
| Règlement fournisseur<br />
| paymentsupplier<br />
|-<br />
| Salaire<br />
| salarycard<br />
|-<br />
| Tache<br />
| projecttaskcard<br />
|-<br />
| Tiers<br />
| thirdpartycard<br />
|-<br />
| Utilisateur<br />
| usercard<br />
|} <br />
:Une liste des contextes est disponible sur le wiki de dolibarr.<br />
*Texte de remplacement : texte de votre choix qui sera affiché à la place du libellé natif.<br />
*Auteur<br />
*Affichage : MyField permet de cacher des champs. Sélectionnez dans la liste déroulante :<br />
**Visible : le champ sera affiché. Il s'agit du fonctionnement standard de Dolibarr.<br />
**Invisible : le champ sera absent des fiches<br />
**Caché : le champ sera absent des fiches mais pourra être affiché (Show/Hide).<br />
*Couleur : utilisez le sélecteur de couleur pour déterminer la couleur de fond du myField.<br />
*Déplacement : saisissez 1 pour remonter d'un champ, -1 pour descendre. : <br />
:{{Note|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}}<br />
*Taille du champ de saisie : à définir selon vos besoins. Si laissé vide, la valeur native du champ est conservée.<br />
*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<br />
:{{Note|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|warn}}<br />
:{{Note|N'indiquez ici que la partie de l'URL suivant ''/htdocs/''}}<br />
*Masque de saisie : le masque de saisie est paramétrable avec les caractères suivants :<br />
**a pour une lettre (A-Z,a-z)<br />
**9 pour un chiffre (0-9)<br />
** * pour un caractère alphanumérique (A-Z,a-z,0-9)<br />
: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<br />
:*UPPERCASE pour forcer la saisie en majuscule.<br />
*Requête d'affichage : Voir section Fonctionnement<br />
<br />
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).<br />
<br />
===Exemple de personnalisation d'un champ===<br />
Personnalisons le champ ''Id. prof. 2 (SIRET)'' des fiches de tiers.<br />
<br />
[[file:myfield_Param-champ.png|600px]] <br />
<br />
Le champ a été paramétré en tant qu'invisible. 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 :<br />
<br />
[[file:Myfield-champ.png|600px]] <br />
<br />
En édition du champ, le masque sera activé et ne permettra que la saisie de chiffres (masque saisi 999 999 999 99999) et sa complétion vérifiée (rendu obligatoire) pour empêcher l'enregistrement de la page sans qu'il ne soit rempli :<br />
<br />
[[file:myfield-Masque.png]]<br />
<br />
==Personnalisation d'un myField de liste==<br />
===Création du myField===<br />
Les mylist de liste permettent de limiter l'affichage de champs.<br />
Masquons le champ Tiers de la liste des contrats avec le myField suivant :<br />
[[file:Myfield-masque-tiers.png|600px]]<br />
<br />
Liste des principaux contexte :<br />
{| class="wikitable"<br />
|- style="background-color:orange; font-weight:bold;"<br />
| Liste<br />
| Contexte<br />
|-<br />
| Contrat<br />
| contractlist<br />
|-<br />
| Proposition commerciale<br />
| propallist<br />
|- <br />
| Commande<br />
| orderlist<br />
|-<br />
| Facture client<br />
| invoicelist<br />
|-<br />
| Facture fournisseur<br />
| supplierorderlist<br />
|-<br />
| Proposition commerciale fournisseur<br />
| supplier_proposallist<br />
|-<br />
| Intervention<br />
| interventionlist<br />
|-<br />
| Expédition<br />
| shipementlist<br />
|-<br />
| Produits/services<br />
| productservicelist<br />
|} <br />
La liste ne contient plus le champs Tiers, et il n'est pas possible de le sélectionner dans le sélecteur de champs.<br />
<br />
[[file:myfield_Liste-contrats.png|600px]]<br />
<br />
{{Note|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 !}}<br />
<br />
=Requête SQL de traitement=<br />
==Fonctionnement==<br />
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.<br />
<br />
Saisissez ici la requête d'affichage applicable au champs sur l'exemple suivant :<br />
<br />
''#SEL# if llx_product.type=1 FROM llx_product WHERE rowid=#ID#''<br />
<br />
==Exemple==<br />
Avec le myfield suivante :<br />
<br />
[[file:myfield_Creation_requete.png|600px]] <br />
<br />
On obtient la fiche suivante sur un produit :<br />
<br />
[[file:myfield_Creation_requete_result.png|600px]] <br />
<br />
Tandis que sur la fiche d'un service :<br />
<br />
[[file:myfield_Creation_requete-fiche.png|600px]]<br />
<br />
=Paramétrage des droits d'accès aux myFields, tabs et menus=<br />
==Configuration des droits d'accès==<br />
En tant qu'utilisateur administrateur, tous les myFields vous sont visibles.<br />
{{Note|Sur la page d'accueil du module MyField, l'application des personnalisations est désactivée}}<br />
<br />
Si vous n'avez pas défini de groupes utilisateurs, les myfields sont affichés sur les interfaces de tous les utilsiateurs.<br />
<br />
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 :<br />
<br />
[[file:myfield-Droits-d-acces.png|600px]]<br />
<br />
Il existe quatre droits d'accès :<br />
<br />
{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[File:lecture-off.png]] Bloqué en accès<br />
[[file:lecture-on.png]] Accès en lecture<br />
| [[file:modif-of.png]] Bloqué en modification<br />
[[file:modif-on.png]] Accès en modification<br />
|}<br />
<br />
==Comportement selon les droits d'accès==<br />
*Bloqué en accès ([[file:lecture-off.png]]) : Le champ sera caché aux utilisateurs du groupe. Ils ne pourront pas l'afficher : le lien<br />
''Show/Hide'' ne sera pas actif :<br />
[[file:myfield-User-lecture-.png|600px]] <br />
<br />
*Accès en lecture mais bloqué en modification ([[file:lecture-on.png]][[file:modif-of.png]]): Les utilisateurs du groupe pourront afficher le champ, mais ne pourront pas en modifier le contenu.<br />
[[file:myfield-User-lecture-.png|600px]] <br />
<br />
*Accès en lecture et Accès en modification ([[file:lecture-on.png]][[file:modif-on.png]]) : 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,...) :<br />
[[file:myfield-User-lecture+-modif+.png|600px]]<br />
<br />
=Autres fonctionnalités=<br />
==Import des myField==<br />
Il est possible d'enregistrer une liste de myfields et leurs paramétrages en important un fichier XML.<br />
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'''.<br />
{{Note|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|warn}}<br />
Paramétrer ensuite les droits d'accès des utilisateurs au myField.<br />
<br />
=Questions fréquentes=<br />
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.<br />
Si vous rencontrez une autre erreur que celles décrites ci-dessous lors de l'utilisation de ce module :<br />
#Désactivez et réactivez le module,<br />
#Vérifier sur le ChangeLog si une nouvelle version a été publiée,<br />
#Ré-installez/mettez à jour le module,<br />
#Vérifiez que le remplacement de fichiers natifs de Dolibarr ne soit pas nécessaire au bon fonctionnement du module.<br />
#Vérifiez qu'aucune incompatibilité avec un autre module ne soit indiquée. Le cas échéant, suivez nos préconisations.<br />
<br />
Si, malgré ces manipulations, l'erreur persiste, contactez-nous en utilisant le formulaire dédié (http://docs.patas-monkey.com/support/).<br />
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.<br />
<br />
*Affichage d'un message en haut des pages de Dolibarr<br />
: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<br />
(voir Configuration).<br />
:[[file:Myfield-Message-contexte.png]] <br />
<br />
*Message erreur d'ordonnancement<br />
: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.<br />
:Le message d'erreur s'affiche en bas de page et est le suivant :<br />
:[[file:myfield_Erreur-dbclose-message.png]] <br />
<br />
: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''.<br />
<br />
L'erreur vient de l'inversion des lignes ''llxFooter();'' et ''$db->close();'' en fin de fichier.<br />
Modifiez le code de la page pour obtenir :<br />
[[file:Erreur-dbclose-correction.png]]<br />
<br />
au lieu de :<br />
[[file:Erreur-dbclose.png]]</div>Nomihttps://wiki.patas-monkey.com/index.php?title=Accueil&diff=850Accueil2021-03-29T12:37:24Z<p>Nomi : </p>
<hr />
<div>Bonjour et Bienvenue sur notre wiki, vous trouverez ce site les documentations des modules que nous développons et maintenons.<br />
<br />
Le but étant de rendre accessible la documentation directement à partir des pages du module<br />
<br />
<br />
{{Note|L'ensemble des modules s'installent de manière standard à Dolibarr.<br />
<br />
Vous trouverez dans notre '''[[Guide d'installation]]''' les informations nécessaires pour les installer sur votre environnement.<br />
}}<br />
<br />
== Liste des documentations ==<br />
<br />
{|<br />
|-<br />
| <br />
{| class="wikitable"<br />
|-<br />
! scope="col"| GPAO<br />
! scope="col"| RH<br />
! scope="col"| Amélioration<br />
! scope="col"| Personnalisation<br />
|-<br />
| style="background: lightyellow;" | [[Equipement]]<br />
| style="background: lightgreen;" | [[MatchR]]<br />
| style="background: lightyellow;" | [[customLine]]<br />
| style="background: lightyellow;" | [[myField]]<br />
|-<br />
| style="background: lightyellow;" | [[Factory]]<br />
| style="background: lightblue;" | [[Management]]<br />
| style="background: lightyellow;" | [[customTabs]]<br />
| style="background: lightyellow;" | [[myList]]<br />
|- <br />
| style="background: lightyellow;" | [[reStock]]<br />
| style="background: lightgreen;" | [[mySchedule]]<br />
| style="background: lightblue;" | [[customTooltip]]<br />
| style="background: lightyellow;" | [[myClock]]<br />
|-<br />
| style="background: lightblue;" | [[Localise]]<br />
| style="background: lightblue;" | [[RmindR]]<br />
| style="background: lightblue;" | [[customLink]]<br />
| style="background: lightblue;" | [[myPrint]]<br />
|-<br />
| style="background: lightyellow;" | [[StockMovR]]<br />
| Process<br />
| moreDesc<br />
| style="background: lightblue;" | [[myDoliboard]]<br />
|-<br />
| style="background: lightblue;" | [[Transporteur]]<br />
| style="background: lightblue;" | [[Portofolio]] <br />
| style="background: lightblue;" | [[extraOdt]]<br />
| myDiscount<br />
|-<br />
| myBooking <br />
| <br />
| style="background: lightblue;" | [[coefPricR]]<br />
| Periodic<br />
|-<br />
| <br />
| <br />
| SupplierPricR <br />
| Vadrouille<br />
|-<br />
| <br />
| <br />
| myBroadcast <br />
| ExtraHoney<br />
|-<br />
| <br />
| <br />
| style="background: lightgreen;" | [[Extraprice]]<br />
| style="background: lightblue;" | [[ProjectBudget]]<br />
|}<br />
<br />
| style="vertical-align:top;" |<br />
''' Légende '''<br />
* sans couleur : documentation pas encore en ligne<br />
* <span style="background-color:lightblue">en bleue </span>: ancienne documentation au format pdf<br />
* <span style="background-color:lightyellow">en jaune </span> : documentation en cours de réécriture au format wiki<br />
* <span style="background-color:lightgreen">en vert </span> : documentation ok<br />
<br />
|}<br />
<br />
Vous trouverez aussi bientôt quelques tutoriaux et autres réponses à des questions fréquemment posées.</div>Nomihttps://wiki.patas-monkey.com/index.php?title=Accueil&diff=849Accueil2021-03-29T12:37:06Z<p>Nomi : </p>
<hr />
<div>Bonjour et Bienvenue sur notre wiki, vous trouverez ce site les documentations des modules que nous développons et maintenons.<br />
<br />
Le but étant de rendre accessible la documentation directement à partir des pages du module<br />
<br />
<br />
{{Note|L'ensemble des modules s'installent de manière standard à Dolibarr.<br />
<br />
Vous trouverez dans notre '''[[Guide d'installation]]''' les informations nécessaires pour les installer sur votre environnement.<br />
}}<br />
<br />
== Liste des documentations ==<br />
<br />
{|<br />
|-<br />
| <br />
{| class="wikitable"<br />
|-<br />
! scope="col"| GPAO<br />
! scope="col"| RH<br />
! scope="col"| Amélioration<br />
! scope="col"| Personnalisation<br />
|-<br />
| style="background: lightyellow;" | [[Equipement]]<br />
| style="background: lightygreen;" | [[MatchR]]<br />
| style="background: lightyellow;" | [[customLine]]<br />
| style="background: lightyellow;" | [[myField]]<br />
|-<br />
| style="background: lightyellow;" | [[Factory]]<br />
| style="background: lightblue;" | [[Management]]<br />
| style="background: lightyellow;" | [[customTabs]]<br />
| style="background: lightyellow;" | [[myList]]<br />
|- <br />
| style="background: lightyellow;" | [[reStock]]<br />
| style="background: lightgreen;" | [[mySchedule]]<br />
| style="background: lightblue;" | [[customTooltip]]<br />
| style="background: lightyellow;" | [[myClock]]<br />
|-<br />
| style="background: lightblue;" | [[Localise]]<br />
| style="background: lightblue;" | [[RmindR]]<br />
| style="background: lightblue;" | [[customLink]]<br />
| style="background: lightblue;" | [[myPrint]]<br />
|-<br />
| style="background: lightyellow;" | [[StockMovR]]<br />
| Process<br />
| moreDesc<br />
| style="background: lightblue;" | [[myDoliboard]]<br />
|-<br />
| style="background: lightblue;" | [[Transporteur]]<br />
| style="background: lightblue;" | [[Portofolio]] <br />
| style="background: lightblue;" | [[extraOdt]]<br />
| myDiscount<br />
|-<br />
| myBooking <br />
| <br />
| style="background: lightblue;" | [[coefPricR]]<br />
| Periodic<br />
|-<br />
| <br />
| <br />
| SupplierPricR <br />
| Vadrouille<br />
|-<br />
| <br />
| <br />
| myBroadcast <br />
| ExtraHoney<br />
|-<br />
| <br />
| <br />
| style="background: lightgreen;" | [[Extraprice]]<br />
| style="background: lightblue;" | [[ProjectBudget]]<br />
|}<br />
<br />
| style="vertical-align:top;" |<br />
''' Légende '''<br />
* sans couleur : documentation pas encore en ligne<br />
* <span style="background-color:lightblue">en bleue </span>: ancienne documentation au format pdf<br />
* <span style="background-color:lightyellow">en jaune </span> : documentation en cours de réécriture au format wiki<br />
* <span style="background-color:lightgreen">en vert </span> : documentation ok<br />
<br />
|}<br />
<br />
Vous trouverez aussi bientôt quelques tutoriaux et autres réponses à des questions fréquemment posées.</div>Nomihttps://wiki.patas-monkey.com/index.php?title=Accueil&diff=848Accueil2021-03-26T15:51:57Z<p>Nomi : /* Liste des documentations */</p>
<hr />
<div>Bonjour et Bienvenue sur notre wiki, vous trouverez ce site les documentations des modules que nous développons et maintenons.<br />
<br />
Le but étant de rendre accessible la documentation directement à partir des pages du module<br />
<br />
<br />
{{Note|L'ensemble des modules s'installent de manière standard à Dolibarr.<br />
<br />
Vous trouverez dans notre '''[[Guide d'installation]]''' les informations nécessaires pour les installer sur votre environnement.<br />
}}<br />
<br />
== Liste des documentations ==<br />
<br />
{|<br />
|-<br />
| <br />
{| class="wikitable"<br />
|-<br />
! scope="col"| GPAO<br />
! scope="col"| RH<br />
! scope="col"| Amélioration<br />
! scope="col"| Personnalisation<br />
|-<br />
| style="background: lightyellow;" | [[Equipement]]<br />
| style="background: lightyellow;" | [[MatchR]]<br />
| style="background: lightyellow;" | [[customLine]]<br />
| style="background: lightyellow;" | [[myField]]<br />
|-<br />
| style="background: lightyellow;" | [[Factory]]<br />
| style="background: lightblue;" | [[Management]]<br />
| style="background: lightyellow;" | [[customTabs]]<br />
| style="background: lightyellow;" | [[myList]]<br />
|- <br />
| style="background: lightyellow;" | [[reStock]]<br />
| style="background: lightgreen;" | [[mySchedule]]<br />
| style="background: lightblue;" | [[customTooltip]]<br />
| style="background: lightyellow;" | [[myClock]]<br />
|-<br />
| style="background: lightblue;" | [[Localise]]<br />
| style="background: lightblue;" | [[RmindR]]<br />
| style="background: lightblue;" | [[customLink]]<br />
| style="background: lightblue;" | [[myPrint]]<br />
|-<br />
| style="background: lightyellow;" | [[StockMovR]]<br />
| Process<br />
| moreDesc<br />
| style="background: lightblue;" | [[myDoliboard]]<br />
|-<br />
| style="background: lightblue;" | [[Transporteur]]<br />
| style="background: lightblue;" | [[Portofolio]] <br />
| style="background: lightblue;" | [[extraOdt]]<br />
| myDiscount<br />
|-<br />
| myBooking <br />
| <br />
| style="background: lightblue;" | [[coefPricR]]<br />
| Periodic<br />
|-<br />
| <br />
| <br />
| SupplierPricR <br />
| Vadrouille<br />
|-<br />
| <br />
| <br />
| myBroadcast <br />
| ExtraHoney<br />
|-<br />
| <br />
| <br />
| style="background: lightgreen;" | [[Extraprice]]<br />
| style="background: lightblue;" | [[ProjectBudget]]<br />
|}<br />
<br />
| style="vertical-align:top;" |<br />
''' Légende '''<br />
* sans couleur : documentation pas encore en ligne<br />
* <span style="background-color:lightblue">en bleue </span>: ancienne documentation au format pdf<br />
* <span style="background-color:lightyellow">en jaune </span> : documentation en cours de réécriture au format wiki<br />
* <span style="background-color:lightgreen">en vert </span> : documentation ok<br />
<br />
|}<br />
<br />
Vous trouverez aussi bientôt quelques tutoriaux et autres réponses à des questions fréquemment posées.</div>Nomihttps://wiki.patas-monkey.com/index.php?title=Fichier:Restock_Remise-cde-fournisseur.png&diff=847Fichier:Restock Remise-cde-fournisseur.png2021-03-26T15:51:36Z<p>Nomi : </p>
<hr />
<div></div>Nomihttps://wiki.patas-monkey.com/index.php?title=ReStock&diff=846ReStock2021-03-26T15:50:31Z<p>Nomi : /* Création de commande automatique après remise */</p>
<hr />
<div><br />
{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[File:restock_250x250.png]]<br />
| Ce module reStock améliore les fonctions achats et approvisionnements dans Dolibarr.<br />
|}<br />
<br />
==Présentation==<br />
À partir de pondérations déclarées dans le paramétrage du module, il calcule automatiquement les quantités de produits à commander :<br />
<br />
[[file:Restock_setup_short.png|600px]] <br />
<br />
et créé les brouillons de commandes fournisseurs :<br />
<br />
[[file:Restock_liste_brouillon.png|600px]]<br />
<br />
Des réapprovisionnements peuvent être effectués à partir les fiches des produits, commandes et factures depuis l'onglet dédié :<br />
<br />
[[file:Restock_commande.png|600px]]<br />
<br />
ReStock ajoute un tableau de liaisons automatiques entre commandes clients et fournisseurs :<br />
<br />
[[file:Restock_liaison1.png|600px]]<br />
<br />
==Paramétrage==<br />
===Configuration===<br />
====Configuration des fonctionnalités du module====<br />
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 [[file:doli-setup.png]] ou [[file:doli-setup-old.png]] en bout de ligne.<br />
<br />
[[file:Restock_liaison1.png|600px]]<br />
<br />
Le tableau de Paramétrage de la pondération selon les états des documents commerciaux permet de sélectionner le niveau de pondération des quantités de produits enregistrés dans les documents commerciaux pour le calcul du réassort.<br />
<br />
{{Note|La sélection de pondération apr éléments est nécessaire pour la prise en compte des stocks limite et d'alerte dans le calcul des quantités à commander.}}<br />
<br />
Le formule de calcul des quantités à commander par produit sera le résultat de la multiplication de la quantité de produits présents dans les éléments selon leur statut par le pourcentage sélectionné auquel sera ajouté le stock d'alerte soit :<br />
<br />
'''Qté''' ''à commander'' = '''Qté''' ''des éléments'' × ''%age du statut'' + '''Qté''' ''stock d'alerte''<br />
<br />
Les éléments et les pourcentages par statut sont cumulable. La formule exacte est donc :<br />
<br />
'''Qté''' ''à commander'' = '''Qté''' ''élément1'' × '''%age''' ''du statut'' + <br />
… + '''Qté''' ''élément n'' × '''%age''' ''du statut'' + '''Qté''' ''stock d'alerte''<br />
<br />
Le tableau Autres propose des options d'affinage de cette formule et d'autres options :<br />
<br />
Le dernier tableau de la page de configuration du module affiche une liste d'informations techniques. Si vous rencontrez un erreur dans l'utilisation du modules, ces informations pourront vous être demandées afin de mieux identifier les causes du problème :<br />
<br />
[[file:infotechniques.png|600px]]<br />
<br />
===Calcul de quantités de réapprovisionnement===<br />
Ces options déterminent la prise en compte ou non des quantités en stock et en commandes fournisseurs :<br />
*'''Tout'''<br />
:seront prises en comptes les quantités de produits en cours de commande fournisseur et en stock en déduction de la formule brute.<br />
<br />
:La formule appliquée sera la quantité de produits présents dans les éléments selon leur statut multiplié par le pourcentage sélectionné – quantité de produits en stock –quantité de produits en commande fournisseur soit :<br />
:'''Qté''' ''à commander'' = '''Qté''' ''des éléments'' × '''%age''' ''du statut'' + '''Qté''' ''stock alerte'' – '''Qté''' ''stock'' – '''Qté''' ''commande''<br />
<br />
*'''Sans prendre le stock en compte'''<br />
:Seules les quantités de produits en commande seront prises en compte.<br />
:La formule appliquée sera la quantité de produits présents dans les éléments selon leur statut multiplié par le pourcentage sélectionné – quantité de produits en commande fournisseur soit :<br />
:'''Qté''' ''à commander'' = '''Qté''' ''des éléments'' × '''%age''' ''du statut'' + '''Qté''' ''stock alerte'' – '''Qté''' ''commande''<br />
<br />
*'''Sans prendre les commandes fournisseurs'''<br />
:Seules les quantités de produits en stock seront prises en compte.<br />
:La formule appliquée sera la quantité de produits présents dans les éléments selon leur statut multiplié par le pourcentage sélectionné – quantité de produits en stock soit :<br />
:'''Qté''' ''à commander'' = '''Qté''' ''des éléments'' × '''%age''' ''du statut'' + '''Qté''' ''stock alerte'' – '''Qté''' ''stock''<br />
*'''Ne rien prendre en compte'''<br />
: ni les quantités de produits en stock, ni celles en commandes fournisseurs ne seront prises en compte. La formule appliquée sera la formule brute soit :<br />
:'''Qté''' ''à commander'' = '''Qté''' ''des éléments'' × '''%age''' ''du statut'' + '''Qté''' ''stock alerte''<br />
<br />
===Options de création des commandes fournisseurs brouillon===<br />
*'''Désactivé'''<br />
:La création de brouillons de commandes fournisseurs est désactivée. Aucun brouillon de commande fournisseur ne sera créé.<br />
*'''Actif, une ligne de produit par reStock'''<br />
:Les différents utilisateurs auteurs de différents restocks créeront et alimenteront un même brouillon de commande fournisseur. Ce brouillon de commande fournisseur contiendra autant de lignes d'un même produit que de restock effectués pour ce produit chez le même fournisseur. La quantité à commander de chacune des lignes sera déterminée par les restocks successifs effectués pour ce même produit chez ce même fournisseur.<br />
*'''Actif, une ligne cumulée'''<br />
:Les différents utilisateurs auteurs de différents restocks créeront et alimenteront un même brouillon de commande fournisseur. Ce brouillon de commande fournisseur contiendra une seule ligne de produit dont la quantité sera la somme des restocks successifs effectués pour ce même produit chez ce même fournisseur.<br />
*'''Actif, par utilisateur'''<br />
:Les différents utilisateurs auteurs de différents restocks créeront et alimenteront chacun un brouillon de commande fournisseur. Chaque brouillon de commande fournisseur contiendra autant de lignes d'un même produit que de restocks effectués pour ce produit chez le même fournisseur. La quantité à commander de chacune des lignes sera déterminée par les restocks successifs effectués pour ce même produit chez ce même fournisseur.<br />
*'''Actif, une ligne cumulée par utilisateur'''<br />
:Les différents utilisateurs auteur de différents restocks créeront et alimenteront chacun un brouillon de commande fournisseur. Ce brouillon de commande fournisseur contiendra une seule ligne de produit dont la quantité sera la somme des restocks successifs effectués pour ce même produit chez ce même fournisseur.<br />
<br />
Pour en savoir plus sur les autres fonctionnalités, voir Création de commande automatique après remise plus loin.<br />
<br />
==Démarrage==<br />
Les fonctionnalités de reStock sont accessibles depuis l'onglet de menu principal XXX. <br />
<br />
{| class="wikitable"<br />
| [[file:restock_Menusecondaire.png]]<br />
| style="vertical-align:top;" | <br />
Votre menu secondaire présente alors les entrées de menu ci-contre.<br />
Le lien de menu secondaire reStock affiche la page du reStock principal. Pour les reStocks depuis les factures et commandes, un onglet sera affiché sur les fiches des éléments.<br />
{{Note|Le lien de menu secondaire reStock affiche la page du reStock principal. Pour les reStocks depuis les factures et commandes, un onglet sera affiché sur les fiches des éléments|warn}} <br />
|}<br />
<br />
==Différentes types de reStock==<br />
===Restock général===<br />
Le restock général est accessible depuis les liens de menu '''Produits/services > Produits > ReStock'''<br />
<br />
[[file:restock_Menusecondaire.png]]<br />
<br />
Ce lien affichera un tableau avec les quantités a commander par produit selon les paramétrages appliqués dans le configuration du module.<br />
{{Note|Les quantités suggérées par reStock restent modifiables par l'utilisateur. Pour ne pas commander un produit, saisissez une quantité à 0.}}<br />
<br />
====Exemple simple====<br />
Partons de la situation suivante :<br />
Signature d'un proposition commerciale de 20 produits.<br />
<br />
[[file:restock_Exemplesimple1.png|600px]]<br />
<br />
avec les paramétrages de reStock suivants :<br />
<br />
[[file:restock_Exemplesimple2.png|600px]]<br />
<br />
Et appliquons les différentes méthodes de calcul du réapprovisionnement :<br />
*Calcul des quantités de réapprovisionnement : '''Tout'''<br />
:'''Qté''' ''à commander'' = '''Qté''' ''proposition commerciale × 100%signée '' + '''Qté''' ''stock d'alerte'' – '''Qté''' ''en stock'' – '''Qté''' ''en commande''<br />
:[[file:Restock_tout.png|600px]] <br />
*Calcul des quantités de réapprovisionnement : '''Sans prendre le stock en compte''<br />
:'''Qté''' ''à commander'' = '''Qté''' ''proposition commerciale × 100%signée'' + '''Qté''' ''stock d'alerte'' – '''Qté''' ''en commande''<br />
:[[file:Restock_sans-stock.png|600px]]<br />
*Calcul des quantités de réapprovisionnement : '''Sans les commandes fournisseurs'''<br />
:'''Qté''' ''à commander'' = '''Qté''' ''proposition commerciale × 100%signée'' + '''Qté''' ''stock d'alerte'' – '''Qté''' ''en stock''<br />
:[[file:Restock_sans-commande.png|600px]]<br />
*Calcul des quantités de réapprovisionnement : '''Sans rien prendre en compte'''<br />
:'''Qté''' ''à commander'' = '''Qté''' ''proposition commerciale × 100%signée'' + '''Qté''' ''stock d'alerte''<br />
:[[file:Restock_rien.png|600px]]<br />
<br />
====Exemple plus complet====<br />
Partons de la situation suivante :<br />
<br />
Signature d'un proposition commerciale de 20 produits – Facture brouillon de 6 produits<br />
[[file:restock_Exemplecomplexe1.png|600px]] <br />
<br />
avec les paramétrages de reStock suivants :<br />
<br />
[[file:restock_Exemplecomplexe2.png|600px]]<br />
<br />
Et appliquons les différentes méthodes de calcul du réapprovisionnement :<br />
*Calcul des quantités de réapprovisionnement : '''Tout'''<br />
:'''Qté''' ''à commander'' = '''Qté''' ''proposition commerciale × 50%signée'' + '''Qté''' ''facture × 50%brouillon'' + '''Qté''' ''stock d'alerte'' – '''Qté''' ''en stock'' – '''Qté''' ''en commande''<br />
*Calcul des quantités de réapprovisionnement : '''Sans prendre le stock en compte'''<br />
:'''Qté''' ''à commander'' = '''Qté''' ''proposition commerciale × 50%signée'' + '''Qté''' ''facture × 50%brouillon'' + '''Qté''' ''stock d'alerte'' – '''Qté''' ''en commande''<br />
*Calcul des quantités de réapprovisionnement : '''Sans les commandes fournisseurs'''<br />
:'''Qté''' ''à commander'' = '''Qté''' ''proposition commerciale × 50%signée'' + '''Qté''' ''facture × 50%brouillon'' + '''Qté''' ''stock d'alerte'' – '''Qté''' ''en stock''<br />
*Calcul des quantités de réapprovisionnement : '''Sans rien prendre en compte'''<br />
:'''Qté''' ''à commander'' = '''Qté''' ''proposition commerciale × 50%signée'' + '''Qté''' ''facture × 50%brouillon'' + '''Qté''' ''stock d'alerte''<br />
<br />
Une fois les quantités confirmées, cliquez sur le bouton Restock pour accéder à la page de sélection des fournisseur et de génération des brouillons de commandes fournisseurs.<br />
<br />
===ReStock sur facturé===<br />
Si vous n'utilisez pas la fonctionnalité des commandes clients dans Dolibarr, les fonctionnalités de ReStock peuvent vous siggérer des quantités à commander en fonction des lignes et quantités présentes dans vos factures clients payées.<br />
<br />
Utiliser le lien ReStock sur facturé accessible depuis '''Compta/Tréso > Factures clients > Restock sur facturé''' :<br />
<br />
[[file:Restock_facturé.png|600px]]<br />
<br />
Une fois les quantités confirmées, cliquez sur le bouton Restock pour accéder à la page de sélection des fournisseur (voir ) puis à la création des brouillons de commandes fournisseurs (voir ) ou<br />
<br />
===ReStock produit===<br />
Le restock produit est un raccourcis permettant la création ou alimentation de brouillons de commandes fournisseurs depuis un produit.<br />
{{Note|La formule déterminée dans les paramétrage ne s'applique, vous n'aurez donc pas de suggestion de quantités|warn}}<br />
{{Note| Cette fonctionnalité est utile et pratique pour déterminer les commandes nécessaires à une fabrication ou dans un produit virtuel/package.}}<br />
Depuis l'onglet ReStock, d'une fiche produit, saisissez la quantité que vous souhaitez commander et cliquer sur le bouton ReStock.<br />
<br />
Dans l'illustration ci-dessous, le produit PDT est un produit virtuel composé de un produit PDT2 et d'un produit PDT3 :<br />
<br />
[[file:Restock_produit.png|600px]] <br />
<br />
Une fois les quantités confirmées, cliquez sur le bouton Restock pour accéder à la page de sélection des fournisseur puis à la création des brouillons de commandes fournisseurs.<br />
<br />
==Sélection des fournisseurs==<br />
Dans le cas de fournisseurs multiples pour un même produit, reStock affiche, pour chaque produit, la liste des fournisseurs et le montant de la ligne en fonction des conditions particulières accordées par les fournisseurs (remises sur quantités).<br />
<br />
[[file:Restock_restock.png|600px]] <br />
<br />
Une fois les quantités confirmées, cliquez sur le bouton Restock pour accéder à la page de sélection des fournisseur puis à la création des brouillons de commandes fournisseurs.<br />
{{Note| Si une quantité minimum de commande n'est pas atteinte, le fournisseur n'est pas sélectionnable. Le fournisseur pourra à nouveau être sélectionné en modifiant la quantité à commander jusqu'à atteindre la quantité minimum de commande.}}<br />
{{Note|Pour ne pas commander un produit, il suffit de ne pas sélectionner de fournisseur . Si cela est déjà fait, modifiez la quantité à 0.}} <br />
{{Note|La quantité à commander est reprise de l'écran précédent, mais est, ici encore, modifiable.<br />
Note : Le bouton recalculer permet le rafraichissement des montants des commandes après les modification de quantités ou de fournisseurs et prix associés.}}<br />
{{Note|La référence du brouillon de la commande fournisseur par défaut comporte la date courante mais reste modifiable.}}<br />
Sélectionnez le fournisseur auquel passer la future commande et cliquez sur création des bons de commandes fournisseurs.<br />
<br />
==Création des brouillons de commandes fournisseur==<br />
En fonction des restocks déjà effectués et selon les paramétrages appliqués au module, vous aurez un ou plusieurs brouillon de commandes fournisseurs par fournisseur qui contiendront une ligne du total de la quantité de produits à commander ou autant de lignes du produit que de reStock effectués avec leur quantité respectives.<br />
<br />
[[file:Restock_liste_brouillon.png|600px]] <br />
<br />
Encore en fonction des paramétrages appliqués au module, ces brouillons de commandes fournisseurs pourront être complétés des quantités de nouveaux restocks soir par de nouvelles lignes, soit par la somme des quantités déjà présentes et des nouvelles (voir Configuration).<br />
<br />
==ReStock sur commandes clients - Liaisons automatiques de commandes clients et fournisseurs==<br />
En effectuant un reStock depuis une commande client,il est possible de créer automatiquement un tableau de liaison des commandes clients et fournisseurs.<br />
<br />
Depuis l'onglet restock d'une commande client, créez le restock :<br />
<br />
[[file:Restock_commande.png|600px]]<br />
<br />
Sélectionnez les fournisseurs et créer les bons de commandes fournisseurs :<br />
<br />
[[file:Restock_commande-selection.png|600px]]<br />
<br />
Les fiches des commandes clients et fournisseurs présenteront en bas de page un tableau des liaisons réalisées par les reStocks :<br />
<br />
[[file:Restock_liaison1.png|600px]] <br />
<br />
Si Une commande client doit être honorée par le passage de plusieurs commandes fournisseurs, elle mentionnera la totalité des commandes fournisseurs liées :<br />
<br />
[[file:Restock_liaison2.png|600px]]<br />
<br />
Inversement, si une commande fournisseur contient les lignes de produits de plusieurs commandes clients, le tableau affichera la totalités des factures clients liées.<br />
<br />
==Autres fonctionnalités==<br />
===Création de commande automatique après remise===<br />
L'activation de la fonctionnalité Création de commande automatique après remise permet la création d'un facture fournisseur d'un montant égale à la commande client remisé du pourcentage sélectionné ici.<br />
{{Note|Cette fonctionnalité désactive les fonctionnalités de réapprovisionnement de reStock sur les commandes clients|warn}}<br />
<br />
<br />
[[file:restock_Remise-client.png|600px]]<br />
<br />
Cliquez sur l'onglet ReStock de la commande client :<br />
<br />
Onglet restock de la commande client<br />
<br />
[[file:restock_Remise-cde-client.png|600px]]<br />
<br />
Création de la commande fournisseur remisée<br />
<br />
[[file:restock_Remise-cde-fournisseur.png|600px]]</div>Nomihttps://wiki.patas-monkey.com/index.php?title=Fichier:Restock_Remise-cde-client.png&diff=845Fichier:Restock Remise-cde-client.png2021-03-26T15:50:00Z<p>Nomi : </p>
<hr />
<div></div>Nomihttps://wiki.patas-monkey.com/index.php?title=Fichier:Restock_Remise-client.png&diff=844Fichier:Restock Remise-client.png2021-03-26T15:48:30Z<p>Nomi : </p>
<hr />
<div></div>Nomihttps://wiki.patas-monkey.com/index.php?title=ReStock&diff=843ReStock2021-03-26T15:47:47Z<p>Nomi : /* ReStock sur commandes clients - Liaisons automatiques de commandes clients et fournisseurs */</p>
<hr />
<div><br />
{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[File:restock_250x250.png]]<br />
| Ce module reStock améliore les fonctions achats et approvisionnements dans Dolibarr.<br />
|}<br />
<br />
==Présentation==<br />
À partir de pondérations déclarées dans le paramétrage du module, il calcule automatiquement les quantités de produits à commander :<br />
<br />
[[file:Restock_setup_short.png|600px]] <br />
<br />
et créé les brouillons de commandes fournisseurs :<br />
<br />
[[file:Restock_liste_brouillon.png|600px]]<br />
<br />
Des réapprovisionnements peuvent être effectués à partir les fiches des produits, commandes et factures depuis l'onglet dédié :<br />
<br />
[[file:Restock_commande.png|600px]]<br />
<br />
ReStock ajoute un tableau de liaisons automatiques entre commandes clients et fournisseurs :<br />
<br />
[[file:Restock_liaison1.png|600px]]<br />
<br />
==Paramétrage==<br />
===Configuration===<br />
====Configuration des fonctionnalités du module====<br />
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 [[file:doli-setup.png]] ou [[file:doli-setup-old.png]] en bout de ligne.<br />
<br />
[[file:Restock_liaison1.png|600px]]<br />
<br />
Le tableau de Paramétrage de la pondération selon les états des documents commerciaux permet de sélectionner le niveau de pondération des quantités de produits enregistrés dans les documents commerciaux pour le calcul du réassort.<br />
<br />
{{Note|La sélection de pondération apr éléments est nécessaire pour la prise en compte des stocks limite et d'alerte dans le calcul des quantités à commander.}}<br />
<br />
Le formule de calcul des quantités à commander par produit sera le résultat de la multiplication de la quantité de produits présents dans les éléments selon leur statut par le pourcentage sélectionné auquel sera ajouté le stock d'alerte soit :<br />
<br />
'''Qté''' ''à commander'' = '''Qté''' ''des éléments'' × ''%age du statut'' + '''Qté''' ''stock d'alerte''<br />
<br />
Les éléments et les pourcentages par statut sont cumulable. La formule exacte est donc :<br />
<br />
'''Qté''' ''à commander'' = '''Qté''' ''élément1'' × '''%age''' ''du statut'' + <br />
… + '''Qté''' ''élément n'' × '''%age''' ''du statut'' + '''Qté''' ''stock d'alerte''<br />
<br />
Le tableau Autres propose des options d'affinage de cette formule et d'autres options :<br />
<br />
Le dernier tableau de la page de configuration du module affiche une liste d'informations techniques. Si vous rencontrez un erreur dans l'utilisation du modules, ces informations pourront vous être demandées afin de mieux identifier les causes du problème :<br />
<br />
[[file:infotechniques.png|600px]]<br />
<br />
===Calcul de quantités de réapprovisionnement===<br />
Ces options déterminent la prise en compte ou non des quantités en stock et en commandes fournisseurs :<br />
*'''Tout'''<br />
:seront prises en comptes les quantités de produits en cours de commande fournisseur et en stock en déduction de la formule brute.<br />
<br />
:La formule appliquée sera la quantité de produits présents dans les éléments selon leur statut multiplié par le pourcentage sélectionné – quantité de produits en stock –quantité de produits en commande fournisseur soit :<br />
:'''Qté''' ''à commander'' = '''Qté''' ''des éléments'' × '''%age''' ''du statut'' + '''Qté''' ''stock alerte'' – '''Qté''' ''stock'' – '''Qté''' ''commande''<br />
<br />
*'''Sans prendre le stock en compte'''<br />
:Seules les quantités de produits en commande seront prises en compte.<br />
:La formule appliquée sera la quantité de produits présents dans les éléments selon leur statut multiplié par le pourcentage sélectionné – quantité de produits en commande fournisseur soit :<br />
:'''Qté''' ''à commander'' = '''Qté''' ''des éléments'' × '''%age''' ''du statut'' + '''Qté''' ''stock alerte'' – '''Qté''' ''commande''<br />
<br />
*'''Sans prendre les commandes fournisseurs'''<br />
:Seules les quantités de produits en stock seront prises en compte.<br />
:La formule appliquée sera la quantité de produits présents dans les éléments selon leur statut multiplié par le pourcentage sélectionné – quantité de produits en stock soit :<br />
:'''Qté''' ''à commander'' = '''Qté''' ''des éléments'' × '''%age''' ''du statut'' + '''Qté''' ''stock alerte'' – '''Qté''' ''stock''<br />
*'''Ne rien prendre en compte'''<br />
: ni les quantités de produits en stock, ni celles en commandes fournisseurs ne seront prises en compte. La formule appliquée sera la formule brute soit :<br />
:'''Qté''' ''à commander'' = '''Qté''' ''des éléments'' × '''%age''' ''du statut'' + '''Qté''' ''stock alerte''<br />
<br />
===Options de création des commandes fournisseurs brouillon===<br />
*'''Désactivé'''<br />
:La création de brouillons de commandes fournisseurs est désactivée. Aucun brouillon de commande fournisseur ne sera créé.<br />
*'''Actif, une ligne de produit par reStock'''<br />
:Les différents utilisateurs auteurs de différents restocks créeront et alimenteront un même brouillon de commande fournisseur. Ce brouillon de commande fournisseur contiendra autant de lignes d'un même produit que de restock effectués pour ce produit chez le même fournisseur. La quantité à commander de chacune des lignes sera déterminée par les restocks successifs effectués pour ce même produit chez ce même fournisseur.<br />
*'''Actif, une ligne cumulée'''<br />
:Les différents utilisateurs auteurs de différents restocks créeront et alimenteront un même brouillon de commande fournisseur. Ce brouillon de commande fournisseur contiendra une seule ligne de produit dont la quantité sera la somme des restocks successifs effectués pour ce même produit chez ce même fournisseur.<br />
*'''Actif, par utilisateur'''<br />
:Les différents utilisateurs auteurs de différents restocks créeront et alimenteront chacun un brouillon de commande fournisseur. Chaque brouillon de commande fournisseur contiendra autant de lignes d'un même produit que de restocks effectués pour ce produit chez le même fournisseur. La quantité à commander de chacune des lignes sera déterminée par les restocks successifs effectués pour ce même produit chez ce même fournisseur.<br />
*'''Actif, une ligne cumulée par utilisateur'''<br />
:Les différents utilisateurs auteur de différents restocks créeront et alimenteront chacun un brouillon de commande fournisseur. Ce brouillon de commande fournisseur contiendra une seule ligne de produit dont la quantité sera la somme des restocks successifs effectués pour ce même produit chez ce même fournisseur.<br />
<br />
Pour en savoir plus sur les autres fonctionnalités, voir Création de commande automatique après remise plus loin.<br />
<br />
==Démarrage==<br />
Les fonctionnalités de reStock sont accessibles depuis l'onglet de menu principal XXX. <br />
<br />
{| class="wikitable"<br />
| [[file:restock_Menusecondaire.png]]<br />
| style="vertical-align:top;" | <br />
Votre menu secondaire présente alors les entrées de menu ci-contre.<br />
Le lien de menu secondaire reStock affiche la page du reStock principal. Pour les reStocks depuis les factures et commandes, un onglet sera affiché sur les fiches des éléments.<br />
{{Note|Le lien de menu secondaire reStock affiche la page du reStock principal. Pour les reStocks depuis les factures et commandes, un onglet sera affiché sur les fiches des éléments|warn}} <br />
|}<br />
<br />
==Différentes types de reStock==<br />
===Restock général===<br />
Le restock général est accessible depuis les liens de menu '''Produits/services > Produits > ReStock'''<br />
<br />
[[file:restock_Menusecondaire.png]]<br />
<br />
Ce lien affichera un tableau avec les quantités a commander par produit selon les paramétrages appliqués dans le configuration du module.<br />
{{Note|Les quantités suggérées par reStock restent modifiables par l'utilisateur. Pour ne pas commander un produit, saisissez une quantité à 0.}}<br />
<br />
====Exemple simple====<br />
Partons de la situation suivante :<br />
Signature d'un proposition commerciale de 20 produits.<br />
<br />
[[file:restock_Exemplesimple1.png|600px]]<br />
<br />
avec les paramétrages de reStock suivants :<br />
<br />
[[file:restock_Exemplesimple2.png|600px]]<br />
<br />
Et appliquons les différentes méthodes de calcul du réapprovisionnement :<br />
*Calcul des quantités de réapprovisionnement : '''Tout'''<br />
:'''Qté''' ''à commander'' = '''Qté''' ''proposition commerciale × 100%signée '' + '''Qté''' ''stock d'alerte'' – '''Qté''' ''en stock'' – '''Qté''' ''en commande''<br />
:[[file:Restock_tout.png|600px]] <br />
*Calcul des quantités de réapprovisionnement : '''Sans prendre le stock en compte''<br />
:'''Qté''' ''à commander'' = '''Qté''' ''proposition commerciale × 100%signée'' + '''Qté''' ''stock d'alerte'' – '''Qté''' ''en commande''<br />
:[[file:Restock_sans-stock.png|600px]]<br />
*Calcul des quantités de réapprovisionnement : '''Sans les commandes fournisseurs'''<br />
:'''Qté''' ''à commander'' = '''Qté''' ''proposition commerciale × 100%signée'' + '''Qté''' ''stock d'alerte'' – '''Qté''' ''en stock''<br />
:[[file:Restock_sans-commande.png|600px]]<br />
*Calcul des quantités de réapprovisionnement : '''Sans rien prendre en compte'''<br />
:'''Qté''' ''à commander'' = '''Qté''' ''proposition commerciale × 100%signée'' + '''Qté''' ''stock d'alerte''<br />
:[[file:Restock_rien.png|600px]]<br />
<br />
====Exemple plus complet====<br />
Partons de la situation suivante :<br />
<br />
Signature d'un proposition commerciale de 20 produits – Facture brouillon de 6 produits<br />
[[file:restock_Exemplecomplexe1.png|600px]] <br />
<br />
avec les paramétrages de reStock suivants :<br />
<br />
[[file:restock_Exemplecomplexe2.png|600px]]<br />
<br />
Et appliquons les différentes méthodes de calcul du réapprovisionnement :<br />
*Calcul des quantités de réapprovisionnement : '''Tout'''<br />
:'''Qté''' ''à commander'' = '''Qté''' ''proposition commerciale × 50%signée'' + '''Qté''' ''facture × 50%brouillon'' + '''Qté''' ''stock d'alerte'' – '''Qté''' ''en stock'' – '''Qté''' ''en commande''<br />
*Calcul des quantités de réapprovisionnement : '''Sans prendre le stock en compte'''<br />
:'''Qté''' ''à commander'' = '''Qté''' ''proposition commerciale × 50%signée'' + '''Qté''' ''facture × 50%brouillon'' + '''Qté''' ''stock d'alerte'' – '''Qté''' ''en commande''<br />
*Calcul des quantités de réapprovisionnement : '''Sans les commandes fournisseurs'''<br />
:'''Qté''' ''à commander'' = '''Qté''' ''proposition commerciale × 50%signée'' + '''Qté''' ''facture × 50%brouillon'' + '''Qté''' ''stock d'alerte'' – '''Qté''' ''en stock''<br />
*Calcul des quantités de réapprovisionnement : '''Sans rien prendre en compte'''<br />
:'''Qté''' ''à commander'' = '''Qté''' ''proposition commerciale × 50%signée'' + '''Qté''' ''facture × 50%brouillon'' + '''Qté''' ''stock d'alerte''<br />
<br />
Une fois les quantités confirmées, cliquez sur le bouton Restock pour accéder à la page de sélection des fournisseur et de génération des brouillons de commandes fournisseurs.<br />
<br />
===ReStock sur facturé===<br />
Si vous n'utilisez pas la fonctionnalité des commandes clients dans Dolibarr, les fonctionnalités de ReStock peuvent vous siggérer des quantités à commander en fonction des lignes et quantités présentes dans vos factures clients payées.<br />
<br />
Utiliser le lien ReStock sur facturé accessible depuis '''Compta/Tréso > Factures clients > Restock sur facturé''' :<br />
<br />
[[file:Restock_facturé.png|600px]]<br />
<br />
Une fois les quantités confirmées, cliquez sur le bouton Restock pour accéder à la page de sélection des fournisseur (voir ) puis à la création des brouillons de commandes fournisseurs (voir ) ou<br />
<br />
===ReStock produit===<br />
Le restock produit est un raccourcis permettant la création ou alimentation de brouillons de commandes fournisseurs depuis un produit.<br />
{{Note|La formule déterminée dans les paramétrage ne s'applique, vous n'aurez donc pas de suggestion de quantités|warn}}<br />
{{Note| Cette fonctionnalité est utile et pratique pour déterminer les commandes nécessaires à une fabrication ou dans un produit virtuel/package.}}<br />
Depuis l'onglet ReStock, d'une fiche produit, saisissez la quantité que vous souhaitez commander et cliquer sur le bouton ReStock.<br />
<br />
Dans l'illustration ci-dessous, le produit PDT est un produit virtuel composé de un produit PDT2 et d'un produit PDT3 :<br />
<br />
[[file:Restock_produit.png|600px]] <br />
<br />
Une fois les quantités confirmées, cliquez sur le bouton Restock pour accéder à la page de sélection des fournisseur puis à la création des brouillons de commandes fournisseurs.<br />
<br />
==Sélection des fournisseurs==<br />
Dans le cas de fournisseurs multiples pour un même produit, reStock affiche, pour chaque produit, la liste des fournisseurs et le montant de la ligne en fonction des conditions particulières accordées par les fournisseurs (remises sur quantités).<br />
<br />
[[file:Restock_restock.png|600px]] <br />
<br />
Une fois les quantités confirmées, cliquez sur le bouton Restock pour accéder à la page de sélection des fournisseur puis à la création des brouillons de commandes fournisseurs.<br />
{{Note| Si une quantité minimum de commande n'est pas atteinte, le fournisseur n'est pas sélectionnable. Le fournisseur pourra à nouveau être sélectionné en modifiant la quantité à commander jusqu'à atteindre la quantité minimum de commande.}}<br />
{{Note|Pour ne pas commander un produit, il suffit de ne pas sélectionner de fournisseur . Si cela est déjà fait, modifiez la quantité à 0.}} <br />
{{Note|La quantité à commander est reprise de l'écran précédent, mais est, ici encore, modifiable.<br />
Note : Le bouton recalculer permet le rafraichissement des montants des commandes après les modification de quantités ou de fournisseurs et prix associés.}}<br />
{{Note|La référence du brouillon de la commande fournisseur par défaut comporte la date courante mais reste modifiable.}}<br />
Sélectionnez le fournisseur auquel passer la future commande et cliquez sur création des bons de commandes fournisseurs.<br />
<br />
==Création des brouillons de commandes fournisseur==<br />
En fonction des restocks déjà effectués et selon les paramétrages appliqués au module, vous aurez un ou plusieurs brouillon de commandes fournisseurs par fournisseur qui contiendront une ligne du total de la quantité de produits à commander ou autant de lignes du produit que de reStock effectués avec leur quantité respectives.<br />
<br />
[[file:Restock_liste_brouillon.png|600px]] <br />
<br />
Encore en fonction des paramétrages appliqués au module, ces brouillons de commandes fournisseurs pourront être complétés des quantités de nouveaux restocks soir par de nouvelles lignes, soit par la somme des quantités déjà présentes et des nouvelles (voir Configuration).<br />
<br />
==ReStock sur commandes clients - Liaisons automatiques de commandes clients et fournisseurs==<br />
En effectuant un reStock depuis une commande client,il est possible de créer automatiquement un tableau de liaison des commandes clients et fournisseurs.<br />
<br />
Depuis l'onglet restock d'une commande client, créez le restock :<br />
<br />
[[file:Restock_commande.png|600px]]<br />
<br />
Sélectionnez les fournisseurs et créer les bons de commandes fournisseurs :<br />
<br />
[[file:Restock_commande-selection.png|600px]]<br />
<br />
Les fiches des commandes clients et fournisseurs présenteront en bas de page un tableau des liaisons réalisées par les reStocks :<br />
<br />
[[file:Restock_liaison1.png|600px]] <br />
<br />
Si Une commande client doit être honorée par le passage de plusieurs commandes fournisseurs, elle mentionnera la totalité des commandes fournisseurs liées :<br />
<br />
[[file:Restock_liaison2.png|600px]]<br />
<br />
Inversement, si une commande fournisseur contient les lignes de produits de plusieurs commandes clients, le tableau affichera la totalités des factures clients liées.<br />
<br />
==Autres fonctionnalités==<br />
===Création de commande automatique après remise===<br />
L'activation de la fonctionnalité Création de commande automatique après remise permet la création d'un facture fournisseur d'un montant égale à la commande client remisé du pourcentage sélectionné ici.<br />
{{Note|Cette fonctionnalité désactive les fonctionnalités de réapprovisionnement de reStock sur les commandes clients|warn}}<br />
<br />
<br />
[[file:|600px]]<br />
<br />
Cliquez sur l'onglet ReStock de la commande client :<br />
<br />
Onglet restock de la commande client<br />
<br />
[[file:|600px]]<br />
<br />
Création de la commande fournisseur remisée<br />
<br />
[[file:|600px]]</div>Nomihttps://wiki.patas-monkey.com/index.php?title=Fichier:Restock_liaison2.png&diff=842Fichier:Restock liaison2.png2021-03-26T15:47:43Z<p>Nomi : </p>
<hr />
<div></div>Nomihttps://wiki.patas-monkey.com/index.php?title=Fichier:Restock_commande-selection.png&diff=841Fichier:Restock commande-selection.png2021-03-26T15:46:34Z<p>Nomi : </p>
<hr />
<div></div>Nomihttps://wiki.patas-monkey.com/index.php?title=ReStock&diff=840ReStock2021-03-26T15:45:10Z<p>Nomi : /* Création des brouillons de commandes fournisseur */</p>
<hr />
<div><br />
{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[File:restock_250x250.png]]<br />
| Ce module reStock améliore les fonctions achats et approvisionnements dans Dolibarr.<br />
|}<br />
<br />
==Présentation==<br />
À partir de pondérations déclarées dans le paramétrage du module, il calcule automatiquement les quantités de produits à commander :<br />
<br />
[[file:Restock_setup_short.png|600px]] <br />
<br />
et créé les brouillons de commandes fournisseurs :<br />
<br />
[[file:Restock_liste_brouillon.png|600px]]<br />
<br />
Des réapprovisionnements peuvent être effectués à partir les fiches des produits, commandes et factures depuis l'onglet dédié :<br />
<br />
[[file:Restock_commande.png|600px]]<br />
<br />
ReStock ajoute un tableau de liaisons automatiques entre commandes clients et fournisseurs :<br />
<br />
[[file:Restock_liaison1.png|600px]]<br />
<br />
==Paramétrage==<br />
===Configuration===<br />
====Configuration des fonctionnalités du module====<br />
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 [[file:doli-setup.png]] ou [[file:doli-setup-old.png]] en bout de ligne.<br />
<br />
[[file:Restock_liaison1.png|600px]]<br />
<br />
Le tableau de Paramétrage de la pondération selon les états des documents commerciaux permet de sélectionner le niveau de pondération des quantités de produits enregistrés dans les documents commerciaux pour le calcul du réassort.<br />
<br />
{{Note|La sélection de pondération apr éléments est nécessaire pour la prise en compte des stocks limite et d'alerte dans le calcul des quantités à commander.}}<br />
<br />
Le formule de calcul des quantités à commander par produit sera le résultat de la multiplication de la quantité de produits présents dans les éléments selon leur statut par le pourcentage sélectionné auquel sera ajouté le stock d'alerte soit :<br />
<br />
'''Qté''' ''à commander'' = '''Qté''' ''des éléments'' × ''%age du statut'' + '''Qté''' ''stock d'alerte''<br />
<br />
Les éléments et les pourcentages par statut sont cumulable. La formule exacte est donc :<br />
<br />
'''Qté''' ''à commander'' = '''Qté''' ''élément1'' × '''%age''' ''du statut'' + <br />
… + '''Qté''' ''élément n'' × '''%age''' ''du statut'' + '''Qté''' ''stock d'alerte''<br />
<br />
Le tableau Autres propose des options d'affinage de cette formule et d'autres options :<br />
<br />
Le dernier tableau de la page de configuration du module affiche une liste d'informations techniques. Si vous rencontrez un erreur dans l'utilisation du modules, ces informations pourront vous être demandées afin de mieux identifier les causes du problème :<br />
<br />
[[file:infotechniques.png|600px]]<br />
<br />
===Calcul de quantités de réapprovisionnement===<br />
Ces options déterminent la prise en compte ou non des quantités en stock et en commandes fournisseurs :<br />
*'''Tout'''<br />
:seront prises en comptes les quantités de produits en cours de commande fournisseur et en stock en déduction de la formule brute.<br />
<br />
:La formule appliquée sera la quantité de produits présents dans les éléments selon leur statut multiplié par le pourcentage sélectionné – quantité de produits en stock –quantité de produits en commande fournisseur soit :<br />
:'''Qté''' ''à commander'' = '''Qté''' ''des éléments'' × '''%age''' ''du statut'' + '''Qté''' ''stock alerte'' – '''Qté''' ''stock'' – '''Qté''' ''commande''<br />
<br />
*'''Sans prendre le stock en compte'''<br />
:Seules les quantités de produits en commande seront prises en compte.<br />
:La formule appliquée sera la quantité de produits présents dans les éléments selon leur statut multiplié par le pourcentage sélectionné – quantité de produits en commande fournisseur soit :<br />
:'''Qté''' ''à commander'' = '''Qté''' ''des éléments'' × '''%age''' ''du statut'' + '''Qté''' ''stock alerte'' – '''Qté''' ''commande''<br />
<br />
*'''Sans prendre les commandes fournisseurs'''<br />
:Seules les quantités de produits en stock seront prises en compte.<br />
:La formule appliquée sera la quantité de produits présents dans les éléments selon leur statut multiplié par le pourcentage sélectionné – quantité de produits en stock soit :<br />
:'''Qté''' ''à commander'' = '''Qté''' ''des éléments'' × '''%age''' ''du statut'' + '''Qté''' ''stock alerte'' – '''Qté''' ''stock''<br />
*'''Ne rien prendre en compte'''<br />
: ni les quantités de produits en stock, ni celles en commandes fournisseurs ne seront prises en compte. La formule appliquée sera la formule brute soit :<br />
:'''Qté''' ''à commander'' = '''Qté''' ''des éléments'' × '''%age''' ''du statut'' + '''Qté''' ''stock alerte''<br />
<br />
===Options de création des commandes fournisseurs brouillon===<br />
*'''Désactivé'''<br />
:La création de brouillons de commandes fournisseurs est désactivée. Aucun brouillon de commande fournisseur ne sera créé.<br />
*'''Actif, une ligne de produit par reStock'''<br />
:Les différents utilisateurs auteurs de différents restocks créeront et alimenteront un même brouillon de commande fournisseur. Ce brouillon de commande fournisseur contiendra autant de lignes d'un même produit que de restock effectués pour ce produit chez le même fournisseur. La quantité à commander de chacune des lignes sera déterminée par les restocks successifs effectués pour ce même produit chez ce même fournisseur.<br />
*'''Actif, une ligne cumulée'''<br />
:Les différents utilisateurs auteurs de différents restocks créeront et alimenteront un même brouillon de commande fournisseur. Ce brouillon de commande fournisseur contiendra une seule ligne de produit dont la quantité sera la somme des restocks successifs effectués pour ce même produit chez ce même fournisseur.<br />
*'''Actif, par utilisateur'''<br />
:Les différents utilisateurs auteurs de différents restocks créeront et alimenteront chacun un brouillon de commande fournisseur. Chaque brouillon de commande fournisseur contiendra autant de lignes d'un même produit que de restocks effectués pour ce produit chez le même fournisseur. La quantité à commander de chacune des lignes sera déterminée par les restocks successifs effectués pour ce même produit chez ce même fournisseur.<br />
*'''Actif, une ligne cumulée par utilisateur'''<br />
:Les différents utilisateurs auteur de différents restocks créeront et alimenteront chacun un brouillon de commande fournisseur. Ce brouillon de commande fournisseur contiendra une seule ligne de produit dont la quantité sera la somme des restocks successifs effectués pour ce même produit chez ce même fournisseur.<br />
<br />
Pour en savoir plus sur les autres fonctionnalités, voir Création de commande automatique après remise plus loin.<br />
<br />
==Démarrage==<br />
Les fonctionnalités de reStock sont accessibles depuis l'onglet de menu principal XXX. <br />
<br />
{| class="wikitable"<br />
| [[file:restock_Menusecondaire.png]]<br />
| style="vertical-align:top;" | <br />
Votre menu secondaire présente alors les entrées de menu ci-contre.<br />
Le lien de menu secondaire reStock affiche la page du reStock principal. Pour les reStocks depuis les factures et commandes, un onglet sera affiché sur les fiches des éléments.<br />
{{Note|Le lien de menu secondaire reStock affiche la page du reStock principal. Pour les reStocks depuis les factures et commandes, un onglet sera affiché sur les fiches des éléments|warn}} <br />
|}<br />
<br />
==Différentes types de reStock==<br />
===Restock général===<br />
Le restock général est accessible depuis les liens de menu '''Produits/services > Produits > ReStock'''<br />
<br />
[[file:restock_Menusecondaire.png]]<br />
<br />
Ce lien affichera un tableau avec les quantités a commander par produit selon les paramétrages appliqués dans le configuration du module.<br />
{{Note|Les quantités suggérées par reStock restent modifiables par l'utilisateur. Pour ne pas commander un produit, saisissez une quantité à 0.}}<br />
<br />
====Exemple simple====<br />
Partons de la situation suivante :<br />
Signature d'un proposition commerciale de 20 produits.<br />
<br />
[[file:restock_Exemplesimple1.png|600px]]<br />
<br />
avec les paramétrages de reStock suivants :<br />
<br />
[[file:restock_Exemplesimple2.png|600px]]<br />
<br />
Et appliquons les différentes méthodes de calcul du réapprovisionnement :<br />
*Calcul des quantités de réapprovisionnement : '''Tout'''<br />
:'''Qté''' ''à commander'' = '''Qté''' ''proposition commerciale × 100%signée '' + '''Qté''' ''stock d'alerte'' – '''Qté''' ''en stock'' – '''Qté''' ''en commande''<br />
:[[file:Restock_tout.png|600px]] <br />
*Calcul des quantités de réapprovisionnement : '''Sans prendre le stock en compte''<br />
:'''Qté''' ''à commander'' = '''Qté''' ''proposition commerciale × 100%signée'' + '''Qté''' ''stock d'alerte'' – '''Qté''' ''en commande''<br />
:[[file:Restock_sans-stock.png|600px]]<br />
*Calcul des quantités de réapprovisionnement : '''Sans les commandes fournisseurs'''<br />
:'''Qté''' ''à commander'' = '''Qté''' ''proposition commerciale × 100%signée'' + '''Qté''' ''stock d'alerte'' – '''Qté''' ''en stock''<br />
:[[file:Restock_sans-commande.png|600px]]<br />
*Calcul des quantités de réapprovisionnement : '''Sans rien prendre en compte'''<br />
:'''Qté''' ''à commander'' = '''Qté''' ''proposition commerciale × 100%signée'' + '''Qté''' ''stock d'alerte''<br />
:[[file:Restock_rien.png|600px]]<br />
<br />
====Exemple plus complet====<br />
Partons de la situation suivante :<br />
<br />
Signature d'un proposition commerciale de 20 produits – Facture brouillon de 6 produits<br />
[[file:restock_Exemplecomplexe1.png|600px]] <br />
<br />
avec les paramétrages de reStock suivants :<br />
<br />
[[file:restock_Exemplecomplexe2.png|600px]]<br />
<br />
Et appliquons les différentes méthodes de calcul du réapprovisionnement :<br />
*Calcul des quantités de réapprovisionnement : '''Tout'''<br />
:'''Qté''' ''à commander'' = '''Qté''' ''proposition commerciale × 50%signée'' + '''Qté''' ''facture × 50%brouillon'' + '''Qté''' ''stock d'alerte'' – '''Qté''' ''en stock'' – '''Qté''' ''en commande''<br />
*Calcul des quantités de réapprovisionnement : '''Sans prendre le stock en compte'''<br />
:'''Qté''' ''à commander'' = '''Qté''' ''proposition commerciale × 50%signée'' + '''Qté''' ''facture × 50%brouillon'' + '''Qté''' ''stock d'alerte'' – '''Qté''' ''en commande''<br />
*Calcul des quantités de réapprovisionnement : '''Sans les commandes fournisseurs'''<br />
:'''Qté''' ''à commander'' = '''Qté''' ''proposition commerciale × 50%signée'' + '''Qté''' ''facture × 50%brouillon'' + '''Qté''' ''stock d'alerte'' – '''Qté''' ''en stock''<br />
*Calcul des quantités de réapprovisionnement : '''Sans rien prendre en compte'''<br />
:'''Qté''' ''à commander'' = '''Qté''' ''proposition commerciale × 50%signée'' + '''Qté''' ''facture × 50%brouillon'' + '''Qté''' ''stock d'alerte''<br />
<br />
Une fois les quantités confirmées, cliquez sur le bouton Restock pour accéder à la page de sélection des fournisseur et de génération des brouillons de commandes fournisseurs.<br />
<br />
===ReStock sur facturé===<br />
Si vous n'utilisez pas la fonctionnalité des commandes clients dans Dolibarr, les fonctionnalités de ReStock peuvent vous siggérer des quantités à commander en fonction des lignes et quantités présentes dans vos factures clients payées.<br />
<br />
Utiliser le lien ReStock sur facturé accessible depuis '''Compta/Tréso > Factures clients > Restock sur facturé''' :<br />
<br />
[[file:Restock_facturé.png|600px]]<br />
<br />
Une fois les quantités confirmées, cliquez sur le bouton Restock pour accéder à la page de sélection des fournisseur (voir ) puis à la création des brouillons de commandes fournisseurs (voir ) ou<br />
<br />
===ReStock produit===<br />
Le restock produit est un raccourcis permettant la création ou alimentation de brouillons de commandes fournisseurs depuis un produit.<br />
{{Note|La formule déterminée dans les paramétrage ne s'applique, vous n'aurez donc pas de suggestion de quantités|warn}}<br />
{{Note| Cette fonctionnalité est utile et pratique pour déterminer les commandes nécessaires à une fabrication ou dans un produit virtuel/package.}}<br />
Depuis l'onglet ReStock, d'une fiche produit, saisissez la quantité que vous souhaitez commander et cliquer sur le bouton ReStock.<br />
<br />
Dans l'illustration ci-dessous, le produit PDT est un produit virtuel composé de un produit PDT2 et d'un produit PDT3 :<br />
<br />
[[file:Restock_produit.png|600px]] <br />
<br />
Une fois les quantités confirmées, cliquez sur le bouton Restock pour accéder à la page de sélection des fournisseur puis à la création des brouillons de commandes fournisseurs.<br />
<br />
==Sélection des fournisseurs==<br />
Dans le cas de fournisseurs multiples pour un même produit, reStock affiche, pour chaque produit, la liste des fournisseurs et le montant de la ligne en fonction des conditions particulières accordées par les fournisseurs (remises sur quantités).<br />
<br />
[[file:Restock_restock.png|600px]] <br />
<br />
Une fois les quantités confirmées, cliquez sur le bouton Restock pour accéder à la page de sélection des fournisseur puis à la création des brouillons de commandes fournisseurs.<br />
{{Note| Si une quantité minimum de commande n'est pas atteinte, le fournisseur n'est pas sélectionnable. Le fournisseur pourra à nouveau être sélectionné en modifiant la quantité à commander jusqu'à atteindre la quantité minimum de commande.}}<br />
{{Note|Pour ne pas commander un produit, il suffit de ne pas sélectionner de fournisseur . Si cela est déjà fait, modifiez la quantité à 0.}} <br />
{{Note|La quantité à commander est reprise de l'écran précédent, mais est, ici encore, modifiable.<br />
Note : Le bouton recalculer permet le rafraichissement des montants des commandes après les modification de quantités ou de fournisseurs et prix associés.}}<br />
{{Note|La référence du brouillon de la commande fournisseur par défaut comporte la date courante mais reste modifiable.}}<br />
Sélectionnez le fournisseur auquel passer la future commande et cliquez sur création des bons de commandes fournisseurs.<br />
<br />
==Création des brouillons de commandes fournisseur==<br />
En fonction des restocks déjà effectués et selon les paramétrages appliqués au module, vous aurez un ou plusieurs brouillon de commandes fournisseurs par fournisseur qui contiendront une ligne du total de la quantité de produits à commander ou autant de lignes du produit que de reStock effectués avec leur quantité respectives.<br />
<br />
[[file:Restock_liste_brouillon.png|600px]] <br />
<br />
Encore en fonction des paramétrages appliqués au module, ces brouillons de commandes fournisseurs pourront être complétés des quantités de nouveaux restocks soir par de nouvelles lignes, soit par la somme des quantités déjà présentes et des nouvelles (voir Configuration).<br />
<br />
==ReStock sur commandes clients - Liaisons automatiques de commandes clients et fournisseurs==<br />
En effectuant un reStock depuis une commande client,il est possible de créer automatiquement un tableau de liaison des commandes clients et fournisseurs.<br />
<br />
Depuis l'onglet restock d'une commande client, créez le restock :<br />
<br />
[[file:|600px]]<br />
<br />
Sélectionnez les fournisseurs et créer les bons de commandes fournisseurs :<br />
<br />
[[file:|600px]]<br />
<br />
Les fiches des commandes clients et fournisseurs présenteront en bas de page un tableau des liaisons réalisées par les reStocks :<br />
<br />
[[file:|600px]] <br />
<br />
Si Une commande client doit être honorée par le passage de plusieurs commandes fournisseurs, elle mentionnera la totalité des commandes fournisseurs liées :<br />
<br />
[[file:|600px]]<br />
<br />
Inversement, si une commande fournisseur contient les lignes de produits de plusieurs commandes clients, le tableau affichera la totalités des factures clients liées.<br />
<br />
==Autres fonctionnalités==<br />
===Création de commande automatique après remise===<br />
L'activation de la fonctionnalité Création de commande automatique après remise permet la création d'un facture fournisseur d'un montant égale à la commande client remisé du pourcentage sélectionné ici.<br />
{{Note|Cette fonctionnalité désactive les fonctionnalités de réapprovisionnement de reStock sur les commandes clients|warn}}<br />
<br />
<br />
[[file:|600px]]<br />
<br />
Cliquez sur l'onglet ReStock de la commande client :<br />
<br />
Onglet restock de la commande client<br />
<br />
[[file:|600px]]<br />
<br />
Création de la commande fournisseur remisée<br />
<br />
[[file:|600px]]</div>Nomihttps://wiki.patas-monkey.com/index.php?title=ReStock&diff=839ReStock2021-03-26T15:44:18Z<p>Nomi : /* Sélection des fournisseurs */</p>
<hr />
<div><br />
{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[File:restock_250x250.png]]<br />
| Ce module reStock améliore les fonctions achats et approvisionnements dans Dolibarr.<br />
|}<br />
<br />
==Présentation==<br />
À partir de pondérations déclarées dans le paramétrage du module, il calcule automatiquement les quantités de produits à commander :<br />
<br />
[[file:Restock_setup_short.png|600px]] <br />
<br />
et créé les brouillons de commandes fournisseurs :<br />
<br />
[[file:Restock_liste_brouillon.png|600px]]<br />
<br />
Des réapprovisionnements peuvent être effectués à partir les fiches des produits, commandes et factures depuis l'onglet dédié :<br />
<br />
[[file:Restock_commande.png|600px]]<br />
<br />
ReStock ajoute un tableau de liaisons automatiques entre commandes clients et fournisseurs :<br />
<br />
[[file:Restock_liaison1.png|600px]]<br />
<br />
==Paramétrage==<br />
===Configuration===<br />
====Configuration des fonctionnalités du module====<br />
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 [[file:doli-setup.png]] ou [[file:doli-setup-old.png]] en bout de ligne.<br />
<br />
[[file:Restock_liaison1.png|600px]]<br />
<br />
Le tableau de Paramétrage de la pondération selon les états des documents commerciaux permet de sélectionner le niveau de pondération des quantités de produits enregistrés dans les documents commerciaux pour le calcul du réassort.<br />
<br />
{{Note|La sélection de pondération apr éléments est nécessaire pour la prise en compte des stocks limite et d'alerte dans le calcul des quantités à commander.}}<br />
<br />
Le formule de calcul des quantités à commander par produit sera le résultat de la multiplication de la quantité de produits présents dans les éléments selon leur statut par le pourcentage sélectionné auquel sera ajouté le stock d'alerte soit :<br />
<br />
'''Qté''' ''à commander'' = '''Qté''' ''des éléments'' × ''%age du statut'' + '''Qté''' ''stock d'alerte''<br />
<br />
Les éléments et les pourcentages par statut sont cumulable. La formule exacte est donc :<br />
<br />
'''Qté''' ''à commander'' = '''Qté''' ''élément1'' × '''%age''' ''du statut'' + <br />
… + '''Qté''' ''élément n'' × '''%age''' ''du statut'' + '''Qté''' ''stock d'alerte''<br />
<br />
Le tableau Autres propose des options d'affinage de cette formule et d'autres options :<br />
<br />
Le dernier tableau de la page de configuration du module affiche une liste d'informations techniques. Si vous rencontrez un erreur dans l'utilisation du modules, ces informations pourront vous être demandées afin de mieux identifier les causes du problème :<br />
<br />
[[file:infotechniques.png|600px]]<br />
<br />
===Calcul de quantités de réapprovisionnement===<br />
Ces options déterminent la prise en compte ou non des quantités en stock et en commandes fournisseurs :<br />
*'''Tout'''<br />
:seront prises en comptes les quantités de produits en cours de commande fournisseur et en stock en déduction de la formule brute.<br />
<br />
:La formule appliquée sera la quantité de produits présents dans les éléments selon leur statut multiplié par le pourcentage sélectionné – quantité de produits en stock –quantité de produits en commande fournisseur soit :<br />
:'''Qté''' ''à commander'' = '''Qté''' ''des éléments'' × '''%age''' ''du statut'' + '''Qté''' ''stock alerte'' – '''Qté''' ''stock'' – '''Qté''' ''commande''<br />
<br />
*'''Sans prendre le stock en compte'''<br />
:Seules les quantités de produits en commande seront prises en compte.<br />
:La formule appliquée sera la quantité de produits présents dans les éléments selon leur statut multiplié par le pourcentage sélectionné – quantité de produits en commande fournisseur soit :<br />
:'''Qté''' ''à commander'' = '''Qté''' ''des éléments'' × '''%age''' ''du statut'' + '''Qté''' ''stock alerte'' – '''Qté''' ''commande''<br />
<br />
*'''Sans prendre les commandes fournisseurs'''<br />
:Seules les quantités de produits en stock seront prises en compte.<br />
:La formule appliquée sera la quantité de produits présents dans les éléments selon leur statut multiplié par le pourcentage sélectionné – quantité de produits en stock soit :<br />
:'''Qté''' ''à commander'' = '''Qté''' ''des éléments'' × '''%age''' ''du statut'' + '''Qté''' ''stock alerte'' – '''Qté''' ''stock''<br />
*'''Ne rien prendre en compte'''<br />
: ni les quantités de produits en stock, ni celles en commandes fournisseurs ne seront prises en compte. La formule appliquée sera la formule brute soit :<br />
:'''Qté''' ''à commander'' = '''Qté''' ''des éléments'' × '''%age''' ''du statut'' + '''Qté''' ''stock alerte''<br />
<br />
===Options de création des commandes fournisseurs brouillon===<br />
*'''Désactivé'''<br />
:La création de brouillons de commandes fournisseurs est désactivée. Aucun brouillon de commande fournisseur ne sera créé.<br />
*'''Actif, une ligne de produit par reStock'''<br />
:Les différents utilisateurs auteurs de différents restocks créeront et alimenteront un même brouillon de commande fournisseur. Ce brouillon de commande fournisseur contiendra autant de lignes d'un même produit que de restock effectués pour ce produit chez le même fournisseur. La quantité à commander de chacune des lignes sera déterminée par les restocks successifs effectués pour ce même produit chez ce même fournisseur.<br />
*'''Actif, une ligne cumulée'''<br />
:Les différents utilisateurs auteurs de différents restocks créeront et alimenteront un même brouillon de commande fournisseur. Ce brouillon de commande fournisseur contiendra une seule ligne de produit dont la quantité sera la somme des restocks successifs effectués pour ce même produit chez ce même fournisseur.<br />
*'''Actif, par utilisateur'''<br />
:Les différents utilisateurs auteurs de différents restocks créeront et alimenteront chacun un brouillon de commande fournisseur. Chaque brouillon de commande fournisseur contiendra autant de lignes d'un même produit que de restocks effectués pour ce produit chez le même fournisseur. La quantité à commander de chacune des lignes sera déterminée par les restocks successifs effectués pour ce même produit chez ce même fournisseur.<br />
*'''Actif, une ligne cumulée par utilisateur'''<br />
:Les différents utilisateurs auteur de différents restocks créeront et alimenteront chacun un brouillon de commande fournisseur. Ce brouillon de commande fournisseur contiendra une seule ligne de produit dont la quantité sera la somme des restocks successifs effectués pour ce même produit chez ce même fournisseur.<br />
<br />
Pour en savoir plus sur les autres fonctionnalités, voir Création de commande automatique après remise plus loin.<br />
<br />
==Démarrage==<br />
Les fonctionnalités de reStock sont accessibles depuis l'onglet de menu principal XXX. <br />
<br />
{| class="wikitable"<br />
| [[file:restock_Menusecondaire.png]]<br />
| style="vertical-align:top;" | <br />
Votre menu secondaire présente alors les entrées de menu ci-contre.<br />
Le lien de menu secondaire reStock affiche la page du reStock principal. Pour les reStocks depuis les factures et commandes, un onglet sera affiché sur les fiches des éléments.<br />
{{Note|Le lien de menu secondaire reStock affiche la page du reStock principal. Pour les reStocks depuis les factures et commandes, un onglet sera affiché sur les fiches des éléments|warn}} <br />
|}<br />
<br />
==Différentes types de reStock==<br />
===Restock général===<br />
Le restock général est accessible depuis les liens de menu '''Produits/services > Produits > ReStock'''<br />
<br />
[[file:restock_Menusecondaire.png]]<br />
<br />
Ce lien affichera un tableau avec les quantités a commander par produit selon les paramétrages appliqués dans le configuration du module.<br />
{{Note|Les quantités suggérées par reStock restent modifiables par l'utilisateur. Pour ne pas commander un produit, saisissez une quantité à 0.}}<br />
<br />
====Exemple simple====<br />
Partons de la situation suivante :<br />
Signature d'un proposition commerciale de 20 produits.<br />
<br />
[[file:restock_Exemplesimple1.png|600px]]<br />
<br />
avec les paramétrages de reStock suivants :<br />
<br />
[[file:restock_Exemplesimple2.png|600px]]<br />
<br />
Et appliquons les différentes méthodes de calcul du réapprovisionnement :<br />
*Calcul des quantités de réapprovisionnement : '''Tout'''<br />
:'''Qté''' ''à commander'' = '''Qté''' ''proposition commerciale × 100%signée '' + '''Qté''' ''stock d'alerte'' – '''Qté''' ''en stock'' – '''Qté''' ''en commande''<br />
:[[file:Restock_tout.png|600px]] <br />
*Calcul des quantités de réapprovisionnement : '''Sans prendre le stock en compte''<br />
:'''Qté''' ''à commander'' = '''Qté''' ''proposition commerciale × 100%signée'' + '''Qté''' ''stock d'alerte'' – '''Qté''' ''en commande''<br />
:[[file:Restock_sans-stock.png|600px]]<br />
*Calcul des quantités de réapprovisionnement : '''Sans les commandes fournisseurs'''<br />
:'''Qté''' ''à commander'' = '''Qté''' ''proposition commerciale × 100%signée'' + '''Qté''' ''stock d'alerte'' – '''Qté''' ''en stock''<br />
:[[file:Restock_sans-commande.png|600px]]<br />
*Calcul des quantités de réapprovisionnement : '''Sans rien prendre en compte'''<br />
:'''Qté''' ''à commander'' = '''Qté''' ''proposition commerciale × 100%signée'' + '''Qté''' ''stock d'alerte''<br />
:[[file:Restock_rien.png|600px]]<br />
<br />
====Exemple plus complet====<br />
Partons de la situation suivante :<br />
<br />
Signature d'un proposition commerciale de 20 produits – Facture brouillon de 6 produits<br />
[[file:restock_Exemplecomplexe1.png|600px]] <br />
<br />
avec les paramétrages de reStock suivants :<br />
<br />
[[file:restock_Exemplecomplexe2.png|600px]]<br />
<br />
Et appliquons les différentes méthodes de calcul du réapprovisionnement :<br />
*Calcul des quantités de réapprovisionnement : '''Tout'''<br />
:'''Qté''' ''à commander'' = '''Qté''' ''proposition commerciale × 50%signée'' + '''Qté''' ''facture × 50%brouillon'' + '''Qté''' ''stock d'alerte'' – '''Qté''' ''en stock'' – '''Qté''' ''en commande''<br />
*Calcul des quantités de réapprovisionnement : '''Sans prendre le stock en compte'''<br />
:'''Qté''' ''à commander'' = '''Qté''' ''proposition commerciale × 50%signée'' + '''Qté''' ''facture × 50%brouillon'' + '''Qté''' ''stock d'alerte'' – '''Qté''' ''en commande''<br />
*Calcul des quantités de réapprovisionnement : '''Sans les commandes fournisseurs'''<br />
:'''Qté''' ''à commander'' = '''Qté''' ''proposition commerciale × 50%signée'' + '''Qté''' ''facture × 50%brouillon'' + '''Qté''' ''stock d'alerte'' – '''Qté''' ''en stock''<br />
*Calcul des quantités de réapprovisionnement : '''Sans rien prendre en compte'''<br />
:'''Qté''' ''à commander'' = '''Qté''' ''proposition commerciale × 50%signée'' + '''Qté''' ''facture × 50%brouillon'' + '''Qté''' ''stock d'alerte''<br />
<br />
Une fois les quantités confirmées, cliquez sur le bouton Restock pour accéder à la page de sélection des fournisseur et de génération des brouillons de commandes fournisseurs.<br />
<br />
===ReStock sur facturé===<br />
Si vous n'utilisez pas la fonctionnalité des commandes clients dans Dolibarr, les fonctionnalités de ReStock peuvent vous siggérer des quantités à commander en fonction des lignes et quantités présentes dans vos factures clients payées.<br />
<br />
Utiliser le lien ReStock sur facturé accessible depuis '''Compta/Tréso > Factures clients > Restock sur facturé''' :<br />
<br />
[[file:Restock_facturé.png|600px]]<br />
<br />
Une fois les quantités confirmées, cliquez sur le bouton Restock pour accéder à la page de sélection des fournisseur (voir ) puis à la création des brouillons de commandes fournisseurs (voir ) ou<br />
<br />
===ReStock produit===<br />
Le restock produit est un raccourcis permettant la création ou alimentation de brouillons de commandes fournisseurs depuis un produit.<br />
{{Note|La formule déterminée dans les paramétrage ne s'applique, vous n'aurez donc pas de suggestion de quantités|warn}}<br />
{{Note| Cette fonctionnalité est utile et pratique pour déterminer les commandes nécessaires à une fabrication ou dans un produit virtuel/package.}}<br />
Depuis l'onglet ReStock, d'une fiche produit, saisissez la quantité que vous souhaitez commander et cliquer sur le bouton ReStock.<br />
<br />
Dans l'illustration ci-dessous, le produit PDT est un produit virtuel composé de un produit PDT2 et d'un produit PDT3 :<br />
<br />
[[file:Restock_produit.png|600px]] <br />
<br />
Une fois les quantités confirmées, cliquez sur le bouton Restock pour accéder à la page de sélection des fournisseur puis à la création des brouillons de commandes fournisseurs.<br />
<br />
==Sélection des fournisseurs==<br />
Dans le cas de fournisseurs multiples pour un même produit, reStock affiche, pour chaque produit, la liste des fournisseurs et le montant de la ligne en fonction des conditions particulières accordées par les fournisseurs (remises sur quantités).<br />
<br />
[[file:Restock_restock.png|600px]] <br />
<br />
Une fois les quantités confirmées, cliquez sur le bouton Restock pour accéder à la page de sélection des fournisseur puis à la création des brouillons de commandes fournisseurs.<br />
{{Note| Si une quantité minimum de commande n'est pas atteinte, le fournisseur n'est pas sélectionnable. Le fournisseur pourra à nouveau être sélectionné en modifiant la quantité à commander jusqu'à atteindre la quantité minimum de commande.}}<br />
{{Note|Pour ne pas commander un produit, il suffit de ne pas sélectionner de fournisseur . Si cela est déjà fait, modifiez la quantité à 0.}} <br />
{{Note|La quantité à commander est reprise de l'écran précédent, mais est, ici encore, modifiable.<br />
Note : Le bouton recalculer permet le rafraichissement des montants des commandes après les modification de quantités ou de fournisseurs et prix associés.}}<br />
{{Note|La référence du brouillon de la commande fournisseur par défaut comporte la date courante mais reste modifiable.}}<br />
Sélectionnez le fournisseur auquel passer la future commande et cliquez sur création des bons de commandes fournisseurs.<br />
<br />
==Création des brouillons de commandes fournisseur==<br />
En fonction des restocks déjà effectués et selon les paramétrages appliqués au module, vous aurez un ou plusieurs brouillon de commandes fournisseurs par fournisseur qui contiendront une ligne du total de la quantité de produits à commander ou autant de lignes du produit que de reStock effectués avec leur quantité respectives.<br />
<br />
[[file:|600px]] <br />
<br />
Encore en fonction des paramétrages appliqués au module, ces brouillons de commandes fournisseurs pourront être complétés des quantités de nouveaux restocks soir par de nouvelles lignes, soit par la somme des quantités déjà présentes et des nouvelles (voir Configuration).<br />
<br />
==ReStock sur commandes clients - Liaisons automatiques de commandes clients et fournisseurs==<br />
En effectuant un reStock depuis une commande client,il est possible de créer automatiquement un tableau de liaison des commandes clients et fournisseurs.<br />
<br />
Depuis l'onglet restock d'une commande client, créez le restock :<br />
<br />
[[file:|600px]]<br />
<br />
Sélectionnez les fournisseurs et créer les bons de commandes fournisseurs :<br />
<br />
[[file:|600px]]<br />
<br />
Les fiches des commandes clients et fournisseurs présenteront en bas de page un tableau des liaisons réalisées par les reStocks :<br />
<br />
[[file:|600px]] <br />
<br />
Si Une commande client doit être honorée par le passage de plusieurs commandes fournisseurs, elle mentionnera la totalité des commandes fournisseurs liées :<br />
<br />
[[file:|600px]]<br />
<br />
Inversement, si une commande fournisseur contient les lignes de produits de plusieurs commandes clients, le tableau affichera la totalités des factures clients liées.<br />
<br />
==Autres fonctionnalités==<br />
===Création de commande automatique après remise===<br />
L'activation de la fonctionnalité Création de commande automatique après remise permet la création d'un facture fournisseur d'un montant égale à la commande client remisé du pourcentage sélectionné ici.<br />
{{Note|Cette fonctionnalité désactive les fonctionnalités de réapprovisionnement de reStock sur les commandes clients|warn}}<br />
<br />
<br />
[[file:|600px]]<br />
<br />
Cliquez sur l'onglet ReStock de la commande client :<br />
<br />
Onglet restock de la commande client<br />
<br />
[[file:|600px]]<br />
<br />
Création de la commande fournisseur remisée<br />
<br />
[[file:|600px]]</div>Nomihttps://wiki.patas-monkey.com/index.php?title=Fichier:Restock_restock.png&diff=838Fichier:Restock restock.png2021-03-26T15:44:14Z<p>Nomi : </p>
<hr />
<div></div>Nomihttps://wiki.patas-monkey.com/index.php?title=ReStock&diff=837ReStock2021-03-26T15:43:40Z<p>Nomi : /* ReStock produit */</p>
<hr />
<div><br />
{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[File:restock_250x250.png]]<br />
| Ce module reStock améliore les fonctions achats et approvisionnements dans Dolibarr.<br />
|}<br />
<br />
==Présentation==<br />
À partir de pondérations déclarées dans le paramétrage du module, il calcule automatiquement les quantités de produits à commander :<br />
<br />
[[file:Restock_setup_short.png|600px]] <br />
<br />
et créé les brouillons de commandes fournisseurs :<br />
<br />
[[file:Restock_liste_brouillon.png|600px]]<br />
<br />
Des réapprovisionnements peuvent être effectués à partir les fiches des produits, commandes et factures depuis l'onglet dédié :<br />
<br />
[[file:Restock_commande.png|600px]]<br />
<br />
ReStock ajoute un tableau de liaisons automatiques entre commandes clients et fournisseurs :<br />
<br />
[[file:Restock_liaison1.png|600px]]<br />
<br />
==Paramétrage==<br />
===Configuration===<br />
====Configuration des fonctionnalités du module====<br />
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 [[file:doli-setup.png]] ou [[file:doli-setup-old.png]] en bout de ligne.<br />
<br />
[[file:Restock_liaison1.png|600px]]<br />
<br />
Le tableau de Paramétrage de la pondération selon les états des documents commerciaux permet de sélectionner le niveau de pondération des quantités de produits enregistrés dans les documents commerciaux pour le calcul du réassort.<br />
<br />
{{Note|La sélection de pondération apr éléments est nécessaire pour la prise en compte des stocks limite et d'alerte dans le calcul des quantités à commander.}}<br />
<br />
Le formule de calcul des quantités à commander par produit sera le résultat de la multiplication de la quantité de produits présents dans les éléments selon leur statut par le pourcentage sélectionné auquel sera ajouté le stock d'alerte soit :<br />
<br />
'''Qté''' ''à commander'' = '''Qté''' ''des éléments'' × ''%age du statut'' + '''Qté''' ''stock d'alerte''<br />
<br />
Les éléments et les pourcentages par statut sont cumulable. La formule exacte est donc :<br />
<br />
'''Qté''' ''à commander'' = '''Qté''' ''élément1'' × '''%age''' ''du statut'' + <br />
… + '''Qté''' ''élément n'' × '''%age''' ''du statut'' + '''Qté''' ''stock d'alerte''<br />
<br />
Le tableau Autres propose des options d'affinage de cette formule et d'autres options :<br />
<br />
Le dernier tableau de la page de configuration du module affiche une liste d'informations techniques. Si vous rencontrez un erreur dans l'utilisation du modules, ces informations pourront vous être demandées afin de mieux identifier les causes du problème :<br />
<br />
[[file:infotechniques.png|600px]]<br />
<br />
===Calcul de quantités de réapprovisionnement===<br />
Ces options déterminent la prise en compte ou non des quantités en stock et en commandes fournisseurs :<br />
*'''Tout'''<br />
:seront prises en comptes les quantités de produits en cours de commande fournisseur et en stock en déduction de la formule brute.<br />
<br />
:La formule appliquée sera la quantité de produits présents dans les éléments selon leur statut multiplié par le pourcentage sélectionné – quantité de produits en stock –quantité de produits en commande fournisseur soit :<br />
:'''Qté''' ''à commander'' = '''Qté''' ''des éléments'' × '''%age''' ''du statut'' + '''Qté''' ''stock alerte'' – '''Qté''' ''stock'' – '''Qté''' ''commande''<br />
<br />
*'''Sans prendre le stock en compte'''<br />
:Seules les quantités de produits en commande seront prises en compte.<br />
:La formule appliquée sera la quantité de produits présents dans les éléments selon leur statut multiplié par le pourcentage sélectionné – quantité de produits en commande fournisseur soit :<br />
:'''Qté''' ''à commander'' = '''Qté''' ''des éléments'' × '''%age''' ''du statut'' + '''Qté''' ''stock alerte'' – '''Qté''' ''commande''<br />
<br />
*'''Sans prendre les commandes fournisseurs'''<br />
:Seules les quantités de produits en stock seront prises en compte.<br />
:La formule appliquée sera la quantité de produits présents dans les éléments selon leur statut multiplié par le pourcentage sélectionné – quantité de produits en stock soit :<br />
:'''Qté''' ''à commander'' = '''Qté''' ''des éléments'' × '''%age''' ''du statut'' + '''Qté''' ''stock alerte'' – '''Qté''' ''stock''<br />
*'''Ne rien prendre en compte'''<br />
: ni les quantités de produits en stock, ni celles en commandes fournisseurs ne seront prises en compte. La formule appliquée sera la formule brute soit :<br />
:'''Qté''' ''à commander'' = '''Qté''' ''des éléments'' × '''%age''' ''du statut'' + '''Qté''' ''stock alerte''<br />
<br />
===Options de création des commandes fournisseurs brouillon===<br />
*'''Désactivé'''<br />
:La création de brouillons de commandes fournisseurs est désactivée. Aucun brouillon de commande fournisseur ne sera créé.<br />
*'''Actif, une ligne de produit par reStock'''<br />
:Les différents utilisateurs auteurs de différents restocks créeront et alimenteront un même brouillon de commande fournisseur. Ce brouillon de commande fournisseur contiendra autant de lignes d'un même produit que de restock effectués pour ce produit chez le même fournisseur. La quantité à commander de chacune des lignes sera déterminée par les restocks successifs effectués pour ce même produit chez ce même fournisseur.<br />
*'''Actif, une ligne cumulée'''<br />
:Les différents utilisateurs auteurs de différents restocks créeront et alimenteront un même brouillon de commande fournisseur. Ce brouillon de commande fournisseur contiendra une seule ligne de produit dont la quantité sera la somme des restocks successifs effectués pour ce même produit chez ce même fournisseur.<br />
*'''Actif, par utilisateur'''<br />
:Les différents utilisateurs auteurs de différents restocks créeront et alimenteront chacun un brouillon de commande fournisseur. Chaque brouillon de commande fournisseur contiendra autant de lignes d'un même produit que de restocks effectués pour ce produit chez le même fournisseur. La quantité à commander de chacune des lignes sera déterminée par les restocks successifs effectués pour ce même produit chez ce même fournisseur.<br />
*'''Actif, une ligne cumulée par utilisateur'''<br />
:Les différents utilisateurs auteur de différents restocks créeront et alimenteront chacun un brouillon de commande fournisseur. Ce brouillon de commande fournisseur contiendra une seule ligne de produit dont la quantité sera la somme des restocks successifs effectués pour ce même produit chez ce même fournisseur.<br />
<br />
Pour en savoir plus sur les autres fonctionnalités, voir Création de commande automatique après remise plus loin.<br />
<br />
==Démarrage==<br />
Les fonctionnalités de reStock sont accessibles depuis l'onglet de menu principal XXX. <br />
<br />
{| class="wikitable"<br />
| [[file:restock_Menusecondaire.png]]<br />
| style="vertical-align:top;" | <br />
Votre menu secondaire présente alors les entrées de menu ci-contre.<br />
Le lien de menu secondaire reStock affiche la page du reStock principal. Pour les reStocks depuis les factures et commandes, un onglet sera affiché sur les fiches des éléments.<br />
{{Note|Le lien de menu secondaire reStock affiche la page du reStock principal. Pour les reStocks depuis les factures et commandes, un onglet sera affiché sur les fiches des éléments|warn}} <br />
|}<br />
<br />
==Différentes types de reStock==<br />
===Restock général===<br />
Le restock général est accessible depuis les liens de menu '''Produits/services > Produits > ReStock'''<br />
<br />
[[file:restock_Menusecondaire.png]]<br />
<br />
Ce lien affichera un tableau avec les quantités a commander par produit selon les paramétrages appliqués dans le configuration du module.<br />
{{Note|Les quantités suggérées par reStock restent modifiables par l'utilisateur. Pour ne pas commander un produit, saisissez une quantité à 0.}}<br />
<br />
====Exemple simple====<br />
Partons de la situation suivante :<br />
Signature d'un proposition commerciale de 20 produits.<br />
<br />
[[file:restock_Exemplesimple1.png|600px]]<br />
<br />
avec les paramétrages de reStock suivants :<br />
<br />
[[file:restock_Exemplesimple2.png|600px]]<br />
<br />
Et appliquons les différentes méthodes de calcul du réapprovisionnement :<br />
*Calcul des quantités de réapprovisionnement : '''Tout'''<br />
:'''Qté''' ''à commander'' = '''Qté''' ''proposition commerciale × 100%signée '' + '''Qté''' ''stock d'alerte'' – '''Qté''' ''en stock'' – '''Qté''' ''en commande''<br />
:[[file:Restock_tout.png|600px]] <br />
*Calcul des quantités de réapprovisionnement : '''Sans prendre le stock en compte''<br />
:'''Qté''' ''à commander'' = '''Qté''' ''proposition commerciale × 100%signée'' + '''Qté''' ''stock d'alerte'' – '''Qté''' ''en commande''<br />
:[[file:Restock_sans-stock.png|600px]]<br />
*Calcul des quantités de réapprovisionnement : '''Sans les commandes fournisseurs'''<br />
:'''Qté''' ''à commander'' = '''Qté''' ''proposition commerciale × 100%signée'' + '''Qté''' ''stock d'alerte'' – '''Qté''' ''en stock''<br />
:[[file:Restock_sans-commande.png|600px]]<br />
*Calcul des quantités de réapprovisionnement : '''Sans rien prendre en compte'''<br />
:'''Qté''' ''à commander'' = '''Qté''' ''proposition commerciale × 100%signée'' + '''Qté''' ''stock d'alerte''<br />
:[[file:Restock_rien.png|600px]]<br />
<br />
====Exemple plus complet====<br />
Partons de la situation suivante :<br />
<br />
Signature d'un proposition commerciale de 20 produits – Facture brouillon de 6 produits<br />
[[file:restock_Exemplecomplexe1.png|600px]] <br />
<br />
avec les paramétrages de reStock suivants :<br />
<br />
[[file:restock_Exemplecomplexe2.png|600px]]<br />
<br />
Et appliquons les différentes méthodes de calcul du réapprovisionnement :<br />
*Calcul des quantités de réapprovisionnement : '''Tout'''<br />
:'''Qté''' ''à commander'' = '''Qté''' ''proposition commerciale × 50%signée'' + '''Qté''' ''facture × 50%brouillon'' + '''Qté''' ''stock d'alerte'' – '''Qté''' ''en stock'' – '''Qté''' ''en commande''<br />
*Calcul des quantités de réapprovisionnement : '''Sans prendre le stock en compte'''<br />
:'''Qté''' ''à commander'' = '''Qté''' ''proposition commerciale × 50%signée'' + '''Qté''' ''facture × 50%brouillon'' + '''Qté''' ''stock d'alerte'' – '''Qté''' ''en commande''<br />
*Calcul des quantités de réapprovisionnement : '''Sans les commandes fournisseurs'''<br />
:'''Qté''' ''à commander'' = '''Qté''' ''proposition commerciale × 50%signée'' + '''Qté''' ''facture × 50%brouillon'' + '''Qté''' ''stock d'alerte'' – '''Qté''' ''en stock''<br />
*Calcul des quantités de réapprovisionnement : '''Sans rien prendre en compte'''<br />
:'''Qté''' ''à commander'' = '''Qté''' ''proposition commerciale × 50%signée'' + '''Qté''' ''facture × 50%brouillon'' + '''Qté''' ''stock d'alerte''<br />
<br />
Une fois les quantités confirmées, cliquez sur le bouton Restock pour accéder à la page de sélection des fournisseur et de génération des brouillons de commandes fournisseurs.<br />
<br />
===ReStock sur facturé===<br />
Si vous n'utilisez pas la fonctionnalité des commandes clients dans Dolibarr, les fonctionnalités de ReStock peuvent vous siggérer des quantités à commander en fonction des lignes et quantités présentes dans vos factures clients payées.<br />
<br />
Utiliser le lien ReStock sur facturé accessible depuis '''Compta/Tréso > Factures clients > Restock sur facturé''' :<br />
<br />
[[file:Restock_facturé.png|600px]]<br />
<br />
Une fois les quantités confirmées, cliquez sur le bouton Restock pour accéder à la page de sélection des fournisseur (voir ) puis à la création des brouillons de commandes fournisseurs (voir ) ou<br />
<br />
===ReStock produit===<br />
Le restock produit est un raccourcis permettant la création ou alimentation de brouillons de commandes fournisseurs depuis un produit.<br />
{{Note|La formule déterminée dans les paramétrage ne s'applique, vous n'aurez donc pas de suggestion de quantités|warn}}<br />
{{Note| Cette fonctionnalité est utile et pratique pour déterminer les commandes nécessaires à une fabrication ou dans un produit virtuel/package.}}<br />
Depuis l'onglet ReStock, d'une fiche produit, saisissez la quantité que vous souhaitez commander et cliquer sur le bouton ReStock.<br />
<br />
Dans l'illustration ci-dessous, le produit PDT est un produit virtuel composé de un produit PDT2 et d'un produit PDT3 :<br />
<br />
[[file:Restock_produit.png|600px]] <br />
<br />
Une fois les quantités confirmées, cliquez sur le bouton Restock pour accéder à la page de sélection des fournisseur puis à la création des brouillons de commandes fournisseurs.<br />
<br />
==Sélection des fournisseurs==<br />
Dans le cas de fournisseurs multiples pour un même produit, reStock affiche, pour chaque produit, la liste des fournisseurs et le montant de la ligne en fonction des conditions particulières accordées par les fournisseurs (remises sur quantités).<br />
<br />
[[file:|600px]] <br />
<br />
Une fois les quantités confirmées, cliquez sur le bouton Restock pour accéder à la page de sélection des fournisseur puis à la création des brouillons de commandes fournisseurs.<br />
{{Note| Si une quantité minimum de commande n'est pas atteinte, le fournisseur n'est pas sélectionnable. Le fournisseur pourra à nouveau être sélectionné en modifiant la quantité à commander jusqu'à atteindre la quantité minimum de commande.}}<br />
{{Note|Pour ne pas commander un produit, il suffit de ne pas sélectionner de fournisseur . Si cela est déjà fait, modifiez la quantité à 0.}} <br />
{{Note|La quantité à commander est reprise de l'écran précédent, mais est, ici encore, modifiable.<br />
Note : Le bouton recalculer permet le rafraichissement des montants des commandes après les modification de quantités ou de fournisseurs et prix associés.}}<br />
{{Note|La référence du brouillon de la commande fournisseur par défaut comporte la date courante mais reste modifiable.}}<br />
Sélectionnez le fournisseur auquel passer la future commande et cliquez sur création des bons de commandes fournisseurs.<br />
<br />
==Création des brouillons de commandes fournisseur==<br />
En fonction des restocks déjà effectués et selon les paramétrages appliqués au module, vous aurez un ou plusieurs brouillon de commandes fournisseurs par fournisseur qui contiendront une ligne du total de la quantité de produits à commander ou autant de lignes du produit que de reStock effectués avec leur quantité respectives.<br />
<br />
[[file:|600px]] <br />
<br />
Encore en fonction des paramétrages appliqués au module, ces brouillons de commandes fournisseurs pourront être complétés des quantités de nouveaux restocks soir par de nouvelles lignes, soit par la somme des quantités déjà présentes et des nouvelles (voir Configuration).<br />
<br />
==ReStock sur commandes clients - Liaisons automatiques de commandes clients et fournisseurs==<br />
En effectuant un reStock depuis une commande client,il est possible de créer automatiquement un tableau de liaison des commandes clients et fournisseurs.<br />
<br />
Depuis l'onglet restock d'une commande client, créez le restock :<br />
<br />
[[file:|600px]]<br />
<br />
Sélectionnez les fournisseurs et créer les bons de commandes fournisseurs :<br />
<br />
[[file:|600px]]<br />
<br />
Les fiches des commandes clients et fournisseurs présenteront en bas de page un tableau des liaisons réalisées par les reStocks :<br />
<br />
[[file:|600px]] <br />
<br />
Si Une commande client doit être honorée par le passage de plusieurs commandes fournisseurs, elle mentionnera la totalité des commandes fournisseurs liées :<br />
<br />
[[file:|600px]]<br />
<br />
Inversement, si une commande fournisseur contient les lignes de produits de plusieurs commandes clients, le tableau affichera la totalités des factures clients liées.<br />
<br />
==Autres fonctionnalités==<br />
===Création de commande automatique après remise===<br />
L'activation de la fonctionnalité Création de commande automatique après remise permet la création d'un facture fournisseur d'un montant égale à la commande client remisé du pourcentage sélectionné ici.<br />
{{Note|Cette fonctionnalité désactive les fonctionnalités de réapprovisionnement de reStock sur les commandes clients|warn}}<br />
<br />
<br />
[[file:|600px]]<br />
<br />
Cliquez sur l'onglet ReStock de la commande client :<br />
<br />
Onglet restock de la commande client<br />
<br />
[[file:|600px]]<br />
<br />
Création de la commande fournisseur remisée<br />
<br />
[[file:|600px]]</div>Nomihttps://wiki.patas-monkey.com/index.php?title=ReStock&diff=836ReStock2021-03-26T15:43:29Z<p>Nomi : /* ReStock produit */</p>
<hr />
<div><br />
{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[File:restock_250x250.png]]<br />
| Ce module reStock améliore les fonctions achats et approvisionnements dans Dolibarr.<br />
|}<br />
<br />
==Présentation==<br />
À partir de pondérations déclarées dans le paramétrage du module, il calcule automatiquement les quantités de produits à commander :<br />
<br />
[[file:Restock_setup_short.png|600px]] <br />
<br />
et créé les brouillons de commandes fournisseurs :<br />
<br />
[[file:Restock_liste_brouillon.png|600px]]<br />
<br />
Des réapprovisionnements peuvent être effectués à partir les fiches des produits, commandes et factures depuis l'onglet dédié :<br />
<br />
[[file:Restock_commande.png|600px]]<br />
<br />
ReStock ajoute un tableau de liaisons automatiques entre commandes clients et fournisseurs :<br />
<br />
[[file:Restock_liaison1.png|600px]]<br />
<br />
==Paramétrage==<br />
===Configuration===<br />
====Configuration des fonctionnalités du module====<br />
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 [[file:doli-setup.png]] ou [[file:doli-setup-old.png]] en bout de ligne.<br />
<br />
[[file:Restock_liaison1.png|600px]]<br />
<br />
Le tableau de Paramétrage de la pondération selon les états des documents commerciaux permet de sélectionner le niveau de pondération des quantités de produits enregistrés dans les documents commerciaux pour le calcul du réassort.<br />
<br />
{{Note|La sélection de pondération apr éléments est nécessaire pour la prise en compte des stocks limite et d'alerte dans le calcul des quantités à commander.}}<br />
<br />
Le formule de calcul des quantités à commander par produit sera le résultat de la multiplication de la quantité de produits présents dans les éléments selon leur statut par le pourcentage sélectionné auquel sera ajouté le stock d'alerte soit :<br />
<br />
'''Qté''' ''à commander'' = '''Qté''' ''des éléments'' × ''%age du statut'' + '''Qté''' ''stock d'alerte''<br />
<br />
Les éléments et les pourcentages par statut sont cumulable. La formule exacte est donc :<br />
<br />
'''Qté''' ''à commander'' = '''Qté''' ''élément1'' × '''%age''' ''du statut'' + <br />
… + '''Qté''' ''élément n'' × '''%age''' ''du statut'' + '''Qté''' ''stock d'alerte''<br />
<br />
Le tableau Autres propose des options d'affinage de cette formule et d'autres options :<br />
<br />
Le dernier tableau de la page de configuration du module affiche une liste d'informations techniques. Si vous rencontrez un erreur dans l'utilisation du modules, ces informations pourront vous être demandées afin de mieux identifier les causes du problème :<br />
<br />
[[file:infotechniques.png|600px]]<br />
<br />
===Calcul de quantités de réapprovisionnement===<br />
Ces options déterminent la prise en compte ou non des quantités en stock et en commandes fournisseurs :<br />
*'''Tout'''<br />
:seront prises en comptes les quantités de produits en cours de commande fournisseur et en stock en déduction de la formule brute.<br />
<br />
:La formule appliquée sera la quantité de produits présents dans les éléments selon leur statut multiplié par le pourcentage sélectionné – quantité de produits en stock –quantité de produits en commande fournisseur soit :<br />
:'''Qté''' ''à commander'' = '''Qté''' ''des éléments'' × '''%age''' ''du statut'' + '''Qté''' ''stock alerte'' – '''Qté''' ''stock'' – '''Qté''' ''commande''<br />
<br />
*'''Sans prendre le stock en compte'''<br />
:Seules les quantités de produits en commande seront prises en compte.<br />
:La formule appliquée sera la quantité de produits présents dans les éléments selon leur statut multiplié par le pourcentage sélectionné – quantité de produits en commande fournisseur soit :<br />
:'''Qté''' ''à commander'' = '''Qté''' ''des éléments'' × '''%age''' ''du statut'' + '''Qté''' ''stock alerte'' – '''Qté''' ''commande''<br />
<br />
*'''Sans prendre les commandes fournisseurs'''<br />
:Seules les quantités de produits en stock seront prises en compte.<br />
:La formule appliquée sera la quantité de produits présents dans les éléments selon leur statut multiplié par le pourcentage sélectionné – quantité de produits en stock soit :<br />
:'''Qté''' ''à commander'' = '''Qté''' ''des éléments'' × '''%age''' ''du statut'' + '''Qté''' ''stock alerte'' – '''Qté''' ''stock''<br />
*'''Ne rien prendre en compte'''<br />
: ni les quantités de produits en stock, ni celles en commandes fournisseurs ne seront prises en compte. La formule appliquée sera la formule brute soit :<br />
:'''Qté''' ''à commander'' = '''Qté''' ''des éléments'' × '''%age''' ''du statut'' + '''Qté''' ''stock alerte''<br />
<br />
===Options de création des commandes fournisseurs brouillon===<br />
*'''Désactivé'''<br />
:La création de brouillons de commandes fournisseurs est désactivée. Aucun brouillon de commande fournisseur ne sera créé.<br />
*'''Actif, une ligne de produit par reStock'''<br />
:Les différents utilisateurs auteurs de différents restocks créeront et alimenteront un même brouillon de commande fournisseur. Ce brouillon de commande fournisseur contiendra autant de lignes d'un même produit que de restock effectués pour ce produit chez le même fournisseur. La quantité à commander de chacune des lignes sera déterminée par les restocks successifs effectués pour ce même produit chez ce même fournisseur.<br />
*'''Actif, une ligne cumulée'''<br />
:Les différents utilisateurs auteurs de différents restocks créeront et alimenteront un même brouillon de commande fournisseur. Ce brouillon de commande fournisseur contiendra une seule ligne de produit dont la quantité sera la somme des restocks successifs effectués pour ce même produit chez ce même fournisseur.<br />
*'''Actif, par utilisateur'''<br />
:Les différents utilisateurs auteurs de différents restocks créeront et alimenteront chacun un brouillon de commande fournisseur. Chaque brouillon de commande fournisseur contiendra autant de lignes d'un même produit que de restocks effectués pour ce produit chez le même fournisseur. La quantité à commander de chacune des lignes sera déterminée par les restocks successifs effectués pour ce même produit chez ce même fournisseur.<br />
*'''Actif, une ligne cumulée par utilisateur'''<br />
:Les différents utilisateurs auteur de différents restocks créeront et alimenteront chacun un brouillon de commande fournisseur. Ce brouillon de commande fournisseur contiendra une seule ligne de produit dont la quantité sera la somme des restocks successifs effectués pour ce même produit chez ce même fournisseur.<br />
<br />
Pour en savoir plus sur les autres fonctionnalités, voir Création de commande automatique après remise plus loin.<br />
<br />
==Démarrage==<br />
Les fonctionnalités de reStock sont accessibles depuis l'onglet de menu principal XXX. <br />
<br />
{| class="wikitable"<br />
| [[file:restock_Menusecondaire.png]]<br />
| style="vertical-align:top;" | <br />
Votre menu secondaire présente alors les entrées de menu ci-contre.<br />
Le lien de menu secondaire reStock affiche la page du reStock principal. Pour les reStocks depuis les factures et commandes, un onglet sera affiché sur les fiches des éléments.<br />
{{Note|Le lien de menu secondaire reStock affiche la page du reStock principal. Pour les reStocks depuis les factures et commandes, un onglet sera affiché sur les fiches des éléments|warn}} <br />
|}<br />
<br />
==Différentes types de reStock==<br />
===Restock général===<br />
Le restock général est accessible depuis les liens de menu '''Produits/services > Produits > ReStock'''<br />
<br />
[[file:restock_Menusecondaire.png]]<br />
<br />
Ce lien affichera un tableau avec les quantités a commander par produit selon les paramétrages appliqués dans le configuration du module.<br />
{{Note|Les quantités suggérées par reStock restent modifiables par l'utilisateur. Pour ne pas commander un produit, saisissez une quantité à 0.}}<br />
<br />
====Exemple simple====<br />
Partons de la situation suivante :<br />
Signature d'un proposition commerciale de 20 produits.<br />
<br />
[[file:restock_Exemplesimple1.png|600px]]<br />
<br />
avec les paramétrages de reStock suivants :<br />
<br />
[[file:restock_Exemplesimple2.png|600px]]<br />
<br />
Et appliquons les différentes méthodes de calcul du réapprovisionnement :<br />
*Calcul des quantités de réapprovisionnement : '''Tout'''<br />
:'''Qté''' ''à commander'' = '''Qté''' ''proposition commerciale × 100%signée '' + '''Qté''' ''stock d'alerte'' – '''Qté''' ''en stock'' – '''Qté''' ''en commande''<br />
:[[file:Restock_tout.png|600px]] <br />
*Calcul des quantités de réapprovisionnement : '''Sans prendre le stock en compte''<br />
:'''Qté''' ''à commander'' = '''Qté''' ''proposition commerciale × 100%signée'' + '''Qté''' ''stock d'alerte'' – '''Qté''' ''en commande''<br />
:[[file:Restock_sans-stock.png|600px]]<br />
*Calcul des quantités de réapprovisionnement : '''Sans les commandes fournisseurs'''<br />
:'''Qté''' ''à commander'' = '''Qté''' ''proposition commerciale × 100%signée'' + '''Qté''' ''stock d'alerte'' – '''Qté''' ''en stock''<br />
:[[file:Restock_sans-commande.png|600px]]<br />
*Calcul des quantités de réapprovisionnement : '''Sans rien prendre en compte'''<br />
:'''Qté''' ''à commander'' = '''Qté''' ''proposition commerciale × 100%signée'' + '''Qté''' ''stock d'alerte''<br />
:[[file:Restock_rien.png|600px]]<br />
<br />
====Exemple plus complet====<br />
Partons de la situation suivante :<br />
<br />
Signature d'un proposition commerciale de 20 produits – Facture brouillon de 6 produits<br />
[[file:restock_Exemplecomplexe1.png|600px]] <br />
<br />
avec les paramétrages de reStock suivants :<br />
<br />
[[file:restock_Exemplecomplexe2.png|600px]]<br />
<br />
Et appliquons les différentes méthodes de calcul du réapprovisionnement :<br />
*Calcul des quantités de réapprovisionnement : '''Tout'''<br />
:'''Qté''' ''à commander'' = '''Qté''' ''proposition commerciale × 50%signée'' + '''Qté''' ''facture × 50%brouillon'' + '''Qté''' ''stock d'alerte'' – '''Qté''' ''en stock'' – '''Qté''' ''en commande''<br />
*Calcul des quantités de réapprovisionnement : '''Sans prendre le stock en compte'''<br />
:'''Qté''' ''à commander'' = '''Qté''' ''proposition commerciale × 50%signée'' + '''Qté''' ''facture × 50%brouillon'' + '''Qté''' ''stock d'alerte'' – '''Qté''' ''en commande''<br />
*Calcul des quantités de réapprovisionnement : '''Sans les commandes fournisseurs'''<br />
:'''Qté''' ''à commander'' = '''Qté''' ''proposition commerciale × 50%signée'' + '''Qté''' ''facture × 50%brouillon'' + '''Qté''' ''stock d'alerte'' – '''Qté''' ''en stock''<br />
*Calcul des quantités de réapprovisionnement : '''Sans rien prendre en compte'''<br />
:'''Qté''' ''à commander'' = '''Qté''' ''proposition commerciale × 50%signée'' + '''Qté''' ''facture × 50%brouillon'' + '''Qté''' ''stock d'alerte''<br />
<br />
Une fois les quantités confirmées, cliquez sur le bouton Restock pour accéder à la page de sélection des fournisseur et de génération des brouillons de commandes fournisseurs.<br />
<br />
===ReStock sur facturé===<br />
Si vous n'utilisez pas la fonctionnalité des commandes clients dans Dolibarr, les fonctionnalités de ReStock peuvent vous siggérer des quantités à commander en fonction des lignes et quantités présentes dans vos factures clients payées.<br />
<br />
Utiliser le lien ReStock sur facturé accessible depuis '''Compta/Tréso > Factures clients > Restock sur facturé''' :<br />
<br />
[[file:Restock_facturé.png|600px]]<br />
<br />
Une fois les quantités confirmées, cliquez sur le bouton Restock pour accéder à la page de sélection des fournisseur (voir ) puis à la création des brouillons de commandes fournisseurs (voir ) ou<br />
<br />
===ReStock produit===<br />
Le restock produit est un raccourcis permettant la création ou alimentation de brouillons de commandes fournisseurs depuis un produit.<br />
{{Note|La formule déterminée dans les paramétrage ne s'applique, vous n'aurez donc pas de suggestion de quantités|warn}}<br />
{{Note| Cette fonctionnalité est utile et pratique pour déterminer les commandes nécessaires à une fabrication ou dans un produit virtuel/package.}}<br />
Depuis l'onglet ReStock, d'une fiche produit, saisissez la quantité que vous souhaitez commander et cliquer sur le bouton ReStock.<br />
<br />
Dans l'illustration ci-dessous, le produit PDT est un produit virtuel composé de un produit PDT2 et d'un produit PDT3 :<br />
<br />
[[file:Restock_produit.png|600px]] <br />
<br />
Une fois les quantités confirmées, cliquez sur le bouton Restock pour accéder à la page de sélection des fournisseur (voir ) puis à la création des brouillons de commandes fournisseurs.<br />
<br />
==Sélection des fournisseurs==<br />
Dans le cas de fournisseurs multiples pour un même produit, reStock affiche, pour chaque produit, la liste des fournisseurs et le montant de la ligne en fonction des conditions particulières accordées par les fournisseurs (remises sur quantités).<br />
<br />
[[file:|600px]] <br />
<br />
Une fois les quantités confirmées, cliquez sur le bouton Restock pour accéder à la page de sélection des fournisseur puis à la création des brouillons de commandes fournisseurs.<br />
{{Note| Si une quantité minimum de commande n'est pas atteinte, le fournisseur n'est pas sélectionnable. Le fournisseur pourra à nouveau être sélectionné en modifiant la quantité à commander jusqu'à atteindre la quantité minimum de commande.}}<br />
{{Note|Pour ne pas commander un produit, il suffit de ne pas sélectionner de fournisseur . Si cela est déjà fait, modifiez la quantité à 0.}} <br />
{{Note|La quantité à commander est reprise de l'écran précédent, mais est, ici encore, modifiable.<br />
Note : Le bouton recalculer permet le rafraichissement des montants des commandes après les modification de quantités ou de fournisseurs et prix associés.}}<br />
{{Note|La référence du brouillon de la commande fournisseur par défaut comporte la date courante mais reste modifiable.}}<br />
Sélectionnez le fournisseur auquel passer la future commande et cliquez sur création des bons de commandes fournisseurs.<br />
<br />
==Création des brouillons de commandes fournisseur==<br />
En fonction des restocks déjà effectués et selon les paramétrages appliqués au module, vous aurez un ou plusieurs brouillon de commandes fournisseurs par fournisseur qui contiendront une ligne du total de la quantité de produits à commander ou autant de lignes du produit que de reStock effectués avec leur quantité respectives.<br />
<br />
[[file:|600px]] <br />
<br />
Encore en fonction des paramétrages appliqués au module, ces brouillons de commandes fournisseurs pourront être complétés des quantités de nouveaux restocks soir par de nouvelles lignes, soit par la somme des quantités déjà présentes et des nouvelles (voir Configuration).<br />
<br />
==ReStock sur commandes clients - Liaisons automatiques de commandes clients et fournisseurs==<br />
En effectuant un reStock depuis une commande client,il est possible de créer automatiquement un tableau de liaison des commandes clients et fournisseurs.<br />
<br />
Depuis l'onglet restock d'une commande client, créez le restock :<br />
<br />
[[file:|600px]]<br />
<br />
Sélectionnez les fournisseurs et créer les bons de commandes fournisseurs :<br />
<br />
[[file:|600px]]<br />
<br />
Les fiches des commandes clients et fournisseurs présenteront en bas de page un tableau des liaisons réalisées par les reStocks :<br />
<br />
[[file:|600px]] <br />
<br />
Si Une commande client doit être honorée par le passage de plusieurs commandes fournisseurs, elle mentionnera la totalité des commandes fournisseurs liées :<br />
<br />
[[file:|600px]]<br />
<br />
Inversement, si une commande fournisseur contient les lignes de produits de plusieurs commandes clients, le tableau affichera la totalités des factures clients liées.<br />
<br />
==Autres fonctionnalités==<br />
===Création de commande automatique après remise===<br />
L'activation de la fonctionnalité Création de commande automatique après remise permet la création d'un facture fournisseur d'un montant égale à la commande client remisé du pourcentage sélectionné ici.<br />
{{Note|Cette fonctionnalité désactive les fonctionnalités de réapprovisionnement de reStock sur les commandes clients|warn}}<br />
<br />
<br />
[[file:|600px]]<br />
<br />
Cliquez sur l'onglet ReStock de la commande client :<br />
<br />
Onglet restock de la commande client<br />
<br />
[[file:|600px]]<br />
<br />
Création de la commande fournisseur remisée<br />
<br />
[[file:|600px]]</div>Nomihttps://wiki.patas-monkey.com/index.php?title=Fichier:Restock_produit.png&diff=835Fichier:Restock produit.png2021-03-26T15:43:26Z<p>Nomi : </p>
<hr />
<div></div>Nomihttps://wiki.patas-monkey.com/index.php?title=ReStock&diff=834ReStock2021-03-26T15:42:29Z<p>Nomi : /* ReStock sur facturé */</p>
<hr />
<div><br />
{| class="wikitable" <br />
|- style="vertical-align:top;" <br />
| [[File:restock_250x250.png]]<br />
| Ce module reStock améliore les fonctions achats et approvisionnements dans Dolibarr.<br />
|}<br />
<br />
==Présentation==<br />
À partir de pondérations déclarées dans le paramétrage du module, il calcule automatiquement les quantités de produits à commander :<br />
<br />
[[file:Restock_setup_short.png|600px]] <br />
<br />
et créé les brouillons de commandes fournisseurs :<br />
<br />
[[file:Restock_liste_brouillon.png|600px]]<br />
<br />
Des réapprovisionnements peuvent être effectués à partir les fiches des produits, commandes et factures depuis l'onglet dédié :<br />
<br />
[[file:Restock_commande.png|600px]]<br />
<br />
ReStock ajoute un tableau de liaisons automatiques entre commandes clients et fournisseurs :<br />
<br />
[[file:Restock_liaison1.png|600px]]<br />
<br />
==Paramétrage==<br />
===Configuration===<br />
====Configuration des fonctionnalités du module====<br />
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 [[file:doli-setup.png]] ou [[file:doli-setup-old.png]] en bout de ligne.<br />
<br />
[[file:Restock_liaison1.png|600px]]<br />
<br />
Le tableau de Paramétrage de la pondération selon les états des documents commerciaux permet de sélectionner le niveau de pondération des quantités de produits enregistrés dans les documents commerciaux pour le calcul du réassort.<br />
<br />
{{Note|La sélection de pondération apr éléments est nécessaire pour la prise en compte des stocks limite et d'alerte dans le calcul des quantités à commander.}}<br />
<br />
Le formule de calcul des quantités à commander par produit sera le résultat de la multiplication de la quantité de produits présents dans les éléments selon leur statut par le pourcentage sélectionné auquel sera ajouté le stock d'alerte soit :<br />
<br />
'''Qté''' ''à commander'' = '''Qté''' ''des éléments'' × ''%age du statut'' + '''Qté''' ''stock d'alerte''<br />
<br />
Les éléments et les pourcentages par statut sont cumulable. La formule exacte est donc :<br />
<br />
'''Qté''' ''à commander'' = '''Qté''' ''élément1'' × '''%age''' ''du statut'' + <br />
… + '''Qté''' ''élément n'' × '''%age''' ''du statut'' + '''Qté''' ''stock d'alerte''<br />
<br />
Le tableau Autres propose des options d'affinage de cette formule et d'autres options :<br />
<br />
Le dernier tableau de la page de configuration du module affiche une liste d'informations techniques. Si vous rencontrez un erreur dans l'utilisation du modules, ces informations pourront vous être demandées afin de mieux identifier les causes du problème :<br />
<br />
[[file:infotechniques.png|600px]]<br />
<br />
===Calcul de quantités de réapprovisionnement===<br />
Ces options déterminent la prise en compte ou non des quantités en stock et en commandes fournisseurs :<br />
*'''Tout'''<br />
:seront prises en comptes les quantités de produits en cours de commande fournisseur et en stock en déduction de la formule brute.<br />
<br />
:La formule appliquée sera la quantité de produits présents dans les éléments selon leur statut multiplié par le pourcentage sélectionné – quantité de produits en stock –quantité de produits en commande fournisseur soit :<br />
:'''Qté''' ''à commander'' = '''Qté''' ''des éléments'' × '''%age''' ''du statut'' + '''Qté''' ''stock alerte'' – '''Qté''' ''stock'' – '''Qté''' ''commande''<br />
<br />
*'''Sans prendre le stock en compte'''<br />
:Seules les quantités de produits en commande seront prises en compte.<br />
:La formule appliquée sera la quantité de produits présents dans les éléments selon leur statut multiplié par le pourcentage sélectionné – quantité de produits en commande fournisseur soit :<br />
:'''Qté''' ''à commander'' = '''Qté''' ''des éléments'' × '''%age''' ''du statut'' + '''Qté''' ''stock alerte'' – '''Qté''' ''commande''<br />
<br />
*'''Sans prendre les commandes fournisseurs'''<br />
:Seules les quantités de produits en stock seront prises en compte.<br />
:La formule appliquée sera la quantité de produits présents dans les éléments selon leur statut multiplié par le pourcentage sélectionné – quantité de produits en stock soit :<br />
:'''Qté''' ''à commander'' = '''Qté''' ''des éléments'' × '''%age''' ''du statut'' + '''Qté''' ''stock alerte'' – '''Qté''' ''stock''<br />
*'''Ne rien prendre en compte'''<br />
: ni les quantités de produits en stock, ni celles en commandes fournisseurs ne seront prises en compte. La formule appliquée sera la formule brute soit :<br />
:'''Qté''' ''à commander'' = '''Qté''' ''des éléments'' × '''%age''' ''du statut'' + '''Qté''' ''stock alerte''<br />
<br />
===Options de création des commandes fournisseurs brouillon===<br />
*'''Désactivé'''<br />
:La création de brouillons de commandes fournisseurs est désactivée. Aucun brouillon de commande fournisseur ne sera créé.<br />
*'''Actif, une ligne de produit par reStock'''<br />
:Les différents utilisateurs auteurs de différents restocks créeront et alimenteront un même brouillon de commande fournisseur. Ce brouillon de commande fournisseur contiendra autant de lignes d'un même produit que de restock effectués pour ce produit chez le même fournisseur. La quantité à commander de chacune des lignes sera déterminée par les restocks successifs effectués pour ce même produit chez ce même fournisseur.<br />
*'''Actif, une ligne cumulée'''<br />
:Les différents utilisateurs auteurs de différents restocks créeront et alimenteront un même brouillon de commande fournisseur. Ce brouillon de commande fournisseur contiendra une seule ligne de produit dont la quantité sera la somme des restocks successifs effectués pour ce même produit chez ce même fournisseur.<br />
*'''Actif, par utilisateur'''<br />
:Les différents utilisateurs auteurs de différents restocks créeront et alimenteront chacun un brouillon de commande fournisseur. Chaque brouillon de commande fournisseur contiendra autant de lignes d'un même produit que de restocks effectués pour ce produit chez le même fournisseur. La quantité à commander de chacune des lignes sera déterminée par les restocks successifs effectués pour ce même produit chez ce même fournisseur.<br />
*'''Actif, une ligne cumulée par utilisateur'''<br />
:Les différents utilisateurs auteur de différents restocks créeront et alimenteront chacun un brouillon de commande fournisseur. Ce brouillon de commande fournisseur contiendra une seule ligne de produit dont la quantité sera la somme des restocks successifs effectués pour ce même produit chez ce même fournisseur.<br />
<br />
Pour en savoir plus sur les autres fonctionnalités, voir Création de commande automatique après remise plus loin.<br />
<br />
==Démarrage==<br />
Les fonctionnalités de reStock sont accessibles depuis l'onglet de menu principal XXX. <br />
<br />
{| class="wikitable"<br />
| [[file:restock_Menusecondaire.png]]<br />
| style="vertical-align:top;" | <br />
Votre menu secondaire présente alors les entrées de menu ci-contre.<br />
Le lien de menu secondaire reStock affiche la page du reStock principal. Pour les reStocks depuis les factures et commandes, un onglet sera affiché sur les fiches des éléments.<br />
{{Note|Le lien de menu secondaire reStock affiche la page du reStock principal. Pour les reStocks depuis les factures et commandes, un onglet sera affiché sur les fiches des éléments|warn}} <br />
|}<br />
<br />
==Différentes types de reStock==<br />
===Restock général===<br />
Le restock général est accessible depuis les liens de menu '''Produits/services > Produits > ReStock'''<br />
<br />
[[file:restock_Menusecondaire.png]]<br />
<br />
Ce lien affichera un tableau avec les quantités a commander par produit selon les paramétrages appliqués dans le configuration du module.<br />
{{Note|Les quantités suggérées par reStock restent modifiables par l'utilisateur. Pour ne pas commander un produit, saisissez une quantité à 0.}}<br />
<br />
====Exemple simple====<br />
Partons de la situation suivante :<br />
Signature d'un proposition commerciale de 20 produits.<br />
<br />
[[file:restock_Exemplesimple1.png|600px]]<br />
<br />
avec les paramétrages de reStock suivants :<br />
<br />
[[file:restock_Exemplesimple2.png|600px]]<br />
<br />
Et appliquons les différentes méthodes de calcul du réapprovisionnement :<br />
*Calcul des quantités de réapprovisionnement : '''Tout'''<br />
:'''Qté''' ''à commander'' = '''Qté''' ''proposition commerciale × 100%signée '' + '''Qté''' ''stock d'alerte'' – '''Qté''' ''en stock'' – '''Qté''' ''en commande''<br />
:[[file:Restock_tout.png|600px]] <br />
*Calcul des quantités de réapprovisionnement : '''Sans prendre le stock en compte''<br />
:'''Qté''' ''à commander'' = '''Qté''' ''proposition commerciale × 100%signée'' + '''Qté''' ''stock d'alerte'' – '''Qté''' ''en commande''<br />
:[[file:Restock_sans-stock.png|600px]]<br />
*Calcul des quantités de réapprovisionnement : '''Sans les commandes fournisseurs'''<br />
:'''Qté''' ''à commander'' = '''Qté''' ''proposition commerciale × 100%signée'' + '''Qté''' ''stock d'alerte'' – '''Qté''' ''en stock''<br />
:[[file:Restock_sans-commande.png|600px]]<br />
*Calcul des quantités de réapprovisionnement : '''Sans rien prendre en compte'''<br />
:'''Qté''' ''à commander'' = '''Qté''' ''proposition commerciale × 100%signée'' + '''Qté''' ''stock d'alerte''<br />
:[[file:Restock_rien.png|600px]]<br />
<br />
====Exemple plus complet====<br />
Partons de la situation suivante :<br />
<br />
Signature d'un proposition commerciale de 20 produits – Facture brouillon de 6 produits<br />
[[file:restock_Exemplecomplexe1.png|600px]] <br />
<br />
avec les paramétrages de reStock suivants :<br />
<br />
[[file:restock_Exemplecomplexe2.png|600px]]<br />
<br />
Et appliquons les différentes méthodes de calcul du réapprovisionnement :<br />
*Calcul des quantités de réapprovisionnement : '''Tout'''<br />
:'''Qté''' ''à commander'' = '''Qté''' ''proposition commerciale × 50%signée'' + '''Qté''' ''facture × 50%brouillon'' + '''Qté''' ''stock d'alerte'' – '''Qté''' ''en stock'' – '''Qté''' ''en commande''<br />
*Calcul des quantités de réapprovisionnement : '''Sans prendre le stock en compte'''<br />
:'''Qté''' ''à commander'' = '''Qté''' ''proposition commerciale × 50%signée'' + '''Qté''' ''facture × 50%brouillon'' + '''Qté''' ''stock d'alerte'' – '''Qté''' ''en commande''<br />
*Calcul des quantités de réapprovisionnement : '''Sans les commandes fournisseurs'''<br />
:'''Qté''' ''à commander'' = '''Qté''' ''proposition commerciale × 50%signée'' + '''Qté''' ''facture × 50%brouillon'' + '''Qté''' ''stock d'alerte'' – '''Qté''' ''en stock''<br />
*Calcul des quantités de réapprovisionnement : '''Sans rien prendre en compte'''<br />
:'''Qté''' ''à commander'' = '''Qté''' ''proposition commerciale × 50%signée'' + '''Qté''' ''facture × 50%brouillon'' + '''Qté''' ''stock d'alerte''<br />
<br />
Une fois les quantités confirmées, cliquez sur le bouton Restock pour accéder à la page de sélection des fournisseur et de génération des brouillons de commandes fournisseurs.<br />
<br />
===ReStock sur facturé===<br />
Si vous n'utilisez pas la fonctionnalité des commandes clients dans Dolibarr, les fonctionnalités de ReStock peuvent vous siggérer des quantités à commander en fonction des lignes et quantités présentes dans vos factures clients payées.<br />
<br />
Utiliser le lien ReStock sur facturé accessible depuis '''Compta/Tréso > Factures clients > Restock sur facturé''' :<br />
<br />
[[file:Restock_facturé.png|600px]]<br />
<br />
Une fois les quantités confirmées, cliquez sur le bouton Restock pour accéder à la page de sélection des fournisseur (voir ) puis à la création des brouillons de commandes fournisseurs (voir ) ou<br />
<br />
===ReStock produit===<br />
Le restock produit est un raccourcis permettant la création ou alimentation de brouillons de commandes fournisseurs depuis un produit.<br />
{{Note|La formule déterminée dans les paramétrage ne s'applique, vous n'aurez donc pas de suggestion de quantités|warn}}<br />
{{Note| Cette fonctionnalité est utile et pratique pour déterminer les commandes nécessaires à une fabrication ou dans un produit virtuel/package.}}<br />
Depuis l'onglet ReStock, d'une fiche produit, saisissez la quantité que vous souhaitez commander et cliquer sur le bouton ReStock.<br />
<br />
Dans l'illustration ci-dessous, le produit PDT est un produit virtuel composé de un produit PDT2 et d'un produit PDT3 :<br />
<br />
[[file:|600px]] <br />
<br />
Une fois les quantités confirmées, cliquez sur le bouton Restock pour accéder à la page de sélection des fournisseur (voir ) puis à la création des brouillons de commandes fournisseurs.<br />
<br />
==Sélection des fournisseurs==<br />
Dans le cas de fournisseurs multiples pour un même produit, reStock affiche, pour chaque produit, la liste des fournisseurs et le montant de la ligne en fonction des conditions particulières accordées par les fournisseurs (remises sur quantités).<br />
<br />
[[file:|600px]] <br />
<br />
Une fois les quantités confirmées, cliquez sur le bouton Restock pour accéder à la page de sélection des fournisseur puis à la création des brouillons de commandes fournisseurs.<br />
{{Note| Si une quantité minimum de commande n'est pas atteinte, le fournisseur n'est pas sélectionnable. Le fournisseur pourra à nouveau être sélectionné en modifiant la quantité à commander jusqu'à atteindre la quantité minimum de commande.}}<br />
{{Note|Pour ne pas commander un produit, il suffit de ne pas sélectionner de fournisseur . Si cela est déjà fait, modifiez la quantité à 0.}} <br />
{{Note|La quantité à commander est reprise de l'écran précédent, mais est, ici encore, modifiable.<br />
Note : Le bouton recalculer permet le rafraichissement des montants des commandes après les modification de quantités ou de fournisseurs et prix associés.}}<br />
{{Note|La référence du brouillon de la commande fournisseur par défaut comporte la date courante mais reste modifiable.}}<br />
Sélectionnez le fournisseur auquel passer la future commande et cliquez sur création des bons de commandes fournisseurs.<br />
<br />
==Création des brouillons de commandes fournisseur==<br />
En fonction des restocks déjà effectués et selon les paramétrages appliqués au module, vous aurez un ou plusieurs brouillon de commandes fournisseurs par fournisseur qui contiendront une ligne du total de la quantité de produits à commander ou autant de lignes du produit que de reStock effectués avec leur quantité respectives.<br />
<br />
[[file:|600px]] <br />
<br />
Encore en fonction des paramétrages appliqués au module, ces brouillons de commandes fournisseurs pourront être complétés des quantités de nouveaux restocks soir par de nouvelles lignes, soit par la somme des quantités déjà présentes et des nouvelles (voir Configuration).<br />
<br />
==ReStock sur commandes clients - Liaisons automatiques de commandes clients et fournisseurs==<br />
En effectuant un reStock depuis une commande client,il est possible de créer automatiquement un tableau de liaison des commandes clients et fournisseurs.<br />
<br />
Depuis l'onglet restock d'une commande client, créez le restock :<br />
<br />
[[file:|600px]]<br />
<br />
Sélectionnez les fournisseurs et créer les bons de commandes fournisseurs :<br />
<br />
[[file:|600px]]<br />
<br />
Les fiches des commandes clients et fournisseurs présenteront en bas de page un tableau des liaisons réalisées par les reStocks :<br />
<br />
[[file:|600px]] <br />
<br />
Si Une commande client doit être honorée par le passage de plusieurs commandes fournisseurs, elle mentionnera la totalité des commandes fournisseurs liées :<br />
<br />
[[file:|600px]]<br />
<br />
Inversement, si une commande fournisseur contient les lignes de produits de plusieurs commandes clients, le tableau affichera la totalités des factures clients liées.<br />
<br />
==Autres fonctionnalités==<br />
===Création de commande automatique après remise===<br />
L'activation de la fonctionnalité Création de commande automatique après remise permet la création d'un facture fournisseur d'un montant égale à la commande client remisé du pourcentage sélectionné ici.<br />
{{Note|Cette fonctionnalité désactive les fonctionnalités de réapprovisionnement de reStock sur les commandes clients|warn}}<br />
<br />
<br />
[[file:|600px]]<br />
<br />
Cliquez sur l'onglet ReStock de la commande client :<br />
<br />
Onglet restock de la commande client<br />
<br />
[[file:|600px]]<br />
<br />
Création de la commande fournisseur remisée<br />
<br />
[[file:|600px]]</div>Nomi