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 :

Question sur une requête [WD14]


Sujet :

WinDev

  1. #1
    Membre éclairé Avatar de Raptor92
    Homme Profil pro
    Directeur des opérations & Innovation
    Inscrit en
    Juin 2009
    Messages
    953
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 66
    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 : 953
    Points : 766
    Points
    766
    Par défaut Question sur une requête
    Bonjour à Tous,

    Avec le code ci-dessous, je cherche à envoyer une alerte mail si la quantité en stock est > à 0.

    Mais je dois faire une erreur car cela envoi une alerte dans tous les cas.

    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
    SQLChangeConnexion(gnConn3)
    sReqêteAlerteStock est une chaîne="SELECT SUM(STOC_QUANTITE) FROM STOCKS WHERE STOC_QUANTITE <> 0 AND STOC_EMPLACEMENT ='R-COR-PIK' "
    SI EnModeTest() ALORS Trace(sReqêteAlerteStock)
    SI SQLExec(sReqêteAlerteStock,"ReqAlerteStock") ALORS
    	SQLTable("ReqAlerteStock",TABLE_ALERTE_STOCK)
     
    	FIN
    	POUR TOUTE LIGNE DE TABLE_ALERTE_STOCK
    	SI TABLE_ALERTE_STOCK.COL_STOC_QTE..Valeur <> 0 ALORS
    	Alerte_Stocks_LOTUS()
    		SINON SI TABLE_ALERTE_STOCK.COL_STOC_QTE..Valeur = 0 ALORS
     
    		FIN	
    	FIN
    SQLFerme("ReqAlerteStock")
    SQLChangeConnexion(gnConn3)
    Pouvez vous me donner votre avis.

    Très bonne journée
    Raptor92
    Dominique
    Aucune aide par MP, utilisez le forum.

    Mon guide du débutant pour apprendre à programmer en Java - N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java


  2. #2
    Membre émérite

    Profil pro
    Inscrit en
    Mars 2005
    Messages
    1 683
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mars 2005
    Messages : 1 683
    Points : 2 579
    Points
    2 579
    Par défaut
    Bonjour,

    Focalisez vous sur les données de votre requête. Le résultat attendu (mail de notification) est une finalité qui ne sera atteinte que si les données de votre requête sont bonnes.

    Tout ça pour dire que quand vous présentez un problème de requête, il est préférable d'indiquer les tables et colonnes qui entrent en jeu, le résultat attendu, la requête utilisée et le résultat obtenu.

    Le code qui exploite le résultat est un autre problème qui sera traité que si cette partie est bonne.

    Et au final ce ne sera peut être pas un problème de Windev

  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
    Salut.

    J'ai pas bien compris le test a l'intérieur de la boucle. normalement tu aurais du tout mettre au niveau de ta requête. Celle ci ne devrait te lister que ce que tu veux envoyer comme informations.
    Patrick Catella

    Je ne réponds pas aux messages privés si ceux ci suivent un sujet. Il est préférable pour tous de poursuivre la discussion dans le sujet d'origine.

    Je suis Concepteur développeur Windev (10 ans) et Windev mobile (4 ans) en recherche d'emploi. J'etudie toute proposition

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    444
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 444
    Points : 428
    Points
    428
    Par défaut
    A quel moment tu déclenches ta requête ?

    Je saisi pas trop l'enchainement de 2 SI : tu as SI <> 0 et après le SINON tu mets un autre SI = 0. Dans la théorie si c'est pas <> 0 ça doit être =0.

    Par contre tu dis que ça doit envoyer un mail si c'est > 0. Les valeurs peut-être négatives ?
    Mieux vaut un petit lien qu'un long discours.

  5. #5
    Membre éclairé Avatar de Raptor92
    Homme Profil pro
    Directeur des opérations & Innovation
    Inscrit en
    Juin 2009
    Messages
    953
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 66
    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 : 953
    Points : 766
    Points
    766
    Par défaut Conclusions er remerciements
    Citation Envoyé par vmolines Voir le message
    Bonjour,

    Focalisez vous sur les données de votre requête. Le résultat attendu (mail de notification) est une finalité qui ne sera atteinte que si les données de votre requête sont bonnes.

    Tout ça pour dire que quand vous présentez un problème de requête, il est préférable d'indiquer les tables et colonnes qui entrent en jeu, le résultat attendu, la requête utilisée et le résultat obtenu.

    Le code qui exploite le résultat est un autre problème qui sera traité que si cette partie est bonne.

    Et au final ce ne sera peut être pas un problème de Windev

    Bonjour Vmolines,

    Après réflexion et 2 cafés, voici comment j'ai résolu mon problème.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    SQLChangeConnexion(gnConn3)
    sReqêteAlerteStock est une chaîne="SELECT SUM(STOC_QUANTITE) FROM STOCKS WHERE STOC_EMPLACEMENT ='R-COR-PIK' "
    SI EnModeTest() ALORS Trace(sReqêteAlerteStock)
    SI SQLExec(sReqêteAlerteStock, "ReqAlerteStock") ALORS
    	SI SQLAvance("ReqAlerteStock")=0 ALORS
    		SI Val(SQLLitCol("ReqAlerteStock",1))<>0 ALORS
    			Alerte_Stocks_LOTUS()
    		FIN
    	FIN
    FIN
    SQLFerme("ReqAlerteStock")
    SQLChangeConnexion(gnConn3)
    Merci pour vos commentaires qui m'ont permis de réfléchir autrement
    Très bonne journée à Tous
    Raptor92
    Dominique
    Aucune aide par MP, utilisez le forum.

    Mon guide du débutant pour apprendre à programmer en Java - N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java


  6. #6
    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 ça parait très bien sauf que moi j'aurais écrit :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    sReqêteAlerteStock est une chaîne="SELECT SUM(STOC_QUANTITE) FROM STOCKS WHERE STOC_EMPLACEMENT ='R-COR-PIK' AND SUM(STOC_QUANTITE) <> 0"
    SI EnModeTest() ALORS Trace(sReqêteAlerteStock)
    SI SQLExec(sReqêteAlerteStock, "ReqAlerteStock") ALORS
    	SI SQLAvance("ReqAlerteStock")=0 ALORS
    		Alerte_Stocks_LOTUS()
    	FIN
    FIN
    Patrick Catella

    Je ne réponds pas aux messages privés si ceux ci suivent un sujet. Il est préférable pour tous de poursuivre la discussion dans le sujet d'origine.

    Je suis Concepteur développeur Windev (10 ans) et Windev mobile (4 ans) en recherche d'emploi. J'etudie toute proposition

  7. #7
    Membre éclairé Avatar de Raptor92
    Homme Profil pro
    Directeur des opérations & Innovation
    Inscrit en
    Juin 2009
    Messages
    953
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 66
    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 : 953
    Points : 766
    Points
    766
    Par défaut
    Bonjour Mogway

    Avant tout merci pour vos remarques très pertinentes.
    En effet, cela me parait plus simple

    Bonne après midi
    Raptor92
    Dominique
    Aucune aide par MP, utilisez le forum.

    Mon guide du débutant pour apprendre à programmer en Java - N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java


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

Discussions similaires

  1. question sur une requête délicate
    Par corro dans le forum Sybase
    Réponses: 2
    Dernier message: 17/08/2012, 16h09
  2. [JPQL] Question sur une requête avec héritage
    Par saveriu dans le forum JPA
    Réponses: 1
    Dernier message: 21/08/2010, 08h54
  3. [WD14] Question sur une requête
    Par Raptor92 dans le forum WinDev
    Réponses: 2
    Dernier message: 06/11/2009, 19h53
  4. [JPQL] Question sur une requête
    Par saveriu dans le forum JPA
    Réponses: 1
    Dernier message: 04/06/2009, 12h18
  5. Question pour une requête sur plusieurs tables/objets
    Par pontus21 dans le forum Hibernate
    Réponses: 54
    Dernier message: 01/06/2009, 18h37

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