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 :

Pb d'interprétation de date dans requête


Sujet :

Requêtes et SQL.

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    199
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Mars 2004
    Messages : 199
    Points : 103
    Points
    103
    Par défaut Pb d'interprétation de date dans requête
    Bonjour à tous,

    Voilà, maintenant je craque et je poste des fois que...

    Dans le code suivant :
    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
    17
    18
    19
    20
    21
    22
     
    DateMvt = dtNomDyna![Date Mvt]
        Entrée = IIf(dtNomDyna![Qté] > 0, True, False)
        If Entrée = True Then ' Si c'est une entrée, on valorise à la date de fin de mois
            DateMvt = DateSerial(Year(DateMvt), Month(DateMvt) + 1, 0)
        End If
     
        'Recherche du prix
        compil = "SELECT TOP 1 Id_art, Date, Prix_par_Ustk " & _
        "FROM [Prix exploitables graph] WHERE Id_art = " & Article & "  And Date <= #" & DateMvt & "#" & _
        " ORDER BY Date DESC;"
     
        Set Dqdef = CurrentDb.CreateQueryDef("")
        Dqdef.sql = compil
        Set JeuPrix = Dqdef.OpenRecordset(dbOpenDynaset)
        If JeuPrix.AbsolutePosition > -1 Then 'Il y a un prix
            PuHT = JeuPrix.[Prix_par_Ustk]
            DatePrix = JeuPrix.[Date]
        Else
            PuHT = Null
            DatePrix = Null
        End If
    je vérifie si c'est une entré en stock. Si oui, la facture arrivant après l'entrée en stock, je dois rechercher mon prix jusqu'en fin de mois.
    Donc, le problème est le suivant :

    Dans la requête qui suit, si la date est directement prise à partir de la valeur du champ "dtNomDyna![Date Mvt]", la date est correctement prise en compte et le filtre fonctionne correctement.

    Si la date est ramenée à celle de fin de mois (30/09/07) par exemple, la requête ne la prend pas.

    Inutile de vous dire que j'ai essayé tous les formats qui me semblaient possibles en passant entre # ou sans et en faisant varier les ddmmyy ou yyddmm etc.

    Bref, après avoir passé tout l'après-midi dessus, j'abandonne.

    Merci à tous par avance.

    PS version access 2003

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour

    Dans les requêtes, les dates doivent être au format US (mm/dd/yyyy).

    Pour cela utilises la fonction format, un peu de lecture dans la http://access.developpez.com/faq/ind...?rechercher=us

    Starec

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    199
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Mars 2004
    Messages : 199
    Points : 103
    Points
    103
    Par défaut
    Merci Starec.

    Pourtant ce n'étais pas faute d'avoir cherché dans la FAQ...

Discussions similaires

  1. between date dans requête donne des faux résulats
    Par pschmidtke dans le forum Requêtes et SQL.
    Réponses: 5
    Dernier message: 08/06/2006, 16h43
  2. Problème avec date dans requête
    Par alain94 dans le forum Access
    Réponses: 2
    Dernier message: 22/05/2006, 07h49
  3. date dans requête mysql
    Par camflex dans le forum Langage SQL
    Réponses: 1
    Dernier message: 16/11/2005, 12h29
  4. [Access 2003] - Problème date dans requête
    Par Leesox dans le forum Access
    Réponses: 11
    Dernier message: 14/10/2005, 08h51
  5. Problème de date dans requête de màj imbriquée
    Par VirginieGE dans le forum Langage SQL
    Réponses: 11
    Dernier message: 20/07/2004, 15h34

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