tapas64
Messages postés33Date d'inscriptionvendredi 27 février 2004StatutMembreDernière intervention14 novembre 2004
-
29 juil. 2004 à 16:09
tapas64
Messages postés33Date d'inscriptionvendredi 27 février 2004StatutMembreDernière intervention14 novembre 2004
-
29 juil. 2004 à 17:08
Bonjour.
J'ai deux tables access, Medecin et Identification construites comme suit:
Medecin(CodeM, NomM, ServiceM...)
Identification(CodeM, MotDePasseI)
Voici ce que j'ai fait pour réaliser l'étape de connexion de l'appli que je programme:
'Recupérer le mot de passe pour établir la connexion Set rs db.OpenRecordset("SELECT * FROM [MEDECIN], [IDENTIFICATION] WHERE [MEDECIN].[NomM] '" + LeNomDuMedecin + "' AND [IDENTIFICATION].[MotDePasseI] = '" + LePasseSaisi + "';", , dbForwardOnly)
Do While Not rs.EOF
rs.MoveNext
Loop
Nb = rs.RecordCount
'Récupérer le nom du service correspondant à ce médecin
???????????????????????????????????
Service.Text = rs!ServiceM
codeMedecin = rs!CodeM
????????????????????????????????????
'Traiter les cas d'erreur
If Nb = 0 Then
MsgBox ("L'utilisateur n'est pas déclaré!")
Exit Sub
Else
Fenetre2.Show
Unload Me
End If
La requete select * permet de prendre en compte tous les champs. Seulement une fois l'utilisateur identifié, je voudrais récupérer le nom du service ServiceM et le codeMedecin CodeM, ce que j'ai essayé de faire avec les lignes entre les points d'interrogation. Mais rien à faire, je n'arrive pas à les récupérer.
Quelqu'un peut-il m'aider?
Merci d'avance
stabe
Messages postés144Date d'inscriptionlundi 23 décembre 2002StatutMembreDernière intervention17 juin 2006 29 juil. 2004 à 16:31
bonjour,
D'abord, il ne faut pas oublier la jointure entre tes 2 tables.
Ensuite, si tu parcours ton recordset (avec ta boucle While), tu te retrouves à la fin et donc il n'y a plus de valeur à lire.
Set rs db.OpenRecordset("SELECT [IDENTIFICATION].ServiceM, [IDENTIFICATION].CodeM FROM [MEDECIN], [IDENTIFICATION] WHERE [MEDECIN].[CodeM] [IDENTIFICATION].[CodeM] AND [MEDECIN].[NomM] = '" & LeNomDuMedecin & "' AND [IDENTIFICATION].[MotDePasseI] = '" & LePasseSaisi & "';", , dbForwardOnly)
if not rs.EOF then
Service.Text = rs!ServiceM
codeMedecin = rs!CodeM
else
MsgBox ("L'utilisateur n'est pas déclaré!")
end if
tapas64
Messages postés33Date d'inscriptionvendredi 27 février 2004StatutMembreDernière intervention14 novembre 2004 29 juil. 2004 à 16:54
Merci.
J'ai mis ce que tu m'as donné mais ca ne marche toujours pas. Service.text et codeMedecin sont vide et nul.
Est-ce que ca peut etre a cause de la jointure? Je ne sais pas comment utiliser ca.
tapas64