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

Requêtes et SQL. Discussion :

Timer sur requête [AC-2003]


Sujet :

Requêtes et SQL.

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    388
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 388
    Par défaut Timer sur requête
    Bonjour à tous.
    est-il possible d'automatiser une requête, avec une sorte de "timer" pour que celle-ci se reproduise à intervalle régulier, sans intervention de l'utilisateur.
    Si oui, quelle piste à explorer..?

  2. #2
    Rédacteur

    Avatar de zoom61
    Homme Profil pro
    ...
    Inscrit en
    Janvier 2005
    Messages
    9 434
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Vienne (Limousin)

    Informations professionnelles :
    Activité : ...
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2005
    Messages : 9 434
    Billets dans le blog
    11
    Par défaut
    Salut,

    Avec du VBA...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Public Sub Attendre(Optional iSecondes As Integer = 0, Optional bHrglass As Boolean = True)
       Dim lfin As Long
       If bHrglass = True Then DoCmd.Hourglass bHrglass
       lfin = Timer + iSecondes
       Do
          DoEvents
       Loop Until Timer >= lfin
       If bHrglass = True Then DoCmd.Hourglass False
    End Sub
    Et dans ton code pour la requête :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Timer1:
        Attendre (30 * 60) 'attente de 30mn
        DoCmd.OpenQuery "REQUETE"
        GoTo Timer1
    @+.

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    388
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 388
    Par défaut
    bonjour,
    et merci zoom61 pour cette piste de travail.
    dans cette hypothèse, Access doit rester "ouvert" en permanence bien sur.
    Par contre, je ne comprends pas bien, la requêteSQL doit être crée en VBA..?
    Merci

  4. #4
    Rédacteur

    Avatar de zoom61
    Homme Profil pro
    ...
    Inscrit en
    Janvier 2005
    Messages
    9 434
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Vienne (Limousin)

    Informations professionnelles :
    Activité : ...
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2005
    Messages : 9 434
    Billets dans le blog
    11
    Par défaut
    Non, DoCmd.OpenQuery "REQUETE", c'est la commande qui permet d'appeler une requête.

    @+.

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    388
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 388
    Par défaut
    Re bonjour,
    et re-merci !
    malgré tout, je crois qu'il va falloir que je passe quand même par le vba, car j'ai besoin d'une requête qui selon le résutat envoie un e-mail à une ou plusieurs adresses définies au départ avec comme contenu le résultat de la requête.
    En clair, j'ai une table qui se nomme "reactifs_volatils" avec des champs:
    "ReactRef", "React_Utilisation", "React_Valeur".
    cette table est mise à jour plusieurs centaine de fois par jour par des dizaines d'utilisateurs.
    Mon but est de déclancher l'envoi d'un mail auto si la valeur de "React_Valeur"est > à 2 avec dans le mail un message du style:
    Attention : pour "ReacRef"et React_Utilisation", la valeur est supérieure à 2("React_Valeur")
    je souhaiterais que cette procédure se répète toutes les 30 minutes par exemple.
    Je crois qu créer la requête en vba est trop dur pour moi..

  6. #6
    Rédacteur

    Avatar de zoom61
    Homme Profil pro
    ...
    Inscrit en
    Janvier 2005
    Messages
    9 434
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Vienne (Limousin)

    Informations professionnelles :
    Activité : ...
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2005
    Messages : 9 434
    Billets dans le blog
    11
    Par défaut
    Voici le code pour exécuter une requête en VBA :
    Code vba : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    SQL = "SELECT ReactRef, React_Utilisation, React_Valeur FROM reactifs_volatils"
    Set oSQL = CurrentDb.OpenRecordset(SQL)
    Do Until oSQL.EOF
        If Dir(oSQL("React_Valeur")) > 2 Then
            'Commande d'envoi des mails
        End If
        oSQL.MoveNext
    Loop

    @+.

  7. #7
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    388
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 388
    Par défaut
    je rougis de mon ignorance..!!
    mais où dois-je placer ces codes..?
    faut-il que je crée un module à cet effet..?

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

Discussions similaires

  1. [Toutes versions] Timer sur requête
    Par naphta dans le forum Modélisation
    Réponses: 4
    Dernier message: 27/07/2009, 09h27
  2. Pb sur Requête croisée Access
    Par Proview dans le forum Access
    Réponses: 3
    Dernier message: 04/10/2005, 17h33
  3. aide sur requête sql
    Par Vodkha dans le forum Langage SQL
    Réponses: 9
    Dernier message: 30/08/2005, 17h53
  4. Aide sur Requête SQL
    Par devdev dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 11/05/2005, 12h33
  5. Besoin d'aide sur requête croisée
    Par keawee dans le forum Access
    Réponses: 7
    Dernier message: 18/11/2004, 09h46

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