Archives de la liste a​i​d​e​@p​a​h​e​k​o​.c​l​o​u​d​

Requête pour avoir avoir la liste des adhérents et adhérentes ayant versé une cotisation ou un don à l’association

ID

19/11/2021 16:01:48

Bonjour tout le monde,

je viens de mettre sur le wiki fossils de Garradin une requête SQL dont 
je remercie l'auteur qui a eu la gentillesse de le faire pour moi. Cette 
requête vous permettra de récupérer la liste des personnes ayant payé 
quelque chose à l'association et de la copier-coller vers un tableur 
pour faire un publipostage et éditer des reçus fiscaux.

La requête est là :

https://fossil.kd2.org/garradin/wiki?name=Requ%C3%AAte%20export%20adh%C3%A9rents%20payants

Si cela vous intéresse, dites-le moi, je ferai un modèle de reçu fiscal 
pour LibreOffice et un tutoriel pour que vous puissiez éditer vos 
propres reçus fiscaux. Pourquoi LibreOffice ? Parce que c'est un 
logiciel libre performant et qu'on peut installer sur n'importe quelle 
machine quel que soit son système d'exploitation et il fonctionne pareil 
sous tous les OS. Et en plus je travaille avec un ordinateur sous Linux.

Ça, c'est en attendant qu'on puisse éditer ce genre de documents à 
partir de Garradin.

Bonne fin de journée.

Requête pour avoir avoir la liste des adhérents et adhérentes ayant versé une cotisation ou un don à l’association

Team SpipFactory

19/11/2021 17:58:11

je viens tester cool

Le 19/11/2021 à 16:01, ID a écrit :
> Bonjour tout le monde,
>
> je viens de mettre sur le wiki fossils de Garradin une requête SQL dont
> je remercie l'auteur qui a eu la gentillesse de le faire pour moi. Cette
> requête vous permettra de récupérer la liste des personnes ayant payé
> quelque chose à l'association et de la copier-coller vers un tableur
> pour faire un publipostage et éditer des reçus fiscaux.
>
> La requête est là :
>
>
https://fossil.kd2.org/garradin/wiki?name=Requ%C3%AAte%20export%20adh%C3%A9rents%20payants
>
> Si cela vous intéresse, dites-le moi, je ferai un modèle de reçu fiscal
> pour LibreOffice et un tutoriel pour que vous puissiez éditer vos
> propres reçus fiscaux. Pourquoi LibreOffice ? Parce que c'est un
> logiciel libre performant et qu'on peut installer sur n'importe
quelle
> machine quel que soit son système d'exploitation et il fonctionne pareil
> sous tous les OS. Et en plus je travaille avec un ordinateur sous Linux.

ça peu être intéressant  pour le déduction d’impôts


>
> Ça, c'est en attendant qu'on puisse éditer ce genre de documents
à
> partir de Garradin.
>
> Bonne fin de journée.
>

Requête pour avoir avoir la liste des adhérents et adhérentes ayant versé une cotisation ou un don à l’association

AMIS78

24/11/2021 17:01:00

Bonjour,

J'avais écrit une requête en début d'année avec le même objectif.
Celle-ci me paraissant beaucoup plus simple que la mienne, je l'ai
donc essayer.
Elle me retourne des résultats incomplets (les dons n'apparaissent
pas et pour les cotisations j'ai un écart d'une cotisation).
Je cherche à comprendre d'où vient la différence. Pour cela j'aurai
voulu savoir à quoi correspond la table "services_users" et quand 
elle est mise à jour.

Merci de votre aide,
Hubert Robitaille

Image : cid:part1.4G8bY91T.0tYWSG2C@mailo.fr
Le 19/11/2021 à 16:01, ID a écrit :

Bonjour tout le monde,

je viens de mettre sur le wiki fossils de Garradin une requête SQL dont 
je remercie l'auteur qui a eu la gentillesse de le faire pour moi. Cette 
requête vous permettra de récupérer la liste des personnes ayant payé 
quelque chose à l'association et de la copier-coller vers un tableur 
pour faire un publipostage et éditer des reçus fiscaux.

La requête est là :

https://fossil.kd2.org/garradin/wiki?name=Requ%C3%AAte%20export%20adh%C3%A9rents%20payants

Si cela vous intéresse, dites-le moi, je ferai un modèle de reçu fiscal 
pour LibreOffice et un tutoriel pour que vous puissiez éditer vos 
propres reçus fiscaux. Pourquoi LibreOffice ? Parce que c'est un 
logiciel libre performant et qu'on peut installer sur n'importe quelle 
machine quel que soit son système d'exploitation et il fonctionne pareil 
sous tous les OS. Et en plus je travaille avec un ordinateur sous Linux.

Ça, c'est en attendant qu'on puisse éditer ce genre de documents à 
partir de Garradin.

Bonne fin de journée.

Image :
https://ipmcdn.avast.com/images/icons/icon-envelope-tick-round-orange-animated-no-repeat-v1.gif[1]
Garanti sans virus. www.avast.com[2] 		

[3]

== Liens cités ==
1.
https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=emailclient
2.
https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=emailclient
3. #DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2

Requête pour avoir avoir la liste des adhérents et adhérentes ayant versé une cotisation ou un don à l’association

BohwaZ/Garradin

24/11/2021 23:41:56

> J'avais écrit une requête en début d'année avec le même
objectif.
> Celle-ci me paraissant beaucoup plus simple que la mienne, je l'ai
> donc essayer. Elle me retourne des résultats incomplets (les dons
> n'apparaissent pas et pour les cotisations j'ai un écart d'une
> cotisation). Je cherche à comprendre d'où vient la différence. Pour
> cela j'aurai voulu savoir à quoi correspond la table
"services_users"
> et quand elle est mise à jour.

services_users contient les inscriptions des membres (users) aux
activités (services).

Pour lister les membres dont l'activité n°2 est à jour et payée :

SELECT
  su.date AS 'Date d''inscription',
  su.expiry_date AS 'Date d''expiration',
  membres.*,
  membres.id AS _user_id
FROM membres
INNER JOIN (
  SELECT MAX(expiry_date) AS expiry_date, date, id_user
  FROM services_users
  WHERE id_service = 2 AND paid = 1
    AND (expiry_date >= date() OR expiry_date IS NULL)
  GROUP BY id_user) AS su
  ON su.id_user = membres.id
ORDER BY membres.numero;

Oui c'est un peu compliqué, c'est pour ça que la recherche avancée ne
le permet pas encore, mais ça va venir ;)

Ça sélectionne la dernière inscription (MAX(expiry_date)) à l'activité
n°2 (id_service = 2) qui est payée (paid = 1) et à jour.

Requête pour avoir avoir la liste des adhérents et adhérentes ayant versé une cotisation ou un don à l’association

AMIS78

25/11/2021 11:35:21

Merci pour l'information (et l'exemple de requête).
Du coup la requête proposée par Isabelle ne me semble pas adapter à 
l'édition des reçus fiscaux car si elle permet bien d'obtenir la liste 
des membres ayant payés quelque chose, le montant payé n'est pas correct 
car basé sur le tarif de l'activité (expected_amount) et non sur le 
montant versé. Typiquement un don a un tarif libre, ce qui amène à avoir 
un montant nul pour "expected_amount".
Je vais donc rester avec ma requête utilisée pour 2020.


Le 24/11/2021 à 23:41, BohwaZ/Garradin a écrit :
>> J'avais écrit une requête en début d'année avec le même
objectif.
>> Celle-ci me paraissant beaucoup plus simple que la mienne, je l'ai
>> donc essayer. Elle me retourne des résultats incomplets (les dons
>> n'apparaissent pas et pour les cotisations j'ai un écart
d'une
>> cotisation). Je cherche à comprendre d'où vient la différence.
Pour
>> cela j'aurai voulu savoir à quoi correspond la table
"services_users"
>> et quand elle est mise à jour.
> services_users contient les inscriptions des membres (users) aux
> activités (services).
>
> Pour lister les membres dont l'activité n°2 est à jour et payée :
>
> SELECT
>    su.date AS 'Date d''inscription',
>    su.expiry_date AS 'Date d''expiration',
>    membres.*,
>    membres.id AS _user_id
> FROM membres
> INNER JOIN (
>    SELECT MAX(expiry_date) AS expiry_date, date, id_user
>    FROM services_users
>    WHERE id_service = 2 AND paid = 1
>      AND (expiry_date >= date() OR expiry_date IS NULL)
>    GROUP BY id_user) AS su
>    ON su.id_user = membres.id
> ORDER BY membres.numero;
>
> Oui c'est un peu compliqué, c'est pour ça que la recherche avancée
ne
> le permet pas encore, mais ça va venir ;)
>
> Ça sélectionne la dernière inscription (MAX(expiry_date)) à
l'activité
> n°2 (id_service = 2) qui est payée (paid = 1) et à jour.
>

Requête pour avoir avoir la liste des adhérents et adhérentes ayant versé une cotisation ou un don à l’association

BohwaZ/Garradin

25/11/2021 11:54:27

> Merci pour l'information (et l'exemple de requête).
> Du coup la requête proposée par Isabelle ne me semble pas adapter à 
> l'édition des reçus fiscaux car si elle permet bien d'obtenir la
> liste des membres ayant payés quelque chose, le montant payé n'est
> pas correct car basé sur le tarif de l'activité (expected_amount) et
> non sur le montant versé. Typiquement un don a un tarif libre, ce qui
> amène à avoir un montant nul pour "expected_amount".
> Je vais donc rester avec ma requête utilisée pour 2020.

Pour avoir le montant payé il faut rajouter les tables
acc_transactions_users qui fait le lien entre une inscription et une
écriture comptable et acc_transactions_lines qui contient les lignes
des écritures :

SELECT
  su.date AS 'Date d''inscription',
  su.expiry_date AS 'Date d''expiration',
  SUM(tl.debit)/100 AS 'Montant réglé',
  expected_amount - SUM(tl.debit)/100 AS 'Reste à régler',
  membres.*,
  membres.id AS _user_id
FROM membres
INNER JOIN (
  SELECT MAX(expiry_date) AS expiry_date,
    date, id_user, id, expected_amount
  FROM services_users
  WHERE id_service = 2 AND paid = 1
    AND (expiry_date >= date() OR expiry_date IS NULL)
  GROUP BY id_user) AS su
  ON su.id_user = membres.id
LEFT JOIN acc_transactions_users tu
  ON tu.id_service_user = su.id
LEFT JOIN acc_transactions_lines tl
  ON tl.id_transaction = tu.id_transaction
GROUP BY membres.id
ORDER BY membres.numero;

J'ai mis à jour le wiki en conséquence.