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 :

Connexion, Sélecteur et Rafraîchir table


Sujet :

WinDev

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    112
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 112
    Points : 45
    Points
    45
    Par défaut Connexion, Sélecteur et Rafraîchir table
    Bonjour,
    Je me permets de créer ce topic car j'ai besoin de vos lumières sur 3 problèmes.

    Tout d'abord, j'ai créé une fenêtre de connexion et j'ai entré le code suivant pour le bouton de validation.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    HOuvre(Utilisateurs)
       HLitRecherchePremier(Utilisateurs,Utilisateurs.Login_Utilisateur,Combo_Login)
     
    	SI SAIS_MDP = Utilisateurs.MDP_Utilisateur ALORS
    		Info("Bienvenue " + Combo_Login..ValeurAffichée)
    		Ferme(Fen_Login)
    	SINON
    		Info("Erreur de mot de passe")
    	FIN
    Je souhaite modifier ce code de manière à bloquer mon application après 3 tentatives ratées de connexion à l'application.
    De plus, je souhaite aussi configurer cette fenêtre de manière à lancer une autre fenêtre pour qu'un utilisateur puisse changer de mot de passe s'il se connecte pour la première fois à l'application.

    Mon deuxième problème concerne un sélecteur (à boutons radio) que j'ai créé dans une autre fenêtre.
    Le code est le suivant :
    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
    SELON SEL_Affectation..Valeur
    	CAS 1
    		Instruments.Affectation = 1
    		ID_Boîte..Etat = Grisé
     
    		Instruments.ID_Boîte = ""
    		Instruments.Emplacement_Instrument = ""
     
    	CAS 2
    		Instruments.Affectation = 2
    		ID_Boîte..Etat = Grisé
    		Instruments.ID_Boîte = ""
    		Instruments.Emplacement_Instrument = ""
     
    	CAS 3
    		Instruments.Affectation = 3
    		ID_Boîte..Etat = Actif
    		Instruments.ID_Boîte = ID_Boîte..ValeurAffichée
    FIN
    Est-il possible de mettre une valeur par défaut pour ce sélecteur, en l'occurrence 1 ?

    Mon dernier problème concerne le rafraîchissement d'une table pour un filtrage.
    J'ai mis le code suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    HFiltre(Contenu_boite,Contenu_boite.ID_Boite,SAI_Num_Boite,SAI_Num_Boite)
    TableAffiche(Table_Contenus_boite,taDébut)
    Le filtrage fonctionne mais uniquement lorsque le curseur de la souris se trouve sur le champ SAI_Num_Boite.
    Je souhaite que la table se rafraîchisse automatiquement sans avoir besoin de cliquer sur ce champ.

    Merci d'avance pour votre aide.

  2. #2
    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
    Pour le premier problème c'est pas bien sorcier tu peux créer une variable locale de type entier que tu incrémentes à chaque fois que tu rentres dans le "SINON" et tu mets un "SI mavariable = 3 ALORS" et tu déclenches une fonction.

    Pour changer le mot de passe à la première utilisation. L'utilisateur a déjà un mot de passe pour se connecter ?
    Tu peux mettre une colonne "première_connexion" en booléen à vrai par défaut dans ta table et tu fais un test pour voir si c'est oui ou non sa première connexion. Si c'est sa première connexion ne pas oublier de passer "première_connexion" à faux pour la suite.

    Pour ton 2 ème "problème" je suis un peu perplexe puisque je programme en ce moment même des sélecteurs et que dans l'aide en ligne disponible ICI tu peux lire : "Par défaut, un sélecteur est toujours positionné sur une position (1 par défaut)."

    Pour finir pour le rafraichissement de ta table. Tu veux la rafraichir tout le temps ? Lors d'un évènement sur ta table ? Sur un autre champ ?
    Si ça se rafraichit quand la souris est sur ton champ SAI_Num_Boite c'est peut-être que ton code se situe justement au niveau de ce champ ?
    Mieux vaut un petit lien qu'un long discours.

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    112
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 112
    Points : 45
    Points
    45
    Par défaut
    Citation Envoyé par sphynxounet Voir le message
    Pour le premier problème c'est pas bien sorcier tu peux créer une variable locale de type entier que tu incrémentes à chaque fois que tu rentres dans le "SINON" et tu mets un "SI mavariable = 3 ALORS" et tu déclenches une fonction.
    C'est ce qui me semble plus judicieux car je faisais l'opération inverse (initialisation d'une variable à 3 et décrémentation jusqu'à 0 et cela ne marchait pas).

    Citation Envoyé par sphynxounet Voir le message
    Pour changer le mot de passe à la première utilisation. L'utilisateur a déjà un mot de passe pour se connecter ?
    Tu peux mettre une colonne "première_connexion" en booléen à vrai par défaut dans ta table et tu fais un test pour voir si c'est oui ou non sa première connexion. Si c'est sa première connexion ne pas oublier de passer "première_connexion" à faux pour la suite.
    L'utilisateur a effectivement un mot de passe pour se connecter.
    Ton idée est bonne. Je vais voir ça de plus près.

    Citation Envoyé par sphynxounet Voir le message
    Pour ton 2 ème "problème" je suis un peu perplexe puisque je programme en ce moment même des sélecteurs et que dans l'aide en ligne disponible ICI tu peux lire : "Par défaut, un sélecteur est toujours positionné sur une position (1 par défaut)."
    J'ai finalement résolu le problème en mettant ce code car la valeur par défaut du sélecteur concerne la fenêtre en mode création :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SI (ModeOuverture="Création") ALORS
         Instruments.Affectation = 1
         HModifie(Instruments)
    FIN
    Citation Envoyé par sphynxounet Voir le message
    Pour finir pour le rafraichissement de ta table. Tu veux la rafraichir tout le temps ? Lors d'un évènement sur ta table ? Sur un autre champ ?
    Si ça se rafraichit quand la souris est sur ton champ SAI_Num_Boite c'est peut-être que ton code se situe justement au niveau de ce champ ?
    Le code se situe effectivement au niveau du champ SAI_Num_Boite.
    Lorsque je mets les 2 lignes dans le code de la table, cela ne fonctionne pas car la table est vide.
    Merci pour ton aide.

  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
    Pour le rafraichissement de la table essaye de mettre ton code dans la partie "Sortie de SAI_Num_Boite".
    Mieux vaut un petit lien qu'un long discours.

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    112
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 112
    Points : 45
    Points
    45
    Par défaut
    Citation Envoyé par sphynxounet Voir le message
    Pour le rafraichissement de la table essaye de mettre ton code dans la partie "Sortie de SAI_Num_Boite".
    Merci du tuyau. Cela fonctionne.

  6. #6
    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
    Et si ton problème est résolu faut clicker en bas du sujet sur "Sujet Résolu" avant de te prendre une fessée par un modérateur (moi ça fait plusieurs semaines et j'ai encore du mal à m'asseoir ).
    Mieux vaut un petit lien qu'un long discours.

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    112
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 112
    Points : 45
    Points
    45
    Par défaut
    Citation Envoyé par sphynxounet Voir le message
    Et si ton problème est résolu faut clicker en bas du sujet sur "Sujet Résolu" avant de te prendre une fessée par un modérateur (moi ça fait plusieurs semaines et j'ai encore du mal à m'asseoir ).
    Pas encore réglé à 100% avec les connexions...
    Je vais essayer de résoudre le problème.

  8. #8
    Membre expert

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

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

    Informations forums :
    Inscription : Juin 2004
    Messages : 2 328
    Points : 3 841
    Points
    3 841
    Par défaut
    Salut à toi,

    Une petite remarque concernant le blocage de l'appli.

    La solution de la variable locale marchera tant que l'appli est lancée. Si elle est fermée, cette variable est remise à 0.

    Pour garder en mémoire, il te faudra une rubrique dans le fichier utilisateur représentant le nombre de tentatives, incrémentée de 1 à chaque mauvaise manip et remise à 0 en cas de mot de passe correct.

  9. #9
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    112
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 112
    Points : 45
    Points
    45
    Par défaut
    Mille excuses de ne pas avoir répondu plus tôt au topic mais j'étais très occupé sur le projet.
    Merci sphynxounet et Lo2 pour vos réponses.

    Pour les connexions, j'ai finalement activé le groupware utilisateur (Menu Atelier --> Paramétrer le groupware utilisateur) et cela répond tout à fait à ma demande.

    Maintenant, j'ai 3 questions à propos du groupware utilisateur.
    1) Un superviseur souhaite accéder à la table des profils et des utilisateurs connectés en cliquant sur un bouton de l'application. Que dois-je mettre dans mon code pour le faire?

    2) Comment peut-on faire pour changer d'utilisateur ? Par exemple, si un superviseur se déconnecte, il doit donc y avoir de nouveau la fenêtre de connexion. Si cette fois-ci un invité (qui a des pouvoirs limités) se connecte, il ne doit donc pas avoir accès à toute l'application contrairement au superviseur.
    J'espère que j'ai été clair sur ce point.

    3) Enfin, comment un utilisateur connecté peut faire pour changer éventuellement son mot de passe qu'il soit superviseur ou invité ?

    Merci d'avance pour votre aide.

Discussions similaires

  1. [WD12E] sélecteur dans une table mémoire
    Par claude dans le forum WinDev
    Réponses: 1
    Dernier message: 12/06/2013, 15h27
  2. [AC-2007] Connexion données Excel à une Table Access
    Par tiyo76 dans le forum Modélisation
    Réponses: 4
    Dernier message: 11/06/2013, 09h14
  3. Réponses: 1
    Dernier message: 16/02/2012, 19h40
  4. [CR 10] Echec connexion bdd quand plusieurs tables dans "champs de bdd"
    Par Tahft dans le forum SAP Crystal Reports
    Réponses: 1
    Dernier message: 31/01/2012, 09h30
  5. [Débutant] MySql - Connexion/Ouverture DB et table
    Par T4unt dans le forum VB.NET
    Réponses: 2
    Dernier message: 14/10/2011, 12h05

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