E_FAIL (El proveedor u otro servicio retornó un estado E_FAIL)

01/10/2004 - 20:07 por Napoleón Cabrera | Informe spam
Hola!
Estoy trabajando en VB6 abriendo BDs FOXPRO (MS-DOS) con una conexión ODBC.
Cuando abro un recordset no tengo problemas para leer algunos de los
archivos .DBFs usando una consulta SQL desde el programa VB. Algunos
archivos (que se supone son iguales en estructura y similares en datos)
fallan. El error en tiempo de ejecución que VB6 me da es el siguiente:

'-214767259 (80004005)'; El proveedor u otro servicio retornó un estado
E_FAIL
y depurando el código veo que el error se origina en los .RecordCount y/o
.MoveNext
El código que me está generando estos problemas es el siguiente: (Observar
las marcas >>>>>)


For contadorSucu = 1 To 11
If contadorSucu = 2 Then
GoTo sgteSucu
End If
nombreTABLA = "coiddet" & Trim(Format$(contadorSucu, "0#"))

Sql = "SELECT * FROM " & nombreTABLA & " " _
& "WHERE " _
& "fecha >= {" & Format(Msk_Fecha1, "mm/dd/yyyy") & "} AND "
_
& "fecha <= {" & Format(Msk_Fecha2, "mm/dd/yyyy") & "}" _
& "ORDER BY Fecha "

Set Rs1 = New ADODB.Recordset
Glb_cnnFOX.CommandTimeout = 0
Rs1.Open Sql, Glb_cnnFOX, adOpenForwardOnly, adLockReadOnly
If Rs1.BOF And Rs1.EOF Then
Rs1.Close
Set Rs1 = Nothing
GoTo sgteSucu
End If

nContarRegistros = Rs1.RecordCount '>>>>> AQUI SE PRODUCE UNA
FALLA

While Not Rs1.EOF()
'Enumerar campos para INSERT INTO
prbAvance.Value = Int((Rs1.AbsolutePosition * 100) /
nContarRegistros)
nombreCampos = _
"Operacion, Renglon, Sucursal, tienda, fecha, articulo,
division, depto, " _
& "familia, nombre, cantidad, pnormal, pventa, pfinal,
descuento, " _
& "iva, impiva, impcanc, ivacanc, descanc, impdev, ivadev,
desdev, " _
& "tipo, vendedor, id_usuario, Fum "
'Poner valores para los campos (INSERT INTO)
valoresAsignar = _
"'" & Rs1!Operacion & "', " & Rs1!Renglon & ", " _
& "'" & Rs1!Sucursal & "', '" & Rs1!tienda & "', " _
& "'" & Format$(Rs1!Fecha, "mm/dd/yyyy") & "', " _
& Rs1!articulo & ", '" & Rs1!Division & "', '" & Rs1!Depto & "'
, '" & Rs1!Familia & "', " _
& "'" & Rs1!Nombre & "', " _
& Rs1!Cantidad & ", " _
& Rs1!pnormal & ", " _
& Rs1!pventa & ", " & Rs1!pfinal & ", " & Rs1!descuento & ", " _
& Rs1!Iva & ", " & Rs1!impiva & ", " _
& Rs1!impcanc & ", " & Rs1!ivacanc & ", " & Rs1!descanc & ", " _
& Rs1!impdev & ", " & Rs1!ivadev & ", " & Rs1!desdev & ", " _
& "'" & Rs1!Tipo & "', '" & Rs1!vendedor & "', " _
& "'" & Rs1!id_usuario & "', " _
& "'" & Format$(Rs1!Fum, "mm/dd/yyyy") & "' "
'Ejecutar orden SQL
Glb_cnnDWH.Execute "INSERT INTO DWH_ventasdia_AMR " _
& "(" & nombreCampos & ") " _
& "VALUES " _
& "(" & valoresAsignar & ")"
Rs1.MoveNext '>>>>>
y/o AQUI SE PRODUCE UNA FALLA
Wend
Rs1.Close
sgteSucu:
Next contadorSucu

Espero puedan ayudarme pronto .
Muchísimas gracias desde ya y saludos cordiales!
Napoleon




Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.771 / Virus Database: 518 - Release Date: 28/09/04
 

Leer las respuestas

#1 Gustavo Larriera [MVP]
01/10/2004 - 22:20 | Informe spam
Deberías postear en el foro de Foxpro o de VB6, allí seguramente podrán
brindarte excelente ayuda.

Este foro es de SQL Server.

Gustavo Larriera, MVP
Uruguay LatAm
http://sqljunkies.com/weblog/gux/
Este mensaje se proporciona "COMO ESTA" sin garantias y no otorga ningun
derecho / This posting is provided "AS IS" with no warranties, and confers
no rights.
"Napoleón Cabrera" wrote in message
news:eZiLmF%
Hola!
Estoy trabajando en VB6 abriendo BDs FOXPRO (MS-DOS) con una conexión
ODBC.
Cuando abro un recordset no tengo problemas para leer algunos de los
archivos .DBFs usando una consulta SQL desde el programa VB. Algunos
archivos (que se supone son iguales en estructura y similares en datos)
fallan. El error en tiempo de ejecución que VB6 me da es el siguiente:

'-214767259 (80004005)'; El proveedor u otro servicio retornó un estado
E_FAIL
y depurando el código veo que el error se origina en los .RecordCount y/o
.MoveNext
El código que me está generando estos problemas es el siguiente: (Observar
las marcas >>>>>)


For contadorSucu = 1 To 11
If contadorSucu = 2 Then
GoTo sgteSucu
End If
nombreTABLA = "coiddet" & Trim(Format$(contadorSucu, "0#"))

Sql = "SELECT * FROM " & nombreTABLA & " " _
& "WHERE " _
& "fecha >= {" & Format(Msk_Fecha1, "mm/dd/yyyy") & "} AND
"
_
& "fecha <= {" & Format(Msk_Fecha2, "mm/dd/yyyy") & "}" _
& "ORDER BY Fecha "

Set Rs1 = New ADODB.Recordset
Glb_cnnFOX.CommandTimeout = 0
Rs1.Open Sql, Glb_cnnFOX, adOpenForwardOnly, adLockReadOnly
If Rs1.BOF And Rs1.EOF Then
Rs1.Close
Set Rs1 = Nothing
GoTo sgteSucu
End If

nContarRegistros = Rs1.RecordCount '>>>>> AQUI SE PRODUCE UNA
FALLA

While Not Rs1.EOF()
'Enumerar campos para INSERT INTO
prbAvance.Value = Int((Rs1.AbsolutePosition * 100) /
nContarRegistros)
nombreCampos = _
"Operacion, Renglon, Sucursal, tienda, fecha, articulo,
division, depto, " _
& "familia, nombre, cantidad, pnormal, pventa, pfinal,
descuento, " _
& "iva, impiva, impcanc, ivacanc, descanc, impdev, ivadev,
desdev, " _
& "tipo, vendedor, id_usuario, Fum "
'Poner valores para los campos (INSERT INTO)
valoresAsignar = _
"'" & Rs1!Operacion & "', " & Rs1!Renglon & ", " _
& "'" & Rs1!Sucursal & "', '" & Rs1!tienda & "', " _
& "'" & Format$(Rs1!Fecha, "mm/dd/yyyy") & "', " _
& Rs1!articulo & ", '" & Rs1!Division & "', '" & Rs1!Depto & "'
, '" & Rs1!Familia & "', " _
& "'" & Rs1!Nombre & "', " _
& Rs1!Cantidad & ", " _
& Rs1!pnormal & ", " _
& Rs1!pventa & ", " & Rs1!pfinal & ", " & Rs1!descuento & ", "
_
& Rs1!Iva & ", " & Rs1!impiva & ", " _
& Rs1!impcanc & ", " & Rs1!ivacanc & ", " & Rs1!descanc & ", "
_
& Rs1!impdev & ", " & Rs1!ivadev & ", " & Rs1!desdev & ", " _
& "'" & Rs1!Tipo & "', '" & Rs1!vendedor & "', " _
& "'" & Rs1!id_usuario & "', " _
& "'" & Format$(Rs1!Fum, "mm/dd/yyyy") & "' "
'Ejecutar orden SQL
Glb_cnnDWH.Execute "INSERT INTO DWH_ventasdia_AMR " _
& "(" & nombreCampos & ") " _
& "VALUES " _
& "(" & valoresAsignar & ")"
Rs1.MoveNext '>>>>>
y/o AQUI SE PRODUCE UNA FALLA
Wend
Rs1.Close
sgteSucu:
Next contadorSucu

Espero puedan ayudarme pronto .
Muchísimas gracias desde ya y saludos cordiales!
Napoleon




Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.771 / Virus Database: 518 - Release Date: 28/09/04


Preguntas similares