Buenas a todos.
Hace tiempo que no programo en vb6. Pero ahora me surge la necesidad de modificar un código que no era originalmente mío.
El problema lo tengo en un bucle, en el que abro un recordset para ir haciendo cambios en él. En medio del bucle, tengo la necesidad de abrir otro recordset (se llama de otra manera), consulto y lo cierro.
El error da, al final del bucle, cuando intenta cerrar el primer recordset. ¿Alguna ayuda?
Os pongo el código resumido, ya que es muuuy largo:
Sub Cargar
(Se abre la conexión)
Set olrsAux = New ADODB.Recordset
For j = 0 To ctflgFacturas.Rows - 1
olrsAux.Open "SELECT * FROM F_FACTU WHERE FfactuIDF=" & vllngIDF, fgcnnBase, adOpenKeyset, adLockOptimistic, adCmdText
If Not olrsAux.EOF Then
olrsAux!FfactuCFE = Date
olrsAux!FfactuCTC = 24
.
.
.
num= FDameNumstr(campo) 'esta es la llamada a la funcion donde abro el 2º recordset
olrsAux.Close 'aquí da el error
next
olrsAux.Close
Set olrsAux = Nothing
(se cierra la conexión)
End Sub
Function FDameNumstr(ref as string) as string
Dim vlstraux As String
Dim rs As ADODB.Recordset
Set rs = New ADODB.Recordset
vlstrsaux = "SELECT XtbcomBIC FROM X_BANCO WHERE XtbcomIDE = '" & Mid$(Ref, 5, 4) & "'"
rs.Open vlstraux, fgcnnBase, adOpenForwardOnly, adLockReadOnly, adCmdText
If rs.EOF Or IsNull(rs!XtbcomBIC) Then
FDameNumstr= "NOTPROVIDED"
Else
FDameNumstr= rs!XtbcomBIC
End If
rs.Close
Set rs = Nothing
end function
Muchas gracias.
Un saludo.