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

IHM Discussion :

vérification saisie utlisateur


Sujet :

IHM

  1. #1
    Membre à l'essai
    Inscrit en
    Janvier 2007
    Messages
    39
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 39
    Points : 22
    Points
    22
    Par défaut vérification saisie utlisateur
    Bonjour à tous,

    J'ai un formulaire et un sous-formulaire, dans le sous-formulaire j'ai un champ quantite dont je voudrais vérifier la saisie: Si la quantite est supérieure au stock on annule la saisie, le focus revient sur quantite. Le stock est un champ d'une requete.
    J'ai fait un code qui ne marche pas. Il ya toujours:Erreur d'exécution 3464.

    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
     
    Private Sub quantite_BeforeUpdate(Cancel As Integer)
    Dim db As Database
    Dim rst As Recordset
    Dim reponse As String
    Set db = CurrentDb
    Set rst = db.OpenRecordset("SELECT * FROM RSoldeproduit WHERE RSoldeproduit.codeproduit=" & Me.numproduit)
    St = rst.Fields("Soldeproduit").Value
    qte = Me.quantite.Value
    If (qte > St) Then
    reponse = MsgBox("Le Stock est insuffisant pour la quantité demandée", vbOKOnly, "Avertissement")
    Cancel = True
    Me.quantite.SetFocus
    End If
    End Sub
    Quelqu'un peut-il m'aider ?

  2. #2
    Membre régulier
    Inscrit en
    Novembre 2005
    Messages
    155
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 155
    Points : 112
    Points
    112
    Par défaut
    Bonjour,

    Comme ça je vois pas trop, mais :

    - Quel est le message de l'erreur 3464 ?

    - Quand tu vas dans le débogueur il plante sur quelle ligne ?

    Merci

  3. #3
    Inactif
    Profil pro
    Inscrit en
    Août 2006
    Messages
    219
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Canada

    Informations forums :
    Inscription : Août 2006
    Messages : 219
    Points : 227
    Points
    227
    Par défaut Type de donnée incompatible
    Compare des pommes avec des pommes.

    Alex

  4. #4
    Membre à l'essai
    Inscrit en
    Janvier 2007
    Messages
    39
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 39
    Points : 22
    Points
    22
    Par défaut précision
    Il plante sur set rst = db.recordset("Select ...)

    Erreur d'exécution '3464'

    Type de données incompatible dans l'expression du critère

  5. #5
    Inactif
    Profil pro
    Inscrit en
    Août 2006
    Messages
    219
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Canada

    Informations forums :
    Inscription : Août 2006
    Messages : 219
    Points : 227
    Points
    227
    Par défaut Est ce que tu as écris recordset?
    Est ce que tu as écris .recordset ou .OpenRecordset?

    Alex

    N.B.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    SELECT * FROM RSoldeproduit WHERE RSoldeproduit.codeproduit=" & Me.numproduit.Text

  6. #6
    Inactif
    Profil pro
    Inscrit en
    Août 2006
    Messages
    219
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Canada

    Informations forums :
    Inscription : Août 2006
    Messages : 219
    Points : 227
    Points
    227
    Par défaut Spécification
    Ce que j,ai ajouté c'est le .Text dans ta requête.

    Alex

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

    Met .value au lieu de .text

    Starec

  8. #8
    Membre à l'essai
    Inscrit en
    Janvier 2007
    Messages
    39
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 39
    Points : 22
    Points
    22
    Par défaut
    quand je mets .Text l'erreur '2185' Impossible de faire référence à une propriété ou de la définir pour un controle si ce dernier n'est pas activé.
    Mais quand je mets .Value l'erreur '2464' apparait

    Il n' y a pas une façon de contourner le probleme ?

  9. #9
    Invité
    Invité(e)
    Par défaut
    Re

    .text ne fonctionne que si le contrôle est actif, as-tu essayé .value ?

    Starec

  10. #10
    seb92400
    Invité(e)
    Par défaut
    Hello,

    As-tu le même type de champ pour codeproduit et pour numproduit ?

    Exemple, ton champ codeproduit est de type numérique et ton champ numproduit est de type texte...

    Dans ce cas utilise une fonction de conversion CLng, Cstr, etc... afin de faire correspondre tes données.

  11. #11
    Membre à l'essai
    Inscrit en
    Janvier 2007
    Messages
    39
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 39
    Points : 22
    Points
    22
    Par défaut
    Les deux champs sont type texte.

  12. #12
    Invité
    Invité(e)
    Par défaut
    Re

    As-tu testé le .value ?

    Starec

  13. #13
    seb92400
    Invité(e)
    Par défaut
    Si tes champs sont de type texte, il faut dans ce cas penser aux guillemets :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT * FROM RSoldeproduit WHERE RSoldeproduit.codeproduit= " & chr(34) & Me.numproduit & chr(34)

  14. #14
    Membre à l'essai
    Inscrit en
    Janvier 2007
    Messages
    39
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 39
    Points : 22
    Points
    22
    Par défaut
    quand je mets & chr(34) &Me.numproduit & chr(34), c'est l'erreur '3075'
    Erreur de syntaxe dans la chaine dans l'expression 'RSoldeproduit.codeproduit="c001 avec c001 le numéro du produit.
    Mais quand je survole sur le stock st du code avec la souris, j'ai la valeur du prix x quantite. Je ne comprend pas il doit y avoir surement quelque chose qui cloche.

  15. #15
    seb92400
    Invité(e)
    Par défaut
    Tu as effectivement une erreur de syntaxe. En fait, tu dois respecter un ordre au niveau des "... Je me suis planté tout à l'heure... (argh... sans avoir l'éditeur sous les yeux, c'est une bonne école)...

    Donc, cette fois-ci, si je ne me trompe pas, ça doit être :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    db.OpenRecordset("SELECT * FROM RSoldeproduit WHERE RSoldeproduit.codeproduit = '" & Me.numproduit & "')
    Voilà... Normalement... Il s'agit d'un ' suivi d'un " au début et l'inverse à la fin.

  16. #16
    Membre à l'essai
    Inscrit en
    Janvier 2007
    Messages
    39
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 39
    Points : 22
    Points
    22
    Par défaut
    Maintenant c'est l'erreur de compilation Attendu separateur de liste ou )

  17. #17
    Membre régulier
    Inscrit en
    Novembre 2005
    Messages
    155
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 155
    Points : 112
    Points
    112
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    db.OpenRecordset("SELECT * FROM RSoldeproduit WHERE RSoldeproduit.codeproduit = '" & Me.numproduit.value & "'")
    Des fois il faut réfléchir un peu quand meme et ne pas faire que du copier coller

    Il maquait un guillement à la fin avant la liste.

  18. #18
    seb92400
    Invité(e)
    Par défaut
    Merci Cyraile... Effectivement, je n'ai pas vérifié tous les guillemets... D'un autre côté, ça me permet d'apprendre aussi !

  19. #19
    Membre régulier
    Inscrit en
    Novembre 2005
    Messages
    155
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 155
    Points : 112
    Points
    112
    Par défaut
    De rien

    N'oubli pas le résolu.

  20. #20
    seb92400
    Invité(e)
    Par défaut
    Mais... Sans vouloir être désagréable... Ce post n'est pas de moi ! Je ne peux pas mettre le tag résolu...
    Je te disais juste merci de m'avoir corrigé sur mon guillemet oublié... Bonne journée à Toi !

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. [MySQL] Vérification saisie mots clés Mysql
    Par fazpedro dans le forum PHP & Base de données
    Réponses: 13
    Dernier message: 25/07/2011, 09h27
  2. Vérification saisie formulaire
    Par granchef dans le forum Langage
    Réponses: 5
    Dernier message: 08/04/2010, 16h36
  3. C# et vérification saisie par Regex
    Par PatStan17 dans le forum ASP.NET
    Réponses: 3
    Dernier message: 05/05/2009, 09h56
  4. REQ : Algo pour vérification saisie du "Numero TVA"
    Par Eric.H dans le forum Langage
    Réponses: 4
    Dernier message: 28/01/2009, 10h23
  5. vérification saisie!
    Par b_steph_2 dans le forum Access
    Réponses: 6
    Dernier message: 03/02/2006, 18h36

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