abonito
Messages postés7Date d'inscriptionmardi 11 décembre 2007StatutMembreDernière intervention 1 août 2008
-
11 juil. 2008 à 01:37
Renfield
Messages postés17287Date d'inscriptionmercredi 2 janvier 2002StatutModérateurDernière intervention27 septembre 2021
-
11 juil. 2008 à 06:50
Slt, je suis actuellement entrain de developper une pte application de gestion des clients en VB6.0. J'ai crèe ma base en Access et acceder à ma base depuis vb 6.0 par un dsn.
Mon probleme est le suivant: voici le code du bouton de commande SUIVANT que j'ai placé sur ma feuille et qui devrait me permettre de parcourir tous les enregistrements de ma table client qui possède ici 3 enregitrements et 3 champs ( code, nom, prenoms)
Private Sub cmdsuiv_Click() req = " select * from client"
rs.Open req, con, adOpenDynamic, adLockOptimistic
rs.MoveNext
'ouverture du jeu d'enregistrement
Text1.Text = rs.Fields(0)
Text2.Text = rs.Fields(1)
Text3.Text = rs.Fields(2)
rs.Close
End Sub Mais à l'éxecution,le bouton suivant m'affiche uniquemen les 2 premiers enregistrements Que faire pour qu' à l'éxécution les 3 enregistrements de ma table client s'affiche correctement et sans erreur?
je vous rappelle mes variables déclarées dans un module:
Public con As New ADODB.Connection Public rs As New ADODB.Recordset Public req As String
Renfield
Messages postés17287Date d'inscriptionmercredi 2 janvier 2002StatutModérateurDernière intervention27 septembre 202174 11 juil. 2008 à 06:50
ton bouton suivant demande la liste des clients. toujours la même.
puis, il passe au deuxieme de la liste (MoveNext) et en affiche les infos.
si tu recliques sur ce bouton suivant, que fera-t'il ?
il demanderas une nouvelle fois la liste, et afficheras encore une fois les infos du deuxieme client.
dans la première initisation de Text1 et Text2, tu auras surement mis le même code, sans ce MoveNext, ce qui fait que tu affiches le premier Client.
stockes le RecordSet au niveau des varaibles de la Form (déclarée en Private, dans la partie déclaration du code de celle-ci).
Au chargement, affiche les infos du premier client.
comme ceci :
Private moRs as Recordset
Private Sub Form_Load()
Dim sSQL as String
sSQL = " select * from client"
set moRs = conn.OpenRecordset(sSQL, adOpenDynamic, adLockOptimistic)
'ouverture du jeu d'enregistrement
Text1.Text = moRs.Fields(0)
Text2.Text = moRs.Fields(1)
Text3.Text = moRs.Fields(2)
End Sub
Private Sub Form_Unload_Click()
moRs.Close
End Sub
Private Sub cmdsuiv_Click()
if not moRs.EOF then
mors.MoveNext
End If
'ouverture du jeu d'enregistrement
Text1.Text = mors.Fields(0)
Text2.Text = mors.Fields(1)
Text3.Text = mors.Fields(2)
End Sub