by Francisco Horta » Wed Dec 06, 2006 4:32 pm
julio, aki dejo el ejemplo, ojala a alguien mas le sea de utilidad.
como no supe como subir el archivo pues aki lo dejo, se que no es lo mejor.
#include "FiveWin.CH"
#include "Ado.CH"
// aDato := "MiDatabase.MDB"
STAT FUNC Importa(aDato)
LOCAL oConexionAdo := TOLEAUTO():New("adodb.connection")
LOCAL oRS := TOLEAUTO():New("adodb.recordset")
LOCAL oOpen, Rec:=0, cFile := Alltrim(aDato[1]),;
aFields:={}, cCod:=""
oOpen := "Provider= MicroSoft.Jet.OLEDB.4.0;Data Source="+cFile+";"
AADD(aFields,{"Color", "C_Grade"})
AADD(aFields,{"SCI", "SCI" })
AADD(aFields,{"Length", "LEN" })
oConexionAdo:Open(oOpen)
oRS:LockType := adLockOptimistic
oRS:CursorType := adOpenKeyset
oRS:ActiveConnection(oConexionAdo)
oRS:Source := "Select * from hvidata" // tu query aqui
oRS:Open()
oRS:MoveFirst()
DO WHILE !oRS:eof()
cCod := oRS:Fields("Bale ID"):Value // tomamos valor de la tabla de access del campo Bale ID
FOR x := 1 TO LEN(aFields)
(oDBF)->&(aFields[x,2]):=oRS:Fields(aFields[x,1]):Value // tomo los valores de access de los campos y los pongo en la dbf de acuerdo al nombre en el arreglo
NEXT
oRS:MoveNext()
ENDDO
oRS:Close()
oConexionAdo:Close()
RETURN NIL
salu2
paco