Tablas DBF de VFP

Tablas DBF de VFP

Postby jnavas » Sun Feb 16, 2020 2:58 pm

Saludos
Necesito migrar datos de tablas DBF/CDX creadas con FOXPRO


SELECT A
USE (cFile) VIA "DBFCDX"

Genera error de corrupcion

Tambien
SELECT A
USE (cFile) VIA "ADS"

Genera error 6080

Agradecido su colaboracion
Probare por la VIA ODBC
User avatar
jnavas
 
Posts: 479
Joined: Wed Nov 16, 2005 12:03 pm
Location: Caracas - Venezuela

Re: Tablas DBF de VFP

Postby ruben Dario » Mon Feb 17, 2020 3:32 am

Saludos.
Una vez hice una prueba y hice la conexion de 2 maneras. Te anexo codigo

Code: Select all  Expand view

Local oCn,cQuery,cPass,cDB,cUser,oError,String ,oRs,b
cUser := " "
cDB   := "PRUEBA.DBC"
cPass := " "

String :=  "Driver={Microsoft Visual FoxPro Driver};SourceType=DBC;SourceDB=" + cDB + ";Exclusive=No;NULL=NO;Collate=Machine;BACKGROUNDFETCH=NO;DELETED=NO"

//Otra manera tambien funciona
//String :=  "Provider=vfpoledb;Data Source=" + cDB + ";Collating Sequence=machine;"


/* funciona
oCn:Open("Provider=Advantage OLE DB Provider;User ID="+cUser +;
                      ";Password="+cPass+";Data Source="+ cDB +";TableType=ADS_VFP;"+;
                      "Advantage Server Type=ADS_LOCAL_SERVER;")
*/



      oCn        := TOLEAUTO():New("ADODB.connection")
      oCn:CursorLocation    := adUseClient
      oCn:Mode              := adModeShareDenyNone

      oCn:Open(String)
      cQuery:= "select * from clase"

    WITH OBJECT oRs := TOleAuto():New("adodb.recordset")
             :CacheSize := 50
             :CursorLocation := adUseClient
             :CursorType     := adOpenStatic
             :LockType       := adLockPessimistic
             :Open( cQuery , String,1, 3 )

    END

   b:=1
   oRs:MoveFirst()
   DO WHILE .NOT. oRs:EOF()
      ?oRs:Fields("clase"):value+" "+oRs:Fields("descripcio"):value
      b++
      oRs:MoveNext()
   ENDDO
    oRs:Close();oCn:Close()

 
Ruben Dario Gonzalez
Cali-Colombia
rubendariogd@hotmail.com - rubendariogd@gmail.com
User avatar
ruben Dario
 
Posts: 1070
Joined: Thu Sep 27, 2007 3:47 pm
Location: Colombia

Re: Tablas DBF de VFP

Postby jnavas » Mon Feb 17, 2020 9:12 am

Ruben Dario
Saludos y buen dia
logré solucionar mediante:

1. Instale ODBC de ADS
2. Cree un DSN
3. Hice las consultas SQL desde MSQUERY de lo que necesitaba y como lo requería, con excel
4. Desde mi aplicación leo el archivo excel y logré importar los datos de manera rápida y comoda.

Agradecido por los buenos oficios, tomare en cuenta tu aporte para futuros casos.
User avatar
jnavas
 
Posts: 479
Joined: Wed Nov 16, 2005 12:03 pm
Location: Caracas - Venezuela

Re: Tablas DBF de VFP

Postby hmpaquito » Mon Feb 17, 2020 12:50 pm

¿ Matando moscas a cañonazos ?


Code: Select all  Expand view
SET DBFLOCKSCHEME TO



Code: Select all  Expand view
   
    // Constant Value Description
    DB_DBFLOCK_DEFAULT 0 Default locking scheme
    DB_DBFLOCK_CLIP 1 Clipper 5.2 locking scheme
    DB_DBFLOCK_CL53 2 Clipper 5.3 locking scheme
    DB_DBFLOCK_VFP 3 Visual FoxPro locking scheme
    DB_DBFLOCK_CL53EXT 4 Emulated shared locking
    DB_DBFLOCK_XHB64 5 Locking scheme for files > 4GB
hmpaquito
 
Posts: 1482
Joined: Thu Oct 30, 2008 2:37 pm

Re: Tablas DBF de VFP

Postby jnavas » Tue Feb 18, 2020 1:46 pm

Saludos y Gracias,
Puedes enviarme programa ejemplo, estos son casos muy puntuales para migración de datos,
User avatar
jnavas
 
Posts: 479
Joined: Wed Nov 16, 2005 12:03 pm
Location: Caracas - Venezuela

Re: Tablas DBF de VFP

Postby hmpaquito » Wed Feb 19, 2020 12:29 pm

Aunque nunca he traspasado información desde un .dbf vfp, lo que quise decir es que se puede abrir una .dbf vfp seteando el SET indicado.
hmpaquito
 
Posts: 1482
Joined: Thu Oct 30, 2008 2:37 pm

Re: Tablas DBF de VFP

Postby carlos vargas » Thu Feb 20, 2020 9:35 pm

Code: Select all  Expand view

#include "dbinfo.ch"

procedure main()
  SET DBFLOCKSCHEME TO DB_DBFLOCK_VFP
  USE (tabla_fox_pro) NEW
return

 
Salu2
Carlos Vargas
Desde Managua, Nicaragua (CA)
User avatar
carlos vargas
 
Posts: 1720
Joined: Tue Oct 11, 2005 5:01 pm
Location: Nicaragua


Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: Google [Bot] and 46 guests