![]() |
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 ? |
Re: Estado E_Fail Si ya cerraste tu recordset no es necesario el: Código: 'Set myset = NothingOtra cosa que podrias hacer antes de consultar busca si: Código: if myset.RecordCount > 0 then |
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 |
Re: Estado E_Fail Te esta regresando datos en el recordset?? Verifica Código: myset.RecordCount > 0Despues de que hayas abierto el recordset con los datos de tu tabla Código: myset.Open sql, db, adOpenDynamic, adLockOptimistic |
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 ^^ |
Respuesta: Estado E_Fail Y porque no dejás tu solución en la web.. justamente estoy con el mismo problemas.. y cuando termino de leer el tópico: "nada" :molesto: |
Respuesta: Estado E_Fail Yo tuve el mismo problema con un usuario del programa que estoy haciendo. Tengo aprox. 50 usuarios y sólo a uno en un momento le salió ese problema. Mi programa emite reportes en excel. Al querer emitir uno, le salía un error que decía: El proveedor de datos u otro servicio devolvió un estado E-FAIL. Mi usuario reinició la máquina y simplemente no le volvió a ocurrir. No tengo idea de cuál fue la causa pero quería aportar mi experiencia. Yo uso VB6 y SQLServer. Tengo instalado office 2003, mi cliente, ni idea de qué tiene ... Saludos. |
| La zona horaria es GMT -6. Ahora son las 21:53. |
Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.