Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access
Access Forum d'entraide sur Microsoft Access. Avant de poster -> La F.A.Q Access
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 28/03/2008, 13h10   #1
Invité régulier
 
Inscription : mars 2005
Messages : 19
Détails du profil
Informations personnelles :
Âge : 56

Informations forums :
Inscription : mars 2005
Messages : 19
Points : 9
Points : 9
Par défaut Requête paramétrée pour un mot de passe

Bonjour,

J'aimerais pouvoir demander un mot de passe comme paramêtre d'une requête mais quand l'usager le tape, tout le monde peut le voir. J'aimerais que des ***** apparaissent à la place dans la boîte de dialogue. Je travaille avec Access 2003.

Merci de votre aide.
Jacques Bellavance est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/03/2008, 13h34   #2
Modérateur
 
Avatar de mout1234
 
Inscription : novembre 2006
Messages : 2 200
Détails du profil
Informations personnelles :
Âge : 43
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : novembre 2006
Messages : 2 200
Points : 2 699
Points : 2 699
Bonjour,

Je ne crois qu'il y ai moyen de faire cela directement dans une requête.
Tu peux utiliser un formulaire dans lequel tu places une zone de texte ayant comme masque de saisie "mot de passe".

La suite dépend de ce que tu veux faire avec ta requête...
__________________
............................................................................................

Dans l'intérêt de tous, ne posez pas de questions techniques par messages privés.


Les FAQs les tutos Les Sources Access Profitez de ces mines d'or...

Postez dans le bon sous forum et mentionnez la version
mout1234 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/03/2008, 14h09   #3
Invité régulier
 
Inscription : mars 2005
Messages : 19
Détails du profil
Informations personnelles :
Âge : 56

Informations forums :
Inscription : mars 2005
Messages : 19
Points : 9
Points : 9
J'aurais aimé le faire directement dans la requête. Est-ce possible de d'ouvrir une mini-formulaire au lieu de la boîte de dialogue offerte par le critère paramétré [Question]?
Jacques Bellavance est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/03/2008, 18h01   #4
Modérateur
 
Avatar de mout1234
 
Inscription : novembre 2006
Messages : 2 200
Détails du profil
Informations personnelles :
Âge : 43
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : novembre 2006
Messages : 2 200
Points : 2 699
Points : 2 699
Citation:
Envoyé par Jacques Bellavance Voir le message
J'aurais aimé le faire directement dans la requête. Est-ce possible de d'ouvrir une mini-formulaire au lieu de la boîte de dialogue offerte par le critère paramétré [Question]?
Pour autant que je sache non?

Quel est ton but? S'agit-il d'une requête SELECT? Pourquoi ne pas passer par le formulaire?
__________________
............................................................................................

Dans l'intérêt de tous, ne posez pas de questions techniques par messages privés.


Les FAQs les tutos Les Sources Access Profitez de ces mines d'or...

Postez dans le bon sous forum et mentionnez la version
mout1234 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/03/2008, 19h38   #5
Invité régulier
 
Inscription : mars 2005
Messages : 19
Détails du profil
Informations personnelles :
Âge : 56

Informations forums :
Inscription : mars 2005
Messages : 19
Points : 9
Points : 9
Si j'utilise un formulaire "Identification" de type :
Usager [Pierrot ]
Mot de passe [***** ]
Module [460-122 ]

Comment ouvrir l'état "Consultation des modules" filtré sur l'usager et le numéro de module? avec une action "Sur fermeture" du formulaire "Identification"?
Jacques Bellavance est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/03/2008, 23h56   #6
Modérateur
 
Avatar de mout1234
 
Inscription : novembre 2006
Messages : 2 200
Détails du profil
Informations personnelles :
Âge : 43
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : novembre 2006
Messages : 2 200
Points : 2 699
Points : 2 699
Citation:
Envoyé par Jacques Bellavance Voir le message
Si j'utilise un formulaire "Identification" de type :
Usager [Pierrot ]
Mot de passe [***** ]
Module [460-122 ]

Comment ouvrir l'état "Consultation des modules" filtré sur l'usager et le numéro de module? avec une action "Sur fermeture" du formulaire "Identification"?
Tu dois pouvoir résoudre ton problème en mettant une condition Where à l'ouverture de ton état, non?

quelque chose du genre
Code :
1
2
3
4
 
Dim sWhere As String
sWhere = "Usager'=" & Me!Usager & "' AND [Mot de Passe]='" & Me!Pwd & "'...."
DoCmd.OpenReport "monetat", acViewPreview, , sWhere

Mais il ne me parait pas très logique qu'un mot de passe serve de critère de sélection....
__________________
............................................................................................

Dans l'intérêt de tous, ne posez pas de questions techniques par messages privés.


Les FAQs les tutos Les Sources Access Profitez de ces mines d'or...

Postez dans le bon sous forum et mentionnez la version
mout1234 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/03/2008, 12h24   #7
Invité régulier
 
Inscription : mars 2005
Messages : 19
Détails du profil
Informations personnelles :
Âge : 56

Informations forums :
Inscription : mars 2005
Messages : 19
Points : 9
Points : 9
Peut-être que je ne fais pas les choses correctement.
Ma base de données contient entre autres des résultats d'examen de mes élèves. Présentement, ils entrent leurs code permanent (Connu de tous) et le numéro du module (cours) qu'ils suivent. Ces informations sont demandées par une requête paramétrée sur laquelle est basée l'état qui leur montre leur résultat et toutes les autres informations concernant le module. Les élèves se sont plaints (avec raison) que leurs résultats sont visibles de tous.

J'ai ajouté un champ MotDePasse à la table contenant les informations des élèves et à la requête paramétrée, demandant le mot de passe. Mais quand ils tapent leur mot de passe, ce dernier peut être vu par un autre élève à proximité.
Jacques Bellavance est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/03/2008, 22h58   #8
Invité régulier
 
Inscription : mars 2005
Messages : 19
Détails du profil
Informations personnelles :
Âge : 56

Informations forums :
Inscription : mars 2005
Messages : 19
Points : 9
Points : 9
Par défaut Trouvé

J'ai enfin compris qu'il était possible de créer des formulaires qui ne sont pas attachés à une table ou une requête.

Merci beaucoup MOUT1234. Le code que tu m'as fourni m'a mis sur la bonne piste.

Voici la solution finale :

Code :
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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
 
Private Sub Commande4_Click()
'-------------------------------------------------------------------------------
'Ouvrir l'état SuiviGlobal avec comme filtre le code permanent de l'élève.
'Accepter le mot de passe "Prof" pour que les professeurs n'aient pas à
'mémoriser celui de tous les élèves.
'-------------------------------------------------------------------------------
 'Me.NoÉlève As String Zone de texte
 'Me.MotPasse As String Zone de texte
 'Me.Module As String Zone de texte
 
 'Initialisation des variables
  Dim sFetchedPwd As String 'Mot de passe dans la requête "Passwords"
  Dim sCritère As String    'Préparation du critère pour le mot de passe
  Dim sModule As String     'Préparation du critère pour le numéro de module
  Dim sWhere As String      'Préparation du critère pour l'ouverture de l'état
 
 'Critère voulu : [No]='BELJ 075565 02'
  sCritère = "[No]='" & Me.NoÉlève & "'"
 'Allons chercher le mot de passe
  sFetchedPwd = Nz(DLookup("[Pwd]", "Passwords", sCritère), 0)
 'Si le No de l'élève pas trouvé... Nz() retourne le String "0" en cas d'échec
  If sFetchedPwd = "0" Then
    MsgBox "Votre code permanent n'a pas été trouvé"
    Me.NoÉlève.SetFocus
  Else
    sModule = Nz(DLookup("[TitreMod]", "Modules", sModule), 0)
    If sModule = "0" Then
       MsgBox "Le numéro de module n'est pas valide"
       Me.NoModule.SetFocus
    End If
    If sFetchedPwd <> Me.MotPasse And Me.MotPasse <> "Prof" Then
      'Le mot de passe n'était pas valide
       MsgBox "Le mot de passe n'est pas valide"
       Me.MotPasse.SetFocus
    Else
      'Ouvrir l'état "SuiviModule" avec [Élève]='BELJ 075565 02' AND [Mod]='460-554'
       sWhere = "[Élève]='" & Me.NoÉlève & "' AND [Mod]='" & Me.NoModule & "'"
       DoCmd.OpenReport "SuiviModule", acViewPreview, , sWhere
    End If
  End If
End Sub
Merci encore.
Jacques Bellavance est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 23h02.


 
 
 
 
Partenaires

Hébergement Web