L'arrivée de ces exports est une excellente nouvelle. Je pense que beaucoup de 
trésoriers ou secrétaires utilisant galette les attendent. 
Je vous encourage 
Amicalement 
 
Envoyé depuis l'application Mail Orange
----------------
Le 21/01/2020, à 20:32, Guillaume Rousse a écrit :



Le 21/01/2020 à 11:49, JLM a écrit :
> Bonjour,
> 
> Bonne année à tous et surtout à Galette, puisse-t-elle continuer à se 
> bonifier d’année en année et continuer à nous rendre service au quotidien !
> 
> Je m’intéresse depuis peu à la personnalisation des scripts d’export. Je 
> parviens à exporter dans un même fichier les données de plusieurs tables 
> grâce à la fonction “inner join”, mais j’ai deux problèmes :
> 
> - je n’arrive pas à récupérer une info dans une troisième table qui n’a pas 
> de champ commun avec toutes les tables impliquées dans le script, mais 
> seulement avec une seule. Par exemple, avec le script ci-dessous, en partant 
> de l’id adhérent, je récupère sa cotisation dans la table 
> galette_cotisations, ainsi que son numéro de groupe dans la table 
> galette_groups_members, mais je ne sais pas comment récupérer le nom du 
> groupe qui correspond à ce numéro de groupe, et qui se trouve dans une 
> nouvelle table galette_groups…Il te faut une 3e jointure:
INNER JOIN galette_groups ON 
(galette_groups_members.id_group=galette_groups.id_group)
et remplacer id_group par group_name dans la liste des champs souhaités

Et si tu veux rendre le résultat un poil plus lisible, tu peux utiliser 
des aliases:
SELECT nom_adh, prenom_adh, montant_cotis, group_name, date_fin_cotis
FROM galette_adherents AS adherents
INNER JOIN galette_cotisations AS cotisations ON
     (adherents.id_adh=cotisations.id_adh)
INNER JOIN galette_groups_members AS members ON
     (members.id_adh=adherents.id_adh)
INNER JOIN galette_groups AS groups ON
     (members.id_group=groups.id_group)

> - ensuite, ce script me permet de récupérer toutes les cotisations des 
> adhérents, or, je ne souhaite exporter que la dernière cotisation en date. 
> Là, j’ai toutes les cotisations cumulées depuis qu’ils ont commencé à adhérer
Une condition de tri décroissante suivie d'une limite devrait 
correspondre à ton besoin:
ORDER BY date_enreg DESC
LIMIT 1

Non testé, je n'ai ni groupes, ni cotisations dans ma base.

A+
-- 
Guillaume

-- 
Galette users discussions

http://galette.eu - http://galette.eu/documentation
http://bugs.galette.eu/projects/galette/

List documentation: https://listengine.tuxfamily.org/lists.galette.eu/users/


--
Galette users discussions

http://galette.eu - http://galette.eu/documentation
http://bugs.galette.eu/projects/galette/

List documentation: https://listengine.tuxfamily.org/lists.galette.eu/users/

Répondre à