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 :

Question de logique [AC-2003]


Sujet :

Requêtes et SQL.

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    449
    Détails du profil
    Informations personnelles :
    Âge : 58
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 449
    Points : 159
    Points
    159
    Par défaut Question de logique
    Bonjour

    voici une formule que je mets dans ma requête

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    CCONGES_PAYES: VraiFaux([CP] Est Null;"A demander";VraiFaux(Année([CP])>=Année(Maintenant())-1 Ou ([CPAnnée(Maintenant()) Ou ([CP])>=([FinIntervention])-160;"OK";"Périmé"))
    Je n'arrive pas à transcrire convenablement les conditions

    en fait Mon document Congés pour être valable doit être daté du 31/12 de l'année précédent l'année en cours (pour 2009 = 31/12/08) et il est valable pour toute l'année en cours, ou doit être daté de l'année en cours.

    Comment transcrire 31/12/aa pour remplacer Année(Maintenant())-1

    Merci

  2. #2
    Expert éminent
    Avatar de LedZeppII
    Homme Profil pro
    Maintenance données produits
    Inscrit en
    Décembre 2005
    Messages
    4 485
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Maintenance données produits
    Secteur : Distribution

    Informations forums :
    Inscription : Décembre 2005
    Messages : 4 485
    Points : 7 768
    Points
    7 768
    Par défaut
    Bonjour,

    peut-être
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    [CP] Entre SérieDate(Année(Maintenant())-1;12;31) Et SérieDate(Année(Maintenant());12;31)
    c'est à dire 31/12/Année précédente <= [CP] <= 31/12/Année en cours

    A+

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    449
    Détails du profil
    Informations personnelles :
    Âge : 58
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 449
    Points : 159
    Points
    159
    Par défaut
    Merci de ta réponse,

    mais à priori access n'apprecie pas le "entre"

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    CCONGES_PAYES: VraiFaux([CP] Est Null;"A demander";VraiFaux(Année([CP] Entre SérieDate(Année(Maintenant())-1;12;31) Et SérieDate(Année(Maintenant());12;31)Ou ([CP])>=([FinIntervention])-160;"OK";"Périmé"))
    il me dit que le nombre d'arguments n'est pas correct

  4. #4
    Expert éminent
    Avatar de LedZeppII
    Homme Profil pro
    Maintenance données produits
    Inscrit en
    Décembre 2005
    Messages
    4 485
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Maintenance données produits
    Secteur : Distribution

    Informations forums :
    Inscription : Décembre 2005
    Messages : 4 485
    Points : 7 768
    Points
    7 768
    Par défaut
    Bonjour,

    Le "Année" en rouge est de trop
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    CCONGES_PAYES: VraiFaux([CP] Est Null;"A demander";VraiFaux(Année([CP] Entre SérieDate(Année(Maintenant())-1;12;31) Et SérieDate(Année(Maintenant());12;31)Ou ([CP])>=([FinIntervention])-160;"OK";"Périmé"))
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    CCONGES_PAYES: VraiFaux([CP] Est Null;"A demander"; VraiFaux([CP] Entre SérieDate(Année(Maintenant())-1;12;31) Et SérieDate(Année(Maintenant());12;31) Ou ([CP])>=([FinIntervention])-160; "OK"; "Périmé"))
    L'expression
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    [CP] Est Null;"A demander"; VraiFaux([CP] Entre SérieDate(Année(Maintenant())-1;12;31) Et SérieDate(Année(Maintenant());12;31)
    renvoie true, pour 2009 par exemple, si 31/12/2008 <= [CP] <= 31/12/2009

    A+

  5. #5
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    449
    Détails du profil
    Informations personnelles :
    Âge : 58
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 449
    Points : 159
    Points
    159
    Par défaut
    Merci beaucoup pour ce joli coup de main

    bonne journée

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

Discussions similaires

  1. [PHP 5.3] Question de logique
    Par zerros dans le forum Langage
    Réponses: 0
    Dernier message: 18/09/2012, 15h16
  2. question sur logique MVC
    Par Finality dans le forum ASP.NET MVC
    Réponses: 7
    Dernier message: 21/04/2011, 13h12
  3. question sur logique de développement
    Par Finality dans le forum Windows Communication Foundation
    Réponses: 1
    Dernier message: 06/01/2009, 10h47
  4. Une question de logique
    Par Jeoffrey54 dans le forum Langage
    Réponses: 6
    Dernier message: 21/07/2008, 16h03
  5. Composant, socket et question de logique
    Par Hervé Saladin dans le forum Composants VCL
    Réponses: 1
    Dernier message: 09/04/2006, 16h56

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