RÉCUPÉRER LA LISTE DES UTILISATEURS LOGGÉS SUR UNE BASE ACCESS
jmlucienvb
Messages postés129Date d'inscriptionmercredi 24 septembre 2003StatutMembreDernière intervention12 février 2009
-
29 avril 2004 à 12:48
simo_boukoutaya
Messages postés12Date d'inscriptionlundi 26 juillet 2004StatutMembreDernière intervention25 août 2004
-
17 août 2004 à 12:11
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
simo_boukoutaya
Messages postés12Date d'inscriptionlundi 26 juillet 2004StatutMembreDernière intervention25 août 2004 17 août 2004 à 12:11
bonjour g un probleme de recuperation de données en fait je fais une recherche dans la base grace a une clé composée de trois champs operation, typeproduit et le codeproduit ce troisième champs me crée des probleme car il est de type texte :
voici la requete
Rq " SELECT * FROM produit , typeproduit_operation , operation WHERE CODEPROD " & var & " and produit.codeoper = " & Label3 & " and produit.codtyppr = typeproduit_operation.codtyppr and produit.codtyppr = " & Label4 & " and produit.codeoper = operation.codeoper and typeproduit_operation.codeoper = operation.codeoper "
ou var est une variable qui contient le codeproduit
quand je change le type de ce champs en numerique tout marche bien mais rien ne marche plus quand je reviens au type caractere
le message que le vb m'affiche c'est qu'il ya trop peu de parametre, 1 attendu
merci d'avance
c urgent
juvamine
Messages postés468Date d'inscriptionvendredi 21 février 2003StatutMembreDernière intervention30 août 20072 8 mai 2004 à 10:42
eueuh bah moi jai pas reussi a la faire marcher je l'ai modifier un chouilla...
Public Function GetDBCurrentUsers(pDataBasePath As String, pUsersList As Control, Optional ByVal pClearListFirst As Boolean = False)
Dim rep As Long, LDBFile As String
Dim FileID As Long, Buffer As String * 300
Dim pos1 As Long, pos2 As Long
'On Error GoTo GetDBCurrentUsersError
If pClearListFirst Then pUsersList.Clear
'Chemin du fichier de verrous de la base
Mid(pDataBasePath, Len(pDataBasePath) - 2, 3) = "ldb"
'LDBFile = pDataBasePath & "" & App.EXEName & ".LDB"
LDBFile = pDataBasePath
'Envoi de l'erreur dans le fichier d'erreur de l'application
FileID = FreeFile
Open LDBFile For Binary Access Read As FileID
'Lecture complète du fichier dans la structure
Get FileID, , Buffer
pos1 = 1
Do
pos2 = InStr(pos1 + 1, Buffer, Chr$(0))
If pos2 > 0 Then If InStr(Mid$(Buffer, pos1, pos2 - pos1), " ") = 0 And pos2 - pos1 > 1 Then pUsersList.AddItem Mid$(Buffer, pos1, pos2 - pos1)
pos1 = pos2 + 1
Loop While pos1 > 0 And pos2 > 0
Close FreeFile
GetDBCurrentUsersError:
Exit Function
End Function
Private Sub Command1_Click()
toto = GetDBCurrentUsers("d:\visual_basic\mydb.mdb", List1, True)
End Sub
voila, avec le petit exemple ds le command1_click
pitit probleme aussi..le ldb se met ds le meme repertoire ke le mdb...ya pa a aller chercher le app.path!!
donc en tout cas merci pour cette source qui me sera très utile pour une appli qui se connecte a une base unique depuis une vingtaine de postes !!
(un 6/10 quand meme)
@+
juva
jmlucienvb
Messages postés129Date d'inscriptionmercredi 24 septembre 2003StatutMembreDernière intervention12 février 2009 29 avril 2004 à 12:48
Pour être franc, pour une annonce débutant, cette source mériterait un petit exemple...
17 août 2004 à 12:11
voici la requete
Rq " SELECT * FROM produit , typeproduit_operation , operation WHERE CODEPROD " & var & " and produit.codeoper = " & Label3 & " and produit.codtyppr = typeproduit_operation.codtyppr and produit.codtyppr = " & Label4 & " and produit.codeoper = operation.codeoper and typeproduit_operation.codeoper = operation.codeoper "
ou var est une variable qui contient le codeproduit
quand je change le type de ce champs en numerique tout marche bien mais rien ne marche plus quand je reviens au type caractere
le message que le vb m'affiche c'est qu'il ya trop peu de parametre, 1 attendu
merci d'avance
c urgent
8 mai 2004 à 10:42
Public Function GetDBCurrentUsers(pDataBasePath As String, pUsersList As Control, Optional ByVal pClearListFirst As Boolean = False)
Dim rep As Long, LDBFile As String
Dim FileID As Long, Buffer As String * 300
Dim pos1 As Long, pos2 As Long
'On Error GoTo GetDBCurrentUsersError
If pClearListFirst Then pUsersList.Clear
'Chemin du fichier de verrous de la base
Mid(pDataBasePath, Len(pDataBasePath) - 2, 3) = "ldb"
'LDBFile = pDataBasePath & "" & App.EXEName & ".LDB"
LDBFile = pDataBasePath
'Envoi de l'erreur dans le fichier d'erreur de l'application
FileID = FreeFile
Open LDBFile For Binary Access Read As FileID
'Lecture complète du fichier dans la structure
Get FileID, , Buffer
pos1 = 1
Do
pos2 = InStr(pos1 + 1, Buffer, Chr$(0))
If pos2 > 0 Then If InStr(Mid$(Buffer, pos1, pos2 - pos1), " ") = 0 And pos2 - pos1 > 1 Then pUsersList.AddItem Mid$(Buffer, pos1, pos2 - pos1)
pos1 = pos2 + 1
Loop While pos1 > 0 And pos2 > 0
Close FreeFile
GetDBCurrentUsersError:
Exit Function
End Function
Private Sub Command1_Click()
toto = GetDBCurrentUsers("d:\visual_basic\mydb.mdb", List1, True)
End Sub
voila, avec le petit exemple ds le command1_click
pitit probleme aussi..le ldb se met ds le meme repertoire ke le mdb...ya pa a aller chercher le app.path!!
donc en tout cas merci pour cette source qui me sera très utile pour une appli qui se connecte a une base unique depuis une vingtaine de postes !!
(un 6/10 quand meme)
@+
juva
29 avril 2004 à 12:48