Bonjour,
Si ceci aide quelqu’un tant mieux.
Je voulais d’un coté repérer des Tiers à l’aide d’une case à cocher.
De l’autre coté retrouver dans les Projets une liste des Tiers avec la case coché.
Première étape: Création de la case à cocher Attributs Supplémentaires dans Tiers
Configuration>Modules/Applications/Configuration de module Tiers>Tab Attributs Supplémentaires (Tiers)>Bouton Nouvel Attribut
Libellé ou clé de traduction : <texte qui va apparaitre à coté de ma case à cocher>
Code de l'attribue : <le nom de la colonne qui sera créé dans la base de donnée tiers_extrafields>
Type : Boolean (case à cocher unique)
Texte d'aide à afficher dans l'info-bulle : <L'aide à l'opérateur si il clic sur le 'i'>
Il y à d'autres champs, ils s'expliquent d'eux même.
Bouton <Enregistrer>
Deuxième étape: Création de la liste de sélection Attributs Supplémentaires dans Projets
Configuration>Modules/Applications/Configuration de module Projets>Tab Attributs Supplémentaires (Projet)>Bouton Nouvel Attribut
Libellé ou clé de traduction : <texte qui va apparaitre à coté de ma case à cocher>
Code de l'attribue : <le nom de la colonne qui sera créé dans la base de donnée projet_extrafields>
Type : Liste issue d'une table
NB: lorsque l'on choisi cette option (Liste issue d'une table) une fenêtre input intitulé valeur apparait.
C'est ici que nous allons ajouter du code pour lier cette liste aux cases à cocher - voir Troisième Etape.
Texte d'aide à afficher dans l'info-bulle : <L'aide à l'opérateur si il clic sur le 'i'>
Il y à d'autres champs, ils s'expliquent d'eux même.
Bouton <Enregistrer>
Troisième étape : lier les Tiers avec les cases cochés à la liste déroulante dans les projets
(nous aurions pu faire ceci à la deuxième étape mais je voulais passer un peu plus de temps dessus.
Dans l’info bulle nous avons cette aide qui apparait.
Citation
Les paramètres de la liste viennent d’une table
Syntax : table_name:label_field:id_field::filter
Exemple : c_typent:libelle:id::filter
-idfilter est nécessairement une clé primaire int
-filter peut être un simple test (e.g. active=1) pour seulement montrer les valeurs actives
Vous pouvez aussi utiliser $ID$ dans le filtre qui est le ID actuel de l’objet
Pour faire un SELECT dans le filtre, utilisez $SEL$
Si vous voulez filtrer sur un extrafield, utilisez la syntaxe extra.fieldcode=… (ou fieldcode est le code de l’extrafield)
Pour avoir une liste qui dépend d’un autre attribut complémentaire:
c_typent:libelle:id:options_parent_list_code|parent_column:filter
Pour avoir une liste qui dépend d’une autre liste:
c_typent:libelle:id:parent_list_code|parent_column:filter
Dans mon exemple en toute simplicité je rentre le code suivant:
societe:nom:rowid::extra.appaff=1&status=1&fournisseur=0&entity=1
A quoi cela correspond t-il?
societe - c’est le nom de la base de donnée où je vais aller chercher les data de ma liste
nom - c’est le nom de la colonne qui va retourner la valeur affichée
rowid - c’est l’id qui sera lié au nom affiché
extra.appaff - c’est le nom de la colonne dans la table société_extrafields sur laquelle je vais filtré ma liste. Lorsque un Tiers (société) à sa case coché cette valeur est à 1 à la place de NULL
status - c’est le nom de la colonne dans la table société sur laquelle je vais filtré ma liste. Elle correspond à l’Etat [Ouvet/Fermé] de mon Tiers
fournisseur - c’est le nom de la colonne dans la table société sur laquelle je vais filtré ma liste. Elle correspond à l’attribue Fournisseur de mes Tiers. Je vais aller chercher uniquement les Tiers qui ne sont pas fournisseurs.
entity - c’est le nom de la colonne dans la table société sur laquelle je vais filtré ma liste. Elle correspond à l’entité de mon entreprise dans Dolibarr. Je vais aller chercher uniquement les Tiers de l’entité 1.
Conclusion:
Je me retrouve avec une liste des Tiers coché dans mes projets. Nous nous en servons pour repérer nos Apporteurs d’Affaires.
J’espères que cela aide quelqu’un.
Si vous voyez une erreur ou une amélioration n’hésitez pas à répondre ou commenter.