Page 1 sur 1

Traitement des résultats connexion ODBC base AS400.

MessagePublié: 26 Août 2010 à 15:05
par kochiz
Bonjour,

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.