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 :

Date dans requete SQL (souci transaction) [WD14]


Sujet :

WinDev

  1. #1
    Membre chevronné
    Avatar de mogwai162
    Homme Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 376
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Vosges (Lorraine)

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 376
    Points : 1 860
    Points
    1 860
    Par défaut Date dans requete SQL (souci transaction)
    Bonjour.

    Je contruit une requete SQL via le code ci-dessous.

    Cette requete est excutée sur une base hyperfile c/s.

    Le champs DATE (datest) est de format date (AAMMJJJJ) classique sous hf.

    A l'endroit marqué [code à ajouter], je voudrais ajouter un teste sur cette date. Hors àa fait deux jours que j'essaie... Rien j'ai essayé plein de formats ça ne veut pas marcher... soit ça donne rien ... soit même des enregistrements qui ne correspondent pas au crtière.

    J'ai meme essayé hRequêteSansCorrectionHF au lieu du défaut traditionnel, rien n'y fait.

    Pouvez vous m'aider ?

    Merci d'avance.

    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
    Requete = "SELECT Steaks.NumBob AS NumBob, Steaks.DATE AS datest, Steaks.Heure AS heure, Steaks.Diametre_depart AS DIAMDEP, Steaks.Diametre_enleve AS DIAMENL," +...
    			"Steaks.Poids AS Poids, Steaks.Type_Steak AS TYPE, Steaks.code_machine AS Machine, Bobines.Code_Standard AS Standard, Etat_Bob.Raison AS Raison " +...
    			" FROM Etat_Bob, Steaks, Bobines WHERE Steaks.IDEtat_Bob = Etat_Bob.IDEtat_Bob AND Steaks.NumBob = Bobines.NumBob "
     
    ../...
    [code à ajouter]
    ../...
     
    MaRequete est une Source de Données
     
    SI PAS HExécuteRequêteSQL(MaRequete,hRequêteSansCorrectionHF,Requete) ALORS
    	Erreur(HErreurInfo())
    	Ferme
    FIN
     
    FichierVersTableMémoire(TableFichiers,MaRequete)

  2. #2
    Membre éclairé Avatar de Raptor92
    Homme Profil pro
    Directeur des opérations & Innovation
    Inscrit en
    Juin 2009
    Messages
    975
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Directeur des opérations & Innovation
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2009
    Messages : 975
    Points : 766
    Points
    766
    Par défaut
    Bonjour Mogway,

    Dans les requêtes que j'utilise, je me suis rendu compte qu'il me fallait utiliser le format : AAAAMMJJ qui correspond au format datesys().
    J'imagine que vous y avez pensé, mais sait on jamais.

    A bientôt
    Et bon courage

  3. #3
    Membre chevronné
    Avatar de mogwai162
    Homme Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 376
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Vosges (Lorraine)

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 376
    Points : 1 860
    Points
    1 860
    Par défaut
    oui j'ai même été voir comment il codifait ça dans une requête faite avec l'editeur.

    en effet il met 20100101 pour 1 janvier mais si je lui dit

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     AND (DATEST > "20100101")
    ça marche pas non plus

    Je deviens fou !

  4. #4
    Membre éclairé Avatar de Raptor92
    Homme Profil pro
    Directeur des opérations & Innovation
    Inscrit en
    Juin 2009
    Messages
    975
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Directeur des opérations & Innovation
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2009
    Messages : 975
    Points : 766
    Points
    766
    Par défaut
    Mogway,

    Sauf erreur de ma part, ne faut il pas mettre des cotes et non pas des guillemets: '20100101'

  5. #5
    Membre chevronné
    Avatar de mogwai162
    Homme Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 376
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Vosges (Lorraine)

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 376
    Points : 1 860
    Points
    1 860
    Par défaut
    Tu as raison bien sur mais ça vient pas de là. J'avais mis des simples dans mon code. j'ai mis des doubles dans le post parce que j'ai tapé à la main et pas fait un copier-coller.

    Du coup j'ai essayé avec des doubles mais la requête plante lamentablement alors.

    J'ai même essayé avec un % à la fin de la chaine mais pas mieux.

    c'est nul je vois vraiment pas pourquoi ça marche pas.

  6. #6
    Membre éclairé Avatar de Raptor92
    Homme Profil pro
    Directeur des opérations & Innovation
    Inscrit en
    Juin 2009
    Messages
    975
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Directeur des opérations & Innovation
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2009
    Messages : 975
    Points : 766
    Points
    766
    Par défaut
    Bonjour Mogway,

    Je vais peut être dire une bêtise, mais ne serait il pas possible de faire un test en utilisant datesys(), ainsi tu pourrait tester le format.
    Très bonne journée

  7. #7
    Membre expert

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2004
    Messages
    2 355
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2004
    Messages : 2 355
    Points : 3 888
    Points
    3 888
    Par défaut
    Salut,

    Je suis en 12 et j'ai essayé ce code sur un projet test avec une base HF :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Requete est une chaîne = "SELECT * FROM CLIENT WHERE NomContact LIKE '%' AND SaisiLe > 20100501"
     
    MaRequete est une Source de Données
    SI PAS HExécuteRequêteSQL(MaRequete,hRequêteDéfaut,Requete) ALORS
    	Erreur(HErreurInfo())
    	Ferme
    SINON
    	HLitPremier(MaRequete)
    	TANTQUE HTrouve(MaRequete)
    		Trace(MaRequete.NomContact)			
    		HLitSuivant(MaRequete)
    	FIN
    FIN
    Que je mette sans cote ou avec cote, la requête fonctionne bien. Le champ Date 'SaisiLe' est bien sûr au format AAAMMJJ.

  8. #8
    Membre chevronné
    Avatar de mogwai162
    Homme Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 376
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Vosges (Lorraine)

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 376
    Points : 1 860
    Points
    1 860
    Par défaut
    Damned ! J'ai trouvé !

    J'ai un souci de transaction. J'ai réussi à avoir un message d'erreur mais pas dans mon programme, là je n'en n'ai pas. Je n'en n'ai un que si :

    1 - Je teste sur la date

    ET

    2 - je lance ma requete via l'editeur de requête.

    sinon aucun message !!!!

    Il me dit alors que l'enregistrement 2517 est bloqué par une transaction non terminée et non annulée.

    Comme il s'agit d'une vieille transaction : impoossible de l'annuler.

    J'ai donc libéré l'enregistrement bloqué avec l'aide du bouton adéquat dans le centre de contrôle Hyperfile.

    Et je viens de retester ma requête, ellle fonctionne maintenant très bien !

    Merci quand même à vous deux.

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

Discussions similaires

  1. Différence de date dans requete SQL
    Par GarsDuCalvados dans le forum Requêtes
    Réponses: 2
    Dernier message: 30/11/2010, 13h28
  2. Afficher date du jour dans requete SQL between
    Par AurelienNF dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 04/11/2010, 00h19
  3. Probleme de date dans requete sql de supression
    Par scons dans le forum VBA Access
    Réponses: 3
    Dernier message: 11/08/2008, 10h01
  4. Probleme de date dans requete SQL vers base de donnée MS Access
    Par Uren dans le forum Persistance des données
    Réponses: 1
    Dernier message: 04/08/2008, 14h06
  5. [SQL] date du jour dans requete sql
    Par heteroclite dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 17/10/2006, 01h50

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