Retroceder   Foros del Web > Temas generales de computación > Programación > Visual Basic

Respuesta
 
Herramientas Desplegado
Antiguo 18-oct-2007, 11:23   #1 (permalink)
Pulgaza ha deshabilitado el karma
 
Fecha de Ingreso: octubre-2007
Mensajes: 10
Exclamación Estado E_Fail

Que signifia este error

Error '-2147467259 (80004005)' en tiempo de ejecucion:
El proveedor de datos u otros servicios devolvio un estado E_FAIL

aqui les dejo como hago la conexion, no creo que sea eso, por que se conecta sin ningun problema.

dsnfox="DSN=Visual FoxPro Database;UID=;SourceDB=C:\Datos\control.dbc;Source Type=DBC;Exclusive=No;BackgroundFetch=Sí;Collate=M achine;Null=No;Deleted=No;"
Set db = New ADODB.Connection
db.CursorLocation = adUseClient
db.Open dsnfox

aqui esta el codigo, pero si hay un error en la bd, me sale el mensaje "La base examen.dbf devuelve EOF"

Set myset = New ADODB.Recordset
sql = "SELECT MAX(noexam) maximo FROM examen;"
myset.Open sql, db, adOpenDynamic, adLockOptimistic
With myset
If Not .EOF Then
newid = CLng(!maximo)
reg.noexam(i) = newid + 1
Else
MsgBox "La base examen.dbf devuelve EOF"
End If
.Close
End With
Set myset = Nothing

habiendo data me decia que myset.EOF=True ahora bien este es el codigo optimo, pero para ver cuela era el problema tube que hacer esto

Set myset = New ADODB.Recordset
sql = "SELECT * FROM examen;"
myset.Open sql, db, adOpenDynamic, adLockOptimistic
With myset
.MoveLast
.Close
End With
Set myset = Nothing

aqui me devuelve el estado E_FAIL a que se debe esto ?
Pulgaza está desconectado   Responder Citando
Antiguo 18-oct-2007, 14:30   #2 (permalink)
aavg está en el buen camino
 
Avatar de aavg
 
Fecha de Ingreso: noviembre-2002
Ubicación: Morelia México
Mensajes: 356
Idea Re: Estado E_Fail

Si ya cerraste tu recordset no es necesario el:

Código:
'Set myset = Nothing
Intenta comentando esa linea a ver si se soluciona.

Otra cosa que podrias hacer antes de consultar busca si:

Código:
if myset.RecordCount > 0 then
   myset.Movefirst
End if
__________________
Abraham Velasco
Usuario # 516 en los Foros del Web.
El hombre no vale por lo que sabe, sino por lo que transmite
C'est parce qu'il y a un Dieu que nous sommes libres
aavg está desconectado   Responder Citando
Antiguo 19-oct-2007, 11:09   #3 (permalink)
Pulgaza ha deshabilitado el karma
 
Fecha de Ingreso: octubre-2007
Mensajes: 10
Re: Estado E_Fail

Me sigue dando el error, se que tiene que ver exactamente con la tabla, no es la conexion, por que si fuese asi, me fallaria todo el programa, no es el comando de SQL MAX por que lo he usado antes y esta bien formulado, pregunto la solucion de todo esto es borrando los registros mas viejos de la tabla, si antes no lo mencione, uso dBase
Pulgaza está desconectado   Responder Citando
Antiguo 19-oct-2007, 11:29   #4 (permalink)
aavg está en el buen camino
 
Avatar de aavg
 
Fecha de Ingreso: noviembre-2002
Ubicación: Morelia México
Mensajes: 356
Re: Estado E_Fail

Te esta regresando datos en el recordset??

Verifica
Código:
myset.RecordCount > 0

Despues de que hayas abierto el recordset con los datos de tu tabla
Código:
myset.Open sql, db, adOpenDynamic, adLockOptimistic
__________________
Abraham Velasco
Usuario # 516 en los Foros del Web.
El hombre no vale por lo que sabe, sino por lo que transmite
C'est parce qu'il y a un Dieu que nous sommes libres
aavg está desconectado   Responder Citando
Antiguo 19-oct-2007, 12:26   #5 (permalink)
Pulgaza ha deshabilitado el karma
 
Fecha de Ingreso: octubre-2007
Mensajes: 10
Re: Estado E_Fail

Bueno, ya solucione el problema, no era cuestion de codigo en Visual Basic, era que faltaba una ruta de ODBC SQL Server nunk habia visto eso pero bueno, gracias de todos modos ^^
Pulgaza está desconectado   Responder Citando
Respuesta
No hay votos aún.


Herramientas
Desplegado

Normas de Publicación
No puedes crear nuevos temas
No puedes responder temas
No puedes subir archivos adjuntos
No puedes editar tus mensajes

BB code is Activado
Caritas están Activado
[IMG] está Activado
Código HTML está Desactivado


La Zona horaria es GMT -6. Ahora son las 02:11.


Message Board Statistics

LinkBacks Enabled by vBSEO 3.1.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93