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 :

Conserver les données de certains champs : formulaire d'ajout [AC-2013]


Sujet :

IHM

  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2020
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2020
    Messages : 22
    Points : 19
    Points
    19
    Par défaut Conserver les données de certains champs : formulaire d'ajout
    Bonsoir,

    J'ai un problème surement simpliste pour vous mais qui ne l'ai pas du tout pour moi.

    J'ai un formulaire d'ajout de donnée dans lequel l'utilisateur rentre ces données et clique sur un super bouton "ajouter". Le formulaire se ferme et s'ouvre : cela ajoute une ligne à ma Table.
    Jusque là aucun soucis ! Lorsque que le formulaire se réouvre, il est réinitialisé. Tous les champs sont vides.

    Je souhaiterais conserver les valeurs de 3 champs après l'ajout de donnée à la Table. De tel façon qu'après avoir cliquer sur le bouton, le formulaire s'ouvre mais ces 3 champs conservent leurs valeurs/données.
    Cela éviterait à l'utilisateur de les retaper si finalement ils n'avaient pas changer. (Ce qui risque être le cas parfois)

    J'espère avoir été le plus clair possible. La solution ne doit pas être compliquée mais je me suis retournée la tête cette après-midi sans succès...

    Je vous remercie pour toute l'aide que vous m'apportez depuis 2 mois. Je progresse vite ! Peut être qu'un jour mon speudo sera dépassé !

    Undébutantsuraccess

  2. #2
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 648
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 648
    Points : 14 626
    Points
    14 626
    Par défaut
    bonsoir,
    J'ai un formulaire d'ajout de donnée dans lequel l'utilisateur rentre ces données et clique sur un super bouton "ajouter". Le formulaire se ferme et s'ouvre : cela ajoute une ligne à ma Table.
    Jusque là aucun soucis ! Lorsque que le formulaire se réouvre, il est réinitialisé. Tous les champs sont vides.
    un formulaire en mode "Ajout de données" ne montre jamais les enregistrements déjà saisis (sauf ceux de la saisie en cours).
    Pour avoir accès à toutes les données il faut l'ouvrir avec la propriété "Modif Autorisé" à Oui.
    Et si on veut en même temps Modifier et Ajouter, il faut, en plus, la propriété "Ajout autorisé" à Oui (cela dit, elle est déjà à Oui par défaut)
    Dans ce cas, si la barre des boutons de déplacement est visible, il faut appuyer sur la flèche avec l'astérisque pour se retrouver en mode "Entrée de données" avec les champs vides:

    Nom : _0.JPG
Affichages : 84
Taille : 11,8 Ko
    Sinon, il faut créer un menu avec des boutons de création, modification ... qui permet d'ouvrir le même formulaire avec les différents modes.

    Cela éviterait à l'utilisateur de les retaper si finalement ils n'avaient pas changer. (Ce qui risque être le cas parfois)
    surtout à ne pas faire au risque de trouver plusieurs fois les mêmes saisies, il vaut mieux vérifier dans les tables avant de tout re-saisir inutilement
    Quand on est derrière l'écran on n'a aucun clavier sous les mains ...
    ah non ? donc devant l'écran c'est la connectique ?

  3. #3
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 331
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 331
    Points : 23 786
    Points
    23 786
    Par défaut
    Bonjour.

    La méthode la plus simple est d'utiliser des variables globales définie dans un module.

    Un truc du genre :

    Module mdlMemEntree
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    global memValeur1 as String 'ici le bon type
    Dans ton formulaire, tu mets quelque chose comme mdlMemEntree.memValeur1=me.Valeur1 au moment de l'enregistrement.
    Et au moment du chargement tu mets me.Valeur1.DefaultValue=mdlMemEntree.memValeur1.
    Attention si Valeur1 est un texte, il faut, il me semble, mettre me.Valeur1.DefaultValue="""" & mdlMemEntree.memValeur1 & """".

    Attention les variables globales sont à utilisées avec BEAUCOUP de modération car elles peuvent être source de bugs vraiment vicieux. Leur force est qu'on peut les lire de partout dans l'application, leur faiblesse c'est qu'on peut AUSSI les modifier de partout.

    Une autre solution serait de stocker l'info dans une table et de l'associer au code de l'utilisateur. Le principe reste le même c'est juste le lieu de stockage qui change.

    Enfin à la place des variables globales tu peux aussi utiliser la collection TempVars. Ici un lien sur le sujet https://warin.developpez.com/access/...estemporaires/.

    Si tu veux vraiment être sécuritaire sans utiliser de table tu peux aller avec un module de classe que tu passerai à l'ouverture du formulaire ou avec des variables dans le formulaire appelant que tu mettrais à jour avec la captation de l'événement de fermeture du formulaire appelé mais c'est un peu plus pénible à programmer.

    A+
    Vous voulez une réponse rapide et efficace à vos questions téchniques ?
    Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
    Et aussi regardez dans la FAQ Access et les Tutoriaux Access. C'est plein de bonnes choses.

  4. #4
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2020
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2020
    Messages : 22
    Points : 19
    Points
    19
    Par défaut
    Je vous remercie pour vos retours,

    J'ai désormais des pistes pour résoudre mon problème !
    Je vais approfondir le sujet ce soir.

    undébutantsuraccess

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

Discussions similaires

  1. Réponses: 6
    Dernier message: 17/06/2014, 15h53
  2. Réponses: 4
    Dernier message: 02/12/2009, 11h27
  3. Réponses: 12
    Dernier message: 15/07/2009, 12h51
  4. [MySQL] Comment mettre à jour en conservant les données actuelles d'un champs
    Par MisterMacPhisto dans le forum PHP & Base de données
    Réponses: 14
    Dernier message: 17/04/2007, 15h49
  5. Réponses: 8
    Dernier message: 19/05/2005, 16h03

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