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 :

Faire un contrôle sur un champs text [AC-2013]


Sujet :

IHM

  1. #1
    Membre à l'essai
    Femme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Février 2015
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Février 2015
    Messages : 18
    Points : 14
    Points
    14
    Par défaut Faire un contrôle sur un champs text
    Bonjour,

    J'ai créé une base de données access pour la gestion du lavage de couverture que ma société doit faire !
    Chaque couverture que nous allons laver dispose d'un code barre, et est affecté à une et une seul école.

    La base est quasi fini mais je but sur un truc !
    Pour info, je commence tous juste à me mettre à créer des bases Access !

    Alors j'ai 3 tables :
    1 -> Table T_Ecole (Nom_Ecole)
    2 -> Table T_Couverture (Code_Barre, Matiere, Nom_Ecole)
    3 -> Table T_SCAN (, Scan_Date, Scan_Heure, Code_Barre)

    Je dispose d'un formulaire qui me permet de scanner les codes Barre des couvertures que nous lavons. Nom du formulaire F_Lavage !

    Dans mon formulaire, lorsque je scan (avec une douchette) un code barre (dans un champs texte), il enregistre directement le code barre sans necessité de toucher le clavier ou souris, avec date et heure dans ma table T_SCAN.

    Jusque là, tout fonctionne très bien ...

    Maintenant, je souhaiterai qu'il y ai un contrôle du code barre lors du scan afin de savoir si mon code barre existe dans ma table T_Couverture.
    -> Si le code existe alors rien il enregistre normalement le scan de la couverture dans ma table T_SCAN
    -> S'il n'existe pas alors je souhaiterai qu'il m'enregistre ce nouveau code barre via un formulaire (ou autre) dans ma Table T_Couverture, et que je puisse renseigner Matiere et Nom_Ecole associé à ce nouveau code barre. Il faut également qu'il m'enregistre le scan que j'ai fait !

    Pour info, j'ai créer un formulaire F_Ajout_Couverture pour l'enregistrement éventuelle de couverture indépendamment du scannage !

    Si quelqu'un peu m'aider !

    Merci d'avance

  2. #2
    Expert éminent

    Homme Profil pro
    Inscrit en
    Mai 2012
    Messages
    3 840
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations forums :
    Inscription : Mai 2012
    Messages : 3 840
    Points : 7 974
    Points
    7 974
    Par défaut
    Bonsoir,

    A priori, tes tables ne sont pas reliées selon les clés correspondantes (Peux-tu poster une copie d'écran de la structure de ton application). Parce que normalement avec ce que tu présentes,
    1 -> Table T_Ecole (Nom_Ecole)
    2 -> Table T_Couverture (Code_Barre, Matiere, Nom_Ecole)
    3 -> Table T_SCAN (N°, Scan_Date, Scan_Heure, Code_Barre)
    1- T_Ecole devrait être reliée avec une relation 1 à n avec la table T_Couverture par les champs Nom_Ecole
    2- T_Couverture devrait être reliée avec une relation 1 à n à la table T_SCAN par les champs Code_Barre.
    Cela interdirait automatiquement l'ajout d'un enregistrement dans la table T_SCAN si il n'y a pas la valeur correspondante dans la table T_Couverture.

    Après il faut trouver l'évènement adéquat pour lancer l'ouverture du formulaire d'ajout.

    Cordialement,

  3. #3
    Membre à l'essai
    Femme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Février 2015
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Février 2015
    Messages : 18
    Points : 14
    Points
    14
    Par défaut
    Du coup, j'ai trouvé avec ça !

    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
    23
    24
    25
    26
    Private Sub Code_Barre_AfterUpdate()
     
        Dim strNom As String
        Dim rs As Recordset
        Dim qdReq As QueryDef
     
            ' Vérification si le champ n'est pas rempli
            If Me![Code_Barre] <> "" Then
                ' Récupération du numéro Code_Barre du scan
                strNom = Me![Code_Barre]
                ' Création de la requete
                Set qdReq = CurrentDb.CreateQueryDef("", "SELECT * FROM T_Couverture WHERE T_Couverture.Code_Barre LIKE '" & strNom & "';")
                Set rs = qdReq.OpenRecordset
     
                ' Code_Barre n'existe pas
                If rs.BOF And rs.EOF Then
                    Call MsgBox("Cette couverture n'existe pas dans la base." & vbLf & "Merci d'enregistrer la Couverture" & vbLf & vbLf & "**** Une fois la couverture enregistrée, Ne pas oublié de la scanner en lavage !!! ****", vbOKOnly + vbExclamation, "Enregistrement Non existant")
                    DoCmd.OpenForm "F_Ajout_Couverture"
                    ' Annule l'enregistrement
                    Me.Undo
                    'Quitte le formulaire
                    DoCmd.Close acForm, "F_Lavage"
                End If
     
            End If
    End Sub

  4. #4
    Expert éminent

    Homme Profil pro
    Inscrit en
    Mai 2012
    Messages
    3 840
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations forums :
    Inscription : Mai 2012
    Messages : 3 840
    Points : 7 974
    Points
    7 974
    Par défaut
    Oui, faire la vérification avec du code est aussi une solution vu que normalement les utilisateurs en devraient pas avoir accès aux tables pour entrer une valeur erronée.
    Pense à mettre le topic en RESOLU si c'est bon.

    Cordialement,

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

Discussions similaires

  1. [CS3] Faire une boucle for sur des champs texte
    Par Bubuk dans le forum ActionScript 3
    Réponses: 1
    Dernier message: 18/12/2013, 17h06
  2. Contrôle de champ numérique sur des champs texte
    Par CinePhil dans le forum Servlets/JSP
    Réponses: 1
    Dernier message: 07/11/2013, 10h44
  3. contrôle sur un champ dans un formulaire
    Par yoline dans le forum Access
    Réponses: 6
    Dernier message: 01/10/2005, 19h23
  4. Probleme d'UPDATE sur un champ text
    Par Nip dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 08/07/2005, 11h35
  5. Boucler sur des champs texte
    Par syl2095 dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 25/11/2004, 16h15

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