Je ne viens pas vous exposer ici un problème mais un constat.
En voulant parcourir l'ensemble des résultats d'une requête SQL établie via une connexion ODBC sur une base AS400 je ne retrouvais pas l'intégralité des résultats.
Je suivais l'exemple de l'aide du designer (car je suis un fervent utilisateur de l'aide Notes et de ce forum par ailleurs
- Code : Tout sélectionner
Uselsx "*LSXODBC"
Sub Initialize
Dim con As New ODBCConnection
Dim qry As New ODBCQuery
Dim result As New ODBCResultSet
Dim firstName As String
Dim lastName As String
Dim msg As String
Set qry.Connection = con
Set result.Query = qry
con.ConnectTo("ATDB")
qry.SQL = "SELECT * FROM STUDENTS ORDER BY LASTNAME"
result.Execute
msg = "Student names:" & Chr(10)
Do
result.NextRow
firstName = result.GetValue("FIRSTNAME", firstName)
lastName = result.GetValue("LASTNAME", lastName)
msg = msg & Chr(10) & firstName & " " & lastName
Loop Until result.IsEndOfData
Messagebox msg,, "Student Names"
result.Close(DB_CLOSE)
con.Disconnect
End Sub
En sortant le NextRow de la boucle do until j'ai bien l'intégralité des résultats.
Je l'ai fais sur plusieurs requètes dans d'autres bases et c'est idem, j'arrive bien à avoir tous les enregistrements pour peu que je sorte le NextRow avant la boucle.