IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Modélisation Discussion :

Heures au prorata de la date d'entrée


Sujet :

Modélisation

  1. #1
    Membre à l'essai
    Homme Profil pro
    Responsable de service informatique
    Inscrit en
    Octobre 2022
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : Allemagne

    Informations professionnelles :
    Activité : Responsable de service informatique

    Informations forums :
    Inscription : Octobre 2022
    Messages : 16
    Points : 14
    Points
    14
    Par défaut Heures au prorata de la date d'entrée
    Bonsoir,

    J'ai créé une BD pour mon club de voile et elle fonctionne relativement bien. I y a cependant un petit défaut:
    Les membres sont sensés accomplir 8 heures de travaux généraux dans l'année ou payer. Les nouveaux membres ne doivent accomplir qu'un nombre d'heures au prorata correspondant à la date de leur entrée dans le club.
    Toutes ces données sont enregistrées dans la BD pour que le trésorier puisse, en fin d'année, envoyer la facture aux membres qui n'ont pas accompli le nombre d'heures requis.

    Jusqu'au 31 décembre tout est parfait. Mais si j'ouvre la banque de données le 1er Janvier de l'année suivante, la BD considère que les nouveaux membres de l'année dernière ne sont plus nouveaux et calcule maintenant un nombre d'heures normal (8 heures).

    Jusqu'à présent j'ai détourné le problème en imprimant un Rapport au 31 décembre, en sauvegardant une copie de la BD pour les archives. Le 1er Janvier j'exécute un Delete query qui efface toutes les heures accomplies l'année précédente et tout le monde repart à zéro puisque les nouveaux membres de l'année dernière ne sont plus nouveaux maintenant.

    La fonction pour calculer les heures au prorata se base sur la date d'entrée dans le club et la date actuelle de l'ordi.

    Le défaut est qu'a partir de l'année suivante la banque de donnée archivée ne donne plus les données exactes pour les nouveaux membres de l'année. Ce n'est pas un gros problème mais je me demande s'il y aurait une autre solution plus élégante.
    Quelqu'un a-t-il été déjà confronté à ce genre de situation?

  2. #2
    Expert éminent
    Homme Profil pro
    Webplanneur
    Inscrit en
    Octobre 2007
    Messages
    4 262
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Réunion

    Informations professionnelles :
    Activité : Webplanneur

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 262
    Points : 6 561
    Points
    6 561
    Par défaut
    Salut
    Via une query et en calculant ne nombre de mois écoulés entre la date d'adhésion et la fin de l'année en cours.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    VraiFaux(DiffDate("m";[date_adhesion]-1;SérieDate(Année(date());12;31))>=12;8;(8/12)*(DiffDate("m";[date_adhesion]-1;SérieDate(Année(date());12;31))))
    Nom : 20230116_1.jpg
Affichages : 59
Taille : 17,1 Ko
    "Le savoir est la seule matière qui s'accroit quand on la partage" (Socrate)
    UR - ESIROI - GPME/CG/DCG8
    QTH :21°19'18"S - 055°25'32"E
    Inutile de me contacter par MP
    Merci de cliquer sur si la réponse vous a permis de résoudre votre problème et n'oubliez pas de clôturer le fil en cliquant sur

  3. #3
    Rédacteur/Modérateur

    Avatar de User
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    8 260
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2004
    Messages : 8 260
    Points : 19 423
    Points
    19 423
    Billets dans le blog
    63
    Par défaut Pour compléter
    Bonsoir,

    Jusqu'au 31 décembre tout est parfait. Mais si j'ouvre la banque de données le 1er Janvier de l'année suivante, la BD considère que les nouveaux membres de l'année dernière ne sont plus nouveaux et calcule maintenant un nombre d'heures normal (8 heures).
    A mon avis, mais je peux me tromper, il faut faire les calculs à partir d'une date enregistrée dans la base, par exemple la date de facturation.

    Pour compléter la réponse de Hyperion, si vous êtes le 1er janvier de l'année 2023, et que vous souhaitez réaliser les factures des membres pour l'année précédente 2022, alors il suffit de saisir comme date de facturation :

    Date_Facture = 31/12/2022

    Et vous reprenez la formule d'hyperion avec ce paramètre à la place de la date système :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    nbHeures : VraiFaux(DiffDate("m";[date_adhesion]-1;SérieDate(Année([Date_Facture]);12;31))>=12;8;(8/12)*(DiffDate("m";[date_adhesion]-1;SérieDate(Année([Date_Facture]);12;31))))
    Tout cela dans une requête qui relie les membres à leur facture (pour disposer de la date d'adhésion du membre et de la date de facturation).

    Comme cela vous aurez un nbre d'heures par année de facturation et par membre.

    Cdlt,
    Vous trouverez dans la FAQ, les sources ou les tutoriels, de l'information accessible au plus grand nombre, plein de bonnes choses à consulter sans modération

    Des tutoriels pour apprendre à créer des formulaires de planning dans vos applications Access :
    Gestion sur un planning des présences et des absences des employés
    Gestion des rendez-vous sur un calendrier mensuel


    Importer un fichier JSON dans une base de données Access :
    Import Fichier JSON

Discussions similaires

  1. [Dates] Différence entre deux heures
    Par covin85 dans le forum Langage
    Réponses: 2
    Dernier message: 26/09/2008, 19h47
  2. [Dates] difference entre 2 date
    Par byteBoy dans le forum Langage
    Réponses: 12
    Dernier message: 30/03/2006, 14h02
  3. Réponses: 3
    Dernier message: 27/01/2006, 12h36
  4. [Dates] intervalles entre deux timestamp
    Par maysa dans le forum Langage
    Réponses: 7
    Dernier message: 15/12/2005, 20h37
  5. Réponses: 9
    Dernier message: 10/08/2004, 17h13

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo