Pb de recordset

Résolu
Signaler
Messages postés
31
Date d'inscription
jeudi 2 décembre 2004
Statut
Membre
Dernière intervention
23 janvier 2006
-
Messages postés
31
Date d'inscription
jeudi 2 décembre 2004
Statut
Membre
Dernière intervention
23 janvier 2006
-
BONNEE A TOUS
Kikoo, j'espère que ça va !!! Moi j'ai un souci :

j'ai fait un rs.recordcount
je l'affiche dans un msgbox
il m'affiche -1 alor kil ya un enregistrement
je comprend pas pourquoi !!

Set rsEntréesConso1 = New ADODB.Recordset
rsEntréesConso1.Open "LIVRAISON", cn, adOpenDynamic, adLockOptimistic


Frame1.Enabled = True


Dim i As Integer
i = rsEntréesConso1.RecordCount
MsgBox (i)
i = i + 1

If i <= 0 Then
txtIdLivr1.Text = 1
End If

'on indente l'identifiant de la livraison
If i >= 1 Then
'Renvoie l'identifiant maximal
Dim rsMaxId As New ADODB.Recordset, reqMaxId As String

reqMaxId = "select max(ID_LIVRAISON) as IdMax from LIVRAISON"
rsMaxId.Open reqMaxId, cn, adOpenStatic, adLockOptimistic
txtIdLivr1.Text = rsMaxId!IdMax + 1

rsMaxId.Close
End If

Merci de votre aide !!!
@ + !!

9 réponses

Messages postés
31
Date d'inscription
jeudi 2 décembre 2004
Statut
Membre
Dernière intervention
23 janvier 2006
3
Kikoo, j'espère que ça va !!! :
Merci de votre aide !!!
@ + !!

Mais ca ne fonctionne pas ! lol
G essayé ce que It@li@ m'a dit, @ savoir :

Dim i As Integer
rsEntréesConso1.movelast
i= rsEntréesConso1.RecordCount
MsgBox (i)
rsEntréesConso1.movefirst
i = i + 1

et G tjs le mm pb ! il m'affiche -1 alor kil y a d enregistrement pour le reste G pô essayé car je savé pô trô cômen faire !

Par contre, G la solution :

Set rsEntréesConso1 = New ADODB.Recordset
rsEntréesConso1.Open "LIVRAISON", cn, adOpenKeyset, adLockOptimistic

C exprè pr les recordset on ma di !
Voila !
si ca peux aider qqn !...
TANT MIEUX !
moi ca ma débloqué mon bug !!

@ + !

MERCI !
3
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 109 internautes nous ont dit merci ce mois-ci

Messages postés
2169
Date d'inscription
vendredi 20 avril 2001
Statut
Membre
Dernière intervention
30 juin 2009
8
c'est normal essayes en rejoutant ces 2 lignes en rouge:

Dim i As Integer
rsEntréesConso1.movelast
i= rsEntréesConso1.RecordCount
MsgBox (i)
rsEntréesConso1.movefirst
i = i + 1

It@li@
Messages postés
402
Date d'inscription
jeudi 25 novembre 2004
Statut
Membre
Dernière intervention
7 juin 2009
5
Cependant, sur les recordset ramenant beaucoup d'enregistrements, le MoveLast peut prendre bcp de temps.
Mais bon, je n'ai jamais trouvé d'autre solution
Messages postés
285
Date d'inscription
dimanche 14 décembre 2003
Statut
Membre
Dernière intervention
13 mars 2012

Tu fais une requete oder by desc et tu affiches le first...


madbob
Messages postés
2169
Date d'inscription
vendredi 20 avril 2001
Statut
Membre
Dernière intervention
30 juin 2009
8
ou tu insert un COUNT dans ta requéte

It@li@
Messages postés
285
Date d'inscription
dimanche 14 décembre 2003
Statut
Membre
Dernière intervention
13 mars 2012

Bonjour à toi It@li@

madbob
Messages postés
2169
Date d'inscription
vendredi 20 avril 2001
Statut
Membre
Dernière intervention
30 juin 2009
8
Salut madbob

VirJni n'oublies pas de cocher reponses accéptées

It@li@
Messages postés
31
Date d'inscription
jeudi 2 décembre 2004
Statut
Membre
Dernière intervention
23 janvier 2006
3
ps :

G enle vé ca (en rouge)
Dim i As Integer
i = rsEntréesConso1.RecordCount
MsgBox (i)
i = i + 1


@ +
Messages postés
31
Date d'inscription
jeudi 2 décembre 2004
Statut
Membre
Dernière intervention
23 janvier 2006
3
oups !
je suis trompée qd je me suis relue !

adOpenKeyset

c fé exprès pr les RECORDCOUNT !
Trop nulle !
lol

Bon courage !