Hola muy buenas a tod@s
Estoy programando en VB6 usando BBDD Access
Verán quería comentarles un problema que estoy teniendo y no consigo dar con la solución.
El caso es el siguiente:
1.Realizo una select a una tabla de una BBDD de Access
Código:
Dim strSelect As String = "SELECT NIF, Domingo, Lunes, Martes, Miercoles, Jueves, Viernes, Sabado, " & _
" Traslado, HInicio, HFinal, " & _
"ROUND (ABS(((cdbl(HFinal-HInicio+Traslado)-int(HFinal-HInicio+Traslado))*24)),2) AS HrsTrabajadas, " & _
"ABS(CInt(Lunes+Martes+Miercoles+Jueves+Viernes+Sabado+Domingo)) AS DiasTrabajados, " & _
" (HrsTrabajadas * DiasTrabajados) as HorasTotales, SemanaHorario, Desde, Hasta " & _
" FROM Trabajan " & _
"WHERE ((((Hasta)>=# " + FInicio + " # and Desde <=# " + FInicio + " #)Or ((Hasta) Is Null and (Desde)<=# " + FInicio + " #)) or (Desde) between # " + FInicio + " # and # " + FFin + " #)" & _
" ORDER BY NIF, Hasta, Desde"
Donde FInicio y FFin son dos fechas que introduce el usuario desde la aplicación, con el formato dd/MM/yyyy
2.hago la conexión (la cual funciona, comprobado). El recorset (rsConsulta) que uso es de tipo ADODB.Recordset()
Código:
cmComando = New ADODB.Command()
With cmComando
.ActiveConnection = conConexion
.CommandText = strSelect
.CommandType = ADODB.CommandTypeEnum.adCmdText
End With
With rsConsulta
.CursorType = ADODB.CursorTypeEnum.adOpenStatic
.LockType = ADODB.LockTypeEnum.adLockReadOnly
End With
rsConsulta.Source = cmComando
3. Intento recorrer el recordset
Código:
If rsConsulta.EOF And rsConsulta.BOF Then
'La respuesta es vacía
ReDim sValores(0, rsConsulta.Fields.Count - 1)
Else
rsConsulta.MoveLast()
rsConsulta.MoveFirst() <-- Es en este punto es donde me aparece el siguiente mensaje de error
......
4. Error que me aparece
Código:
No se controló COMException
El proveedor de datos u otro servicio devolvió un estado E_FAIL
5. Lo raro de todo esto es que, cuando el usuario introduce fechas hasta febrero de 2011
es decir
FInicio: 01/01/2010 (por ejemplo)
FFin: 30/02/2011
El programa funciona a la perfección y me saca el listado que está programado
Pero el problema viene cuando el usuario introduce fechas comprendidas entre Marzo/2011 en adelante.
He revisado las fechas de la BBDD y es correcto, al menos no he visto ningun dato raro en los campos fecha; también he realizado
la consulta desde access y nada, no sé muy bien por donde tirar para poder resolver el error.
Muchas gracoas a todos.
Saludos!!