Ver Mensaje Individual
  #1 (permalink)  
Antiguo 18/10/2007, 11:23
Pulgaza
 
Fecha de Ingreso: octubre-2007
Mensajes: 14
Antigüedad: 16 años, 6 meses
Puntos: 0
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 ?