FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Tablas DBF de VFP
Posts: 492
Joined: Wed Nov 16, 2005 12:03 PM
Tablas DBF de VFP
Posted: Sun Feb 16, 2020 02: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

Posts: 1078
Joined: Thu Sep 27, 2007 03:47 PM
Re: Tablas DBF de VFP
Posted: Mon Feb 17, 2020 03:32 AM
Saludos.
Una vez hice una prueba y hice la conexion de 2 maneras. Te anexo codigo

Code (fw): Select all Collapse
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
Posts: 492
Joined: Wed Nov 16, 2005 12:03 PM
Re: Tablas DBF de VFP
Posted: Mon Feb 17, 2020 09: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.

Posts: 1515
Joined: Thu Oct 30, 2008 02:37 PM
Re: Tablas DBF de VFP
Posted: Mon Feb 17, 2020 12:50 PM
¿ Matando moscas a cañonazos ?


Code (fw): Select all Collapse
SET DBFLOCKSCHEME TO



Code (fw): Select all Collapse
    
    // 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
Posts: 492
Joined: Wed Nov 16, 2005 12:03 PM
Re: Tablas DBF de VFP
Posted: Tue Feb 18, 2020 01:46 PM

Saludos y Gracias,
Puedes enviarme programa ejemplo, estos son casos muy puntuales para migración de datos,

Posts: 1515
Joined: Thu Oct 30, 2008 02:37 PM
Re: Tablas DBF de VFP
Posted: 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.

Posts: 1789
Joined: Tue Oct 11, 2005 05:01 PM
Re: Tablas DBF de VFP
Posted: Thu Feb 20, 2020 09:35 PM
Code (fw): Select all Collapse
#include "dbinfo.ch"

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

Carlos Vargas

Desde Managua, Nicaragua (CA)

Continue the discussion