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 :

Module de mise à jour des champs d'une table


Sujet :

Access

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    32
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 32
    Points : 12
    Points
    12
    Par défaut Module de mise à jour des champs d'une table
    Bonjour, je souhaiterai faire une action dans ma base mais j'ai aucune idée de comment faire ça dc tous vos conseils seront précieux...

    J'ai un champ [A] dépendant de la date du jour dans une table T1.
    Je souhaite qu'à chaque ouverture de la base, un programme parcourt la table T1 et mette à jour le champ [A] de chaque ligne....

    Est ce que cel est possible, et si oui, pourriez vous me donner des pistes...
    Merci par avance.

  2. #2
    Expert éminent
    Avatar de cafeine
    Inscrit en
    Juin 2002
    Messages
    3 904
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 3 904
    Points : 6 781
    Points
    6 781
    Par défaut
    Hello,

    Oui c'est possible ... mais est-ce utile ?

    une macro autoexec qui lance une requête mise à jour (UPDATE) ...
    Ne mettez pas "Problème" dans vos titres, par définition derrière toute question se cache un problème
    12 tutoriels Access



  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    32
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 32
    Points : 12
    Points
    12
    Par défaut
    ben vi, pour mon appli, ca l'est...

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    32
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 32
    Points : 12
    Points
    12
    Par défaut
    Pour que vous comprennez mieux,
    J'ai un champ [A] dans la table T1 qui fait la différence entre une date butée et la date du jour.

    Ainsi, j'obtiens une valeur lors de l'enregistrement mais je dois mette à jour tous les champs [A] tous les jours.

    Si quelq'un voit comment écrire un module qui saurait faire ça, je suis preneur!!!!

    Merci

  5. #5
    Expert éminent
    Avatar de cafeine
    Inscrit en
    Juin 2002
    Messages
    3 904
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 3 904
    Points : 6 781
    Points
    6 781
    Par défaut
    Citation Envoyé par kikaillo
    Pour que vous comprennez mieux,
    J'ai un champ [A] dans la table T1 qui fait la différence entre une date butée et la date du jour.

    Ainsi, j'obtiens une valeur lors de l'enregistrement mais je dois mette à jour tous les champs [A] tous les jours.

    Si quelq'un voit comment écrire un module qui saurait faire ça, je suis preneur!!!!

    Merci
    C'est sans doute utile pour toi, mais peut-être parce qu'il y a une erreur de conception.

    Stocker une différence entre la date courante et une date stockée, revient à enregistrer une donnée volatile. Les requêtes sont faites pour cela, avec leurs champs calculés.

    un exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    SELECT Clients.*, Date()-[datSigne] AS Duree
    FROM Clients;
    Ne mettez pas "Problème" dans vos titres, par définition derrière toute question se cache un problème
    12 tutoriels Access



  6. #6
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    32
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 32
    Points : 12
    Points
    12
    Par défaut
    Et il faut déclarer DUREE dans la table?

  7. #7
    Expert éminent
    Avatar de cafeine
    Inscrit en
    Juin 2002
    Messages
    3 904
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 3 904
    Points : 6 781
    Points
    6 781
    Par défaut
    Non c'est un champ calculé par la requête, donc non stocké dans la table ...
    Vu que cette durée change chaque jour ... à quoi bon la stocker ?
    Ne mettez pas "Problème" dans vos titres, par définition derrière toute question se cache un problème
    12 tutoriels Access



  8. #8
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    32
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 32
    Points : 12
    Points
    12
    Par défaut
    Pour mon exemple, ca ferait donc:


    SELECT T1.A, Date()-[datSigne] AS Duree
    FROM T1;
    ???


    C koi datsigne??
    désolé mais ca devient dur pour moi...

  9. #9
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    32
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 32
    Points : 12
    Points
    12
    Par défaut
    Ca y'est ca fonctionne merci, c vrai que c bcp mieux mais ca change complètement mon prog...

    En fait en fonction du signe de la différence Date_butée - Date_jour, un champ de la table était :
    - soit "Bonjour"
    - soit "Au revoir"

    Est ce que je peux faire faire ça à ma requête?

  10. #10
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    32
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 32
    Points : 12
    Points
    12
    Par défaut
    Etant donné que ma valeur ("bonjour" ou "au revoir") va changer en fonction de la date du jour, j'aurai tendance à dire que, comme l'exemple précéden, je ne devrai pas la stocker mais juste la faire calculer par ma requête...


    Seulement, ya pas de if dans ces reqûetes bref je suis bloqué, HELP I need somebody, Help!!!

    Merci par avance de votre aide.

  11. #11
    Expert éminent
    Avatar de cafeine
    Inscrit en
    Juin 2002
    Messages
    3 904
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 3 904
    Points : 6 781
    Points
    6 781
    Par défaut
    Bien sur qu'il y a des conditions dans les requêtes ...

    1- essaie de grouper tes réflexions sur un seul post
    2- regarde un peu l'aide, fait des recherches (forum, FAQ, sources) avant de poster
    Pensez à utiliser Recherche avancée sur le forum

    la FAQ
    http://access.developpez.com/faq/?page=rechercher

    Merci
    Ne mettez pas "Problème" dans vos titres, par définition derrière toute question se cache un problème
    12 tutoriels Access



  12. #12
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    32
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 32
    Points : 12
    Points
    12
    Par défaut
    Merci pour tes conseils,

    Effectivement dans l'aide etc ya des conditons sur les requêtes mais mon pb est plus compliqué....

    Je ne vois jamais des cas sur une requête ou on a mon cas:

    un champ renvoyé par la requête (mon bonjou ou au revoir) dépend d'un autre champ de cette même requête(le duree que tu as trouvé, ca c top)...

    C vraiment pas de la mauvaise volonté, je crois que je suis nul, faut que je me résigne...

    arf..

  13. #13
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    32
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 32
    Points : 12
    Points
    12
    Par défaut
    Après un long benchmark, j'arrive au code suivant mais ca plante...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    SELECT Table1.num, Table1.name, Date()-Table1.Date AS Duree, (If(Duree<0,"POS","NEG")) AS Resultat
    FROM Table1;
    Quelq'un a une idée?

  14. #14
    Expert éminent
    Avatar de cafeine
    Inscrit en
    Juin 2002
    Messages
    3 904
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 3 904
    Points : 6 781
    Points
    6 781
    Par défaut
    Premier commentaire If est la condition dans VBA (If .. Then .. Else), et Iif est la condition dans une expression.
    Ne mettez pas "Problème" dans vos titres, par définition derrière toute question se cache un problème
    12 tutoriels Access



  15. #15
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    32
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 32
    Points : 12
    Points
    12
    Par défaut
    Merci, effectivement ca fonctionne bien, j'ai intégré le code suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    <div style="text-align: left;">SELECT Table1.num, Table1.name, Date()-Table1.Date AS Duree, (Iif(Duree<0,'POS','NEG')) AS Resultat
    FROM Table1;</div>

    Mais il ne sort rien...Du coup j'ai fait le test suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    <div style="text-align: left;">SELECT Table1.num, Table1.name, Date()-Table1.Date AS Duree, Duree AS Resultat
    FROM Table1;</div>
    Et pareil, il ne sort rien...
    Il ne semble pas capable de réutiliser le champ Duree.

    Bref, ça m'embête pas mal.Merci par avance à la personne qui parviendra à me sortir de cette impasse...

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

Discussions similaires

  1. Mise à jour des champs d'une datagrid
    Par johnaliashead dans le forum Silverlight
    Réponses: 4
    Dernier message: 08/02/2011, 11h04
  2. mise à jour des champs d'une ligne de table
    Par laurentSc dans le forum Langage SQL
    Réponses: 6
    Dernier message: 25/12/2009, 19h09
  3. Mise à jour des champs d'une table
    Par soso78 dans le forum Access
    Réponses: 2
    Dernier message: 14/12/2006, 15h57
  4. Réponses: 6
    Dernier message: 07/02/2006, 14h44

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