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 :

Requete VraiFaux avec plusieurs conditions


Sujet :

Access

  1. #1
    Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2018
    Messages
    150
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2018
    Messages : 150
    Points : 63
    Points
    63
    Par défaut Requete VraiFaux avec plusieurs conditions
    Bonjour voici une requête qui renvois une différence entre 2 dates en jours en fonction de la date de fin de mois (ici 31/10/18) et la date indiquée dans le champ STK_OUTDATE.


    Si STK_OUTDATE est Null alors la différence entre les 2 dates est le nombre de jour que contient la mois en cours (ici 31).
    Sinon si par exemple STK_OUTDATE contient 16/10/18 alors la différence est 31/10/18 - 16/10/18 = 15 jours.


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    NB_JOURS_STOCK: VraiFaux(EstNull([STK_OUTDATE]);Jour(SérieDate(Année(#01/10/2018#);Mois(#01/10/2018#)+1;+0));DiffDate("j";"01/" & Mois([STK_OUTDATE]) & "/" & Année([STK_OUTDATE]);[STK_OUTDATE]))

    J'aimerais rajouté une autre condition impliquant un autre champs date : STK_DENT mais je ne vois pas trop comment l'inscrire au seins me 1ere requête.


    Si STK_OUTDATE est Null et Si STK_DENT contient une date du mois en cours (ici par exemple 15/10/18), alors la différence en jours est 31/10/18 - STK_DENT (15/10/18) = 16 jours


    Nom : Capture.PNG
Affichages : 4365
Taille : 10,6 Ko

    merci de votre aide

  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
    A tester
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    NB_JOURS_STOCK: VraiFaux(EstNull([STK_OUTDATE]);Jour(SérieDate(Année(#01/10/2018#);Mois(#01/10/2018#)+1;+0));VraiFaux(EstNull([STK_OUTDATE]) AND ([STK_DENT]) Est Pas Null;DiffDate("j";"01/" & Mois([STK_DENT]) & "/" & Année([STK_DENT]);[STK_DENT]);DiffDate("j";"01/" & Mois([STK_OUTDATE]) & "/" & Année([STK_OUTDATE]);[STK_OUTDATE])))
    "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
    Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2018
    Messages
    150
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2018
    Messages : 150
    Points : 63
    Points
    63
    Par défaut
    Bonjour et merci pour cette réponse rapide. Cela ne fonctionne pas et me renvois constamment 31 jours sans tenir compte de STK_DENT .

    Voici une requète qui prend en compte juste ma dernière condition et qui fonctionne. maintenant comment l'intégrer avec la 1ere ?


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    NB_JOURS_STOCK_Test: VraiFaux(EstNull([STK_OUTDATE]) Et (Année([STK_DENT])=Année(Maintenant()) Et Mois([STK_DENT])=Mois(Maintenant()));DiffDate("j";[STK_DENT];#31/10/2018#))
    Nom : Capture.PNG
Affichages : 4236
Taille : 5,0 Ko

  4. #4
    Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2018
    Messages
    150
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2018
    Messages : 150
    Points : 63
    Points
    63
    Par défaut
    J'ai trouvé grâce à votre piste :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    NB_JOURS_STOCK_Test2: VraiFaux(EstNull([STK_OUTDATE]) Et (Année([STK_DENT])<=Année(Maintenant()) Et Mois([STK_DENT])<>Mois(Maintenant()));Jour(SérieDate(Année(#01/10/2018#);Mois(#01/10/2018#)+1;+0));VraiFaux(EstNull([STK_OUTDATE]) Et (Année([STK_DENT])=Année(Maintenant()) Et Mois([STK_DENT])=Mois(Maintenant()));DiffDate("j";[STK_DENT];#31/10/2018#);DiffDate("j";"01/" & Mois([STK_OUTDATE]) & "/" & Année([STK_OUTDATE]);[STK_OUTDATE])))
    merci bcp !

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

Discussions similaires

  1. requete avec plusieurs conditions
    Par hypothese dans le forum Requêtes
    Réponses: 6
    Dernier message: 30/09/2009, 17h15
  2. requete avec plusieurs conditions
    Par louis85 dans le forum Langage SQL
    Réponses: 4
    Dernier message: 26/05/2008, 10h50
  3. Si je fais un if() avec plusieurs conditions ..
    Par Pauli dans le forum Langage
    Réponses: 2
    Dernier message: 25/01/2007, 16h47
  4. like avec plusieur condition
    Par wayak3 dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 19/01/2007, 11h43
  5. requete update avec une condition
    Par youtou dans le forum Langage SQL
    Réponses: 5
    Dernier message: 07/06/2006, 20h55

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