Récupérer l'index d'un champ
Bonjour,
J' utilise LibreOffice Base est Firebird en remplacement de HSQL. J' ai une séquence de code qui récupére l' index du champ actif pour sauvegarder la donnée dans le champ correspondant dans une table. sous HSQL, cela fonctionne. Par contre, sous firebird cela ne fonctionne pas. Sauriez-vous m' expliquer pourquoi je me heurte à ce problème.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
| Do While resuQuery.Next
.moveToInsertRow
For i = 1 to 1
Select Case .Columns.getByIndex(i-1).TypeName
Case "INTEGER"
.Columns.getByIndex(i-1).updateInt(resuQuery.getInt(i))
Case "VARCHAR"
.Columns.getByIndex(i-1).updateString(resuQuery.getString(i))
Case "NUMERIC"
.Columns.getByIndex(i-1).updateInt(resuQuery.getInt(i))
End Select
If i = 1 Then
.insertRow
Else
.UpdateRow
End If
Next i
avance.Value = x
avance.Text = "Ligne " & x & " recopiée"
x = x + 1
Loop |
En ligne 4, on récupère l' index du champ actif est on en extrait le type.
C' est l' index qui permait l' enregistrement de la donnée dans le bon champ est avec le bon type.
Cordialement