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

WinDev Discussion :

Requete, editeur et condition sur dates


Sujet :

WinDev

  1. #1
    Membre du Club
    Inscrit en
    Octobre 2009
    Messages
    123
    Détails du profil
    Informations forums :
    Inscription : Octobre 2009
    Messages : 123
    Points : 44
    Points
    44
    Par défaut Requete, editeur et condition sur dates
    Bonjour,

    J'ai un problème avec une de requête avec comme condition "date compris entre" (j'utilise l’éditeur de requête et je ne maitrise pas du tout le langage SQL).

    En regardant le résultat de la requête j'ai bien ma date de début mais pas ma date de fin, il semblerai donc que la condition est >= à ParamDat1 et <ParamDat2.

    Savez vous comment faire pour que ma date de fin apparaisse dans le résultat ?

    Merci d'avance

  2. #2
    Membre chevronné
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2009
    Messages
    1 278
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2009
    Messages : 1 278
    Points : 2 153
    Points
    2 153
    Par défaut
    ...peut être en créant 2 conditions... une supérieure ou égale à date de début et une autre inférieure ou égale à date de fin... après je sais pas comment tu fais ça avec le truc graphique !

  3. #3
    Membre émérite
    Homme Profil pro
    Développeur et responsable micros/réseaux
    Inscrit en
    Octobre 2010
    Messages
    1 286
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur et responsable micros/réseaux
    Secteur : Bâtiment

    Informations forums :
    Inscription : Octobre 2010
    Messages : 1 286
    Points : 2 562
    Points
    2 562
    Par défaut
    Bonjour,

    sinon tu affiches le code SQL de la requête et tu nous donnes ce que tu as à l'écran.
    Normalement, il faudra juste remplacer les lignes >= {ParamDat1} et < {ParamDat2} par une seule avec l'instruction between {ParamDat1} and {ParamDat2} ou si tu veux garder les 2 lignes, rajouter le = à la deuxième instruction.

    à bientôt,

    Nicolas

  4. #4
    Membre du Club
    Inscrit en
    Octobre 2009
    Messages
    123
    Détails du profil
    Informations forums :
    Inscription : Octobre 2009
    Messages : 123
    Points : 44
    Points
    44
    Par défaut
    Merci pour vos réponses, voici ma requête :

    Code sql : 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
    SELECT 
    	SituCalcPape.TYPE_LETTRAGE AS TYPE_LETTRAGE,	
    	SituCalcPape.DEBIT AS DEBIT,	
    	SituCalcPape.CREDIT AS CREDIT,	
    	SituCalcPape.Num_Ecriture AS Num_Ecriture,	
    	SituCalcPape.ThemeCalc AS ThemeCalc,	
    	SituCalcPape.DATeLettrage AS DATeLettrage,	
    	SituCalcPape.LETTRAGE AS LETTRAGE
    FROM 
    	SituCalcPape
    WHERE 
     
    	(
    		SituCalcPape.DATeLettrage BETWEEN {ParamDat1} AND {ParamDat2}
    		OR	SituCalcPape.DATeLettrage BETWEEN {ParamDat3} AND {ParamDat4}
    		OR	SituCalcPape.DATeLettrage BETWEEN {ParamDat5} AND {ParamDat6}
    		OR	SituCalcPape.DATeLettrage BETWEEN {ParamDat7} AND {ParamDat8}
    	)
    	AND	SituCalcPape.TYPE_LETTRAGE = {ParamTypLettrag}
    	AND	SituCalcPape.ThemeCalc = {ParamThemCalc}


    Du coup j'ai tenté en remplaçant BETWEEN par >= et AND par <= et il a pas aimé j'ai eu le message d'erreur "Mot inattendu"

    Sinon c'est vrai je peux passer par plusieurs requêtes mais je trouve ça lourd d'autant plus que j'ai deja pas mal de paramètres.

    Encore merci

  5. #5
    Membre chevronné
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2009
    Messages
    1 278
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2009
    Messages : 1 278
    Points : 2 153
    Points
    2 153
    Par défaut
    BETWEEN m'énerve parce que je me souviens jamais quand commence et s'arrête l'intervalle !!!!

    En revanche pour chaque BETWEEN tu dois écrire 2 restrictions....

    Donc
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    SituCalcPape.DATeLettrage BETWEEN {ParamDat3} AND {ParamDat4}
    devient
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    	SituCalcPape.DATeLettrage >= {ParamDat3}
    AND SituCalcPape.DATeLettrage <= {ParamDat4}

  6. #6
    Membre éprouvé
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    556
    Détails du profil
    Informations personnelles :
    Localisation : Laos

    Informations forums :
    Inscription : Mars 2003
    Messages : 556
    Points : 1 198
    Points
    1 198
    Par défaut
    Bonjour,

    Un BETWEEN se traduit avec les dates incluses. Donc si vous êtes sûr de votre requête, je soupçonne plutôt le type de données.
    Confirmez-vous que la rubrique SituCalcPape.DATeLettrage est bien une date et pas une dateHeure ?

    Car dans le cas d'une dateHeure, si on ne précise pas l'heure, c'est minuit qui est mis par défaut... du coup, on exclu indirectement les dates de la borne MAX car généralement supérieur à minuit. D'où le comportement que vous décrivez.

Discussions similaires

  1. condition sur date dans table
    Par morgane32 dans le forum Modélisation
    Réponses: 4
    Dernier message: 15/10/2008, 10h51
  2. Requête condition sur date
    Par napegadie dans le forum Windows Forms
    Réponses: 4
    Dernier message: 19/06/2007, 14h24
  3. Requetes Avec Count et condition sur date
    Par Harry dans le forum WinDev
    Réponses: 1
    Dernier message: 04/06/2007, 15h23
  4. Requete avec une condition sur le resultat [10g]
    Par hotkebab99 dans le forum Oracle
    Réponses: 5
    Dernier message: 12/09/2006, 11h33
  5. [Access] requete sql avec condition sur date
    Par qeja dans le forum Langage SQL
    Réponses: 4
    Dernier message: 25/03/2006, 23h54

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