[Résolu] Dates d'adhésion à une association

Discussions sur le module de base de données Base et plus particulièrement sur le langage SQL ou sur les connexions aux SGBD tiers.
Les questions sur les macros doivent être postées dans la section dédiée en dessous.

Modérateur : Vilains modOOs

Règles du forum
Cette section est dédiée au module Base et plus particulièrement sur le langage SQL ou sur les connexions aux SGBD tiers. Vous ne devez pas poster ici de questions sur les macros mais utiliser la section éponyme.
Pour accélérer les réponses, vous pouvez mettre en ligne votre base en joignant un fichier ODB : comment faire.
coucou
Membre OOrganisé
Membre OOrganisé
Messages : 76
Inscription : 08 sept. 2009 08:20

[Résolu] Dates d'adhésion à une association

Message par coucou »

Bonjour,

J'ai une base de données pour une ludothèque associative, avec une table "Adhérents" qui contient un champ "Date d'adhésion". Dans ce champ, j'entre la date de la dernière adhésion.
Avec une requête je peux trouver les adhérents qui ne sont pas à jour de leur cotisation (c'est-à-dire ceux dont la date de dernière adhésion est antérieure au 1er septembre de l'année civile précédente si on est entre le 1er janvier et le 31 août, ou ceux dont la date de dernière adhésion est antérieure au 1er septembre de l'année en cours si on est entre le 1er septembre et le 31 décembre).

Dans cette base de donnée, j'ai également un formulaires "emprunts", qui permet de sélectionner un adhérent ainsi que le jeu qu'il emprunte.

J'aimerais savoir s'il existe un moyen d'afficher sur ce formulaire la validité de la cotisation de l'adhérent. En d'autre termes, j'aimerais pouvoir visualiser rapidement sur ce formulaire d'emprunt si l'adhérent est à jour de sa cotisation. Je peux bien évidemment afficher sur ce formulaire la date de dernière adhésion, mais il serait bien plus pratique de voir apparaître par exemple une case à cocher "OUI/NON", qui m'informe si l'adhérent est à jour de sa cotisation. Cela sous-entend une fonction (macro?) qui comparerait la date actuelle avec la date de dernière cotisation.

Avez-vous des idées là-dessus ?

La base :
https://cjoint.com/c/HEjj2vmWhTz
Dernière modification par coucou le 09 mai 2018 12:31, modifié 1 fois.
LibreOffice Version: 5.1.6.2
LinuxMint 18.3
Piaf
GourOOu
GourOOu
Messages : 5622
Inscription : 25 nov. 2011 18:07
Localisation : Guyane

Re: Dates d'adhésion à une association

Message par Piaf »

Bonjour
Tu peux afficher la saison en cours en fonction de la date d'adhésion.
Saison.png

Code : Tout sélectionner

SELECT "Adherents".*, CASEWHEN( MONTH( "Date_Adhesion" ) > 8, YEAR( "Date_Adhesion" ) || '/' || YEAR( "Date_Adhesion" ) + 1, YEAR( "Date_Adhesion" ) - 1 || '/' || YEAR( "Date_Adhesion" ) ) "Saison" FROM "Adherents"
A+
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Libre Office Version: 6.1.6 et Apache OpenOffice 4.1.6 Sur Xubuntu 18.04 AMD64
coucou
Membre OOrganisé
Membre OOrganisé
Messages : 76
Inscription : 08 sept. 2009 08:20

Re: Dates d'adhésion à une association

Message par coucou »

Bonjour, et merci pour ta réponse.

Je ne comprends pas bien comment faire ça.... Le code, c'est pour une requête SQL ? Je ne sais pas quoi faire avec ça ...

EDIT: ah oui, j'ai compris. Je peux faire cette requête SQL, mais est-il possible de faire apparaître la "saison" dans un formulaire (en la liant à l'ID de l'adhérent) ?
LibreOffice Version: 5.1.6.2
LinuxMint 18.3
Piaf
GourOOu
GourOOu
Messages : 5622
Inscription : 25 nov. 2011 18:07
Localisation : Guyane

Re: Dates d'adhésion à une association

Message par Piaf »

Re
Tu créés une requête Adhérents comme envoyé dans mon message précédent.
Tu bases tes formulaires sur la requête à la place de la table Adhérents et tu ajoutes le champ saison.
Saison.png
Saison1.png
Le contrôle saison doit avoir comme propriété : Saisie requise > Non, En lecture seule > Oui, Tabulation > Non.
A+
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Libre Office Version: 6.1.6 et Apache OpenOffice 4.1.6 Sur Xubuntu 18.04 AMD64
coucou
Membre OOrganisé
Membre OOrganisé
Messages : 76
Inscription : 08 sept. 2009 08:20

Re: Dates d'adhésion à une association

Message par coucou »

Ok, j'y vois un peu plus clair.
Le problème est que ce formulaire "adhérents" me permet d'entrer des informations sur les adhérents qui vont dans la table "adhérents".
Or si je base mon formulaire sur une requête, je ne peut pas m'en servir pour modifier les informations sur les adhérents.

J'ai tenté de créer dans le formulaire "Adhérents" (basé sur la table "adhérents") un sous-formulaire basé sur la requête, et un champ "saison" dans ce sous-formulaire. Mais je ne sais plus comment lier le contrôle à l'ID de l'adhérent, de façon à ce que lorsque je sélectionne un adhérents, sa saison d'adhésion apparaisse bien dans le champ "saison".

EDIT : OK, j'ai compris mon erreur ! Je m'étais mélangé l'ordre de mes sous-formulaires !

Merci beaucoup pour cette aide précieuse !
LibreOffice Version: 5.1.6.2
LinuxMint 18.3