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

Access Discussion :

Créer une alerte [AC-2007]


Sujet :

Access

  1. #1
    Membre habitué Avatar de DurDur
    Homme Profil pro
    Retraité
    Inscrit en
    Avril 2005
    Messages
    244
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 80
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Distribution

    Informations forums :
    Inscription : Avril 2005
    Messages : 244
    Points : 135
    Points
    135
    Par défaut Créer une alerte
    Bonsoir,

    Pour mon usage personnel, j'ai réalisé une petite base de données avec ACCESS 2007.
    - J'ai une table contenant la date de début du prêt.
    - J'aimerais, à la mise en route (donc avec la date du jour), recevoir une alerte si la date d'échéance du prêt approche ou si elle est dépassée, et si possible visualisée les titres, sachant que la durée du prêt est de 4 semaines.
    - Je ne voudrais pas utiliser mon champ DateReour pour la saisie de la date réelle du Retour.
    - J'ai essayé de faire une requête, mais je n'arrive pas à intégrer ce code pour calculer la date prévue du retour et la comparer à la date du jour. Ce code fonctionne hors requête.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    dateadd("ww",4,datedébut)>now()
    Avez-vous une idée ?

    Merci pour votre aide.

    JCB

  2. #2
    Rédacteur/Modérateur

    Avatar de User
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    8 371
    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 371
    Points : 19 777
    Points
    19 777
    Billets dans le blog
    65
    Par défaut
    Bonjour,

    En mode création de la requête, ajouter un champ calculé DateEcheance dans votre requête :

    DateEcheance : AjDate("ee";4;[DateDebut])

    Mettre en dessous de ce champ, sur la ligne Critères :

    >= Date()

    Cela va garder uniquement les prêts arrivés à échéance.

    Vous pouvez d'ailleurs ajuster le critère si vous souhaitez être prévenu avant (prêts dont l'échéance est proche,..).


    Ensuite, si vous avez un formulaire d'accueil qui s'ouvre au démarrage, alors vous pouvez mettre du code sur son événement ouverture :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    Private Sub Form_Open(Cancel As Integer)
        Dim rst As DAO.Recordset
     
        'ouverture du jeu d'enregistrements de la requête avec le filtre
        Set rst = CurrentDb.OpenRecordset("Requete_echeances")
     
        If Not rst.EOF Then ' si des prêts arrivent à échéance
            MsgBox "Alerte - échéance prêt !", vbExclamation
            ' ouvrir le formulaire basé sur la requête
            ' DoCmd.Openform "Formulaire_Echeances" 
        End If
     
        ' fermeture et libération
        rst.Close
        Set rst = Nothing
    End Sub

    Cdlt,

  3. #3
    Membre habitué Avatar de DurDur
    Homme Profil pro
    Retraité
    Inscrit en
    Avril 2005
    Messages
    244
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 80
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Distribution

    Informations forums :
    Inscription : Avril 2005
    Messages : 244
    Points : 135
    Points
    135
    Par défaut
    Bonjour,

    Merci pour votre réponse rapide et précise.
    Après adaptation, voilà le résultat.
    J'avais bien pensé à un "champ calculé" mais je ne savais pas le mettre en pratique.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    ‘AlerteBientot :
    SELECT tbl_Fiches.RefLivre, tbl_Fiches.Livre, tbl_Fiches.Debut, tbl_Fiches.Retour, DateAdd("ww",4,[Debut])-Date() AS Difference
    FROM tbl_Fiches
    WHERE (((tbl_Fiches.Debut)>=#3/1/2024#) AND ((tbl_Fiches.Retour) Is Null) AND ((DateAdd("ww",4,[Debut])-Date()) Between 0 And 7));
     
    ‘AlerteRetard
    SELECT tbl_Fiches.RefLivre, tbl_Fiches.Livre, tbl_Fiches.Debut, tbl_Fiches.Retour, DateAdd("ww",4,[Debut]) AS DateEcheance
    FROM tbl_Fiches
    WHERE (((tbl_Fiches.Debut)>=#3/1/2024#) AND ((tbl_Fiches.Retour) Is Null) AND ((DateAdd("ww",4,[Debut]))<=Now()));
    Maintenant je vais mettre en place la deuxième partie, c'est l'affichage de l' "ALERTE"

    Merci encore de votre aide.

    JCB

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Crer une jolie Horloge
    Par HwRZxLc4 dans le forum Général JavaScript
    Réponses: 10
    Dernier message: 23/05/2006, 10h18
  2. Affichage caractéres spéciaux dans une alert.
    Par nebule dans le forum Général JavaScript
    Réponses: 13
    Dernier message: 05/05/2006, 13h51
  3. Créer une alerte à partir d'une date donnée
    Par Skumps dans le forum Access
    Réponses: 4
    Dernier message: 13/04/2006, 16h12
  4. [Conception] Creer une alerte
    Par nicotine002 dans le forum Général Java
    Réponses: 2
    Dernier message: 28/02/2006, 13h29
  5. [Reports 6i] Faire afficher une alerte.
    Par macben dans le forum Reports
    Réponses: 3
    Dernier message: 15/02/2005, 10h47

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