Chequeaste si el recordset tiene datos a la hora de llevarlo al cursor? Si no tiene datos el VFPCOM da un mensaje de error pero no recuerdo ahora mismo el mensaje generado.
Por otra parte si trabajas con VFP9 lo mejor es utilizar el metodo cursorfill del cursoradapter para llevar los datos a un cursor de vfp. Es muy sencillo:
oCa = CreateObject("CursorAdapter")
oCa.DataSourceType=[ADO]
oCa.Alias=[myCursor]
oCa.CursorFill(,,,myRecordSet)
Yo dejé de utilizar el vfpcom desde que aprendí este método, lo mejor es que no necesitas instalar un componente adicional a la hora de distribuir la aplicación.
HTH,
Enmanuel
>buenas tardes tengan todos, estoy desarrollando un pequeno software con sql, en el mismo he creado un pequeno prg que trabaja con el vfpcom de esta manera
>
>
>oVFPCOM = Createobject('vfpcom.comutil')
>oRecordSet = Createobject('ADODB.RECORDSET')
>oRecordSet.CursorType = 3
>oRecordSet.LockType = 1
>oRecordSet.Open(cadena,conexion)
>orecordset.movefirst
>If !oRecordSet.Eof()
>If oVFPCOM.RSToCursor(oRecordSet, 'workcursor')<> 0
>Messagebox(Message())
>Endif
>aseclect = 'SELECT * FROM workcursor INTO TABLE '+nombcurosr
>&aseclect
>Select workcursor
>Use
>Endif
>oRecordSet.Close
>
>
>bien con esta pequena rutina envio cualquier consulta a una table temporal un solo metodo para todas las consultas, hasta aqui bien.
>
>acabo de crear un sp de busqueda en el sql pero cuando retorna los valores me envia el siguiente error:
>
>0x80004005: unknow com status code.
>
>reviso la consulta en el sql y devuelve los resultados bien.
>
>
>select d.nombre,d.pfin,d.pffn,d.monto,d.codigo,i.nombre
> from pvprodeptos d, pvproimp i where
> d.nimpuesto = i.ninterno
>
>
>esta es la consulta que realiza el programa, alguna idea.
>
>yo seguire buscando a ver que sera.
>
>gracias...
I'm a mixture of Albert Einstein and Arnold Schwarzenegger. The only trouble is that I got Einstein's body and Schwarzenegger's brain