Bonjour,
Si vous validez la commande par exemple et que vous avez paramétrer
le module Aganda vous verez des événements crée sur les changements de
statuts d'une commande via le trigger standard
/htdocs/core/triggers/interface_50_modAgenda_ActionsAuto.class.php.
Pour les événement sur les client, regarder l'onglet agenda d'un
tier (llx_actioncomm.fk_soc et il y a également un colonne pour le
contact, mais je ne l'ai pas en tête).
Je pense qu'en regardant le code de ce trigger et celui de la
classe actioncomm.class.php, vous trouverez comment cela est gérer.
Il y a toutes les colonnes nécessaire dans llx_actioncomm pour lier
n'importe quel object de dolibarr.
Il n'est pas possible de faire une foreign key sur
llx_actioncomm.fk_element car cela depends de
llx_actioncomm.elementtype. Cela est plus flexible car si il fallait
faire une colonne fk par type d'objets liés ont aurait 50 colonnes du
genre fk_commande, fk_propal, fk_adherent, fk_monmodulespecifique, ...
Je n'utilise pas Libre office Base, mais Squirel SQL ou phpMyAdmin,
et les colones sont bien présentes.
Si je peux vous donner un conseil, inspiré vous des fonctionnalités
existante, le framework dolibarr via ces classes actioncomm et commande
dans votre cas (et la classe commonobject.class.php) offre une large
palette de méthodes qui évite de faire du SQL.
Florian HENRY
[email protected]
+33 6 03 76 48 07
http://www.open-concept.pro
Twitter : @_Open_Concept_
Secretaire de l'association Dolibarr
Le 08/12/2013 18:15, Michaël Parchet a écrit :
Bonjour,
J'ai bien pris connaissance du message de Florian indiquant que le
champ existe déjà.
Toutefois, je ne comprends pas pourquoi il n'y a pas de liens
physiques entre les tables des modules tiers0 (clients) -> agenda et
commande -> agenda alors qu'il existe un champs qui pourrait être la
clef étrangère dans la table agenda. Je n'en trouve en tout cas aucun
en me connectant à la base de donnée depuis libreoffice base.
Cela ne peut-il pas posé problème notamment avec des requêtes avec la
commande sql SELECT sur ces tables ?
Pourriez-vous m'expliquer ?
Merci d'avance
Salutations
mparchet
-------- Message original --------
Sujet: Requête sql de mon module non exécutées
Date : Sat, 07 Dec 2013 22:11:30 +0100
De : Michaël Parchet <[email protected]>
Pour : [email protected]
Bonjour,
J'essaie de développer un module dont le but est de créer un lien
entre les commandes d'un client et l'agenda.
Voici ce que fait mon module :
1.
ajouter le champ de clef etrangere fk commande. Dans la table
lx_commande )
2.
creer le lien entre commande et llx_actioncomm (event) de type 0,n
Malheureusement, rien ne s'est passé au moment où j'ai désactivé puis
réactiver le module. Je me suis dit qu'il y avait deux possibilité.
1. Les scipt sql contiennent des erreurs
2. L'exécution des script sql n'a tout simplement pas lieu.
Dans la documentation, on semble supposer que chaque module gère ses
tables or, dans mon cas il faudrait modifier une table existante ce
qui pourrait ne pas être prévu
Qu'en est-il ?
Je vous laisse ci-joint mon prototype de module pour examen.
Merci pour votre aide.
Salutations
mparchet
_______________________________________________
Dolibarr-dev mailing list
[email protected]
https://lists.nongnu.org/mailman/listinfo/dolibarr-dev
_______________________________________________
Dolibarr-dev mailing list
[email protected]
https://lists.nongnu.org/mailman/listinfo/dolibarr-dev