FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Pasar tablas SQL Server a DBF
Posts: 10733
Joined: Sun Nov 19, 2006 05:22 AM
Re: Pasar tablas SQL Server a DBF
Posted: Sun Jul 16, 2017 03:38 PM
Excluding the CASE Table, export was successful.

The problem may be because CASE is a reserved word.
This name will keep creating problems in any other database too, Please consider renaming the table
Regards



G. N. Rao.

Hyderabad, India
Posts: 1276
Joined: Tue Dec 28, 2010 01:29 PM
Re: Pasar tablas SQL Server a DBF
Posted: Sun Jul 16, 2017 03:53 PM
nageswaragunupudi wrote:If you are using ADO for MySql, you can use FW_AdoImportFromDBF()
If you are using FWMYSQL for connecting to MySql, you can use oCn:ImportFromDBF()



Thanks

Do you have an example to use FW_AdoImportFromDBF() ?

I tried with the sample from wiki and it didn't work

FWH 25.12

Harbour/Hbmk2

Microsoft Visual C++

MySql 8.0

Antigravity

Posts: 10733
Joined: Sun Nov 19, 2006 05:22 AM
Re: Pasar tablas SQL Server a DBF
Posted: Sun Jul 16, 2017 05:36 PM
Code (fw): Select all Collapse
FW_AdoImportFromDBF( oCn, "c:\fwh\samples\states.dbf" )  // use lower case
oRs := FW_OpenRecordSet( oCn, "states" )
XBROWSER oRs
Regards



G. N. Rao.

Hyderabad, India
Posts: 1276
Joined: Tue Dec 28, 2010 01:29 PM
Re: Pasar tablas SQL Server a DBF
Posted: Tue Jul 18, 2017 05:52 PM
nageswaragunupudi wrote:
Code (fw): Select all Collapse
FW_AdoImportFromDBF( oCn, "c:\fwh\samples\states.dbf" )  // use lower case
oRs := FW_OpenRecordSet( oCn, "states" )
XBROWSER oRs


Thanks Mr Rao,

It's work for just one dbf but I have 2014 dbf to import into MySql.

Which is the best way to do it for several dbfs ?

I'm doing on this way but it doesn't work

Code (fw): Select all Collapse
#include "FiveWin.ch"

//----------------------------------------------------------------//

REQUEST DBFCDX

function Main()
   local cServer     := "localhost"
   local cDatabase   := "SBODemoUS"
   local cUser       := "root"
   local oCn, oRs, aTables, cTable
   
   oCn := FW_OpenAdoConnection( "MYSQL, localhost, SBODemoUS, root", .t. )
   
   if oCn == nil
      ? "Connect Fail"
   else
      ? "connected" 
   endif

   aTables := FW_AdoTables( oCn )          
   
   if oCn == nil
      ? "Connect Fail"
   else
      XBROWSER aTables
   endif  
   
   for each cTable in aTables
      FW_AdoImportFromDBF( oRs, cFileSetExt( cTable, "dbf" ), .t. ) 
      oRs   := FW_OpenRecordSet( oCn, cTable )
      oRs:Close()
   next  
  
   ? "IMPORTACION FINALIZADA"
        
   oCn:Close()

return nil
//----------------------------------------------------------------//

FWH 25.12

Harbour/Hbmk2

Microsoft Visual C++

MySql 8.0

Antigravity

Posts: 1276
Joined: Tue Dec 28, 2010 01:29 PM
Re: Pasar tablas SQL Server a DBF
Posted: Wed Jul 19, 2017 01:13 PM

Cristobal,

Tendra alguna sugerencia para leer varios DBF e Importar a MySql?

FWH 25.12

Harbour/Hbmk2

Microsoft Visual C++

MySql 8.0

Antigravity

Posts: 6755
Joined: Wed Feb 15, 2012 08:25 PM
Re: Pasar tablas SQL Server a DBF
Posted: Wed Jul 19, 2017 01:18 PM

Por qué no puedes usar el codigo de Mr Rao?

No he entendido el problema que tienes con tu codigo anterior

Cristobal Navarro

Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo

El secreto de la felicidad no está en hacer lo que te gusta, sino en que te guste lo que haces
Posts: 1276
Joined: Tue Dec 28, 2010 01:29 PM
Re: Pasar tablas SQL Server a DBF
Posted: Wed Jul 19, 2017 01:22 PM
cnavarro wrote:Por qué no puedes usar el codigo de Mr Rao?

No he entendido el problema que tienes con tu codigo anterior


Tengo varios Dbf (son mas de 2000) y el codigo de Mr Rao es solo para un Dbf

Alli es donde me tranque

FWH 25.12

Harbour/Hbmk2

Microsoft Visual C++

MySql 8.0

Antigravity

Posts: 6755
Joined: Wed Feb 15, 2012 08:25 PM
Re: Pasar tablas SQL Server a DBF
Posted: Wed Jul 19, 2017 01:24 PM

Pero te conecta correctamente al servidor?

Cristobal Navarro

Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo

El secreto de la felicidad no está en hacer lo que te gusta, sino en que te guste lo que haces
Posts: 6755
Joined: Wed Feb 15, 2012 08:25 PM
Re: Pasar tablas SQL Server a DBF
Posted: Wed Jul 19, 2017 01:30 PM
El problema lo tienes, porque lo estás haciendo al revés

La instrucción
Code (fw): Select all Collapse
aTables := FW_AdoTables( oCn )

es incorrecta, eso te devuelve las tablas que hay en el servidor, y tú necesitas los dbf que vas a importar

Tienes que leer todos los dbf para pasárselos a la function de importación

Code (fw): Select all Collapse
aTables := HB_dirScan( cPath, "*.dbf", "A" )   // Por ejemplo
XBrowse( aTables )


Después haces un For .... Next y le vas aplicando cada elemento de la tabla a la function de importacion ( ojo con añadirle el path al nombre si es necesario ), todo en minúsculas eso si
Cristobal Navarro

Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo

El secreto de la felicidad no está en hacer lo que te gusta, sino en que te guste lo que haces
Posts: 1276
Joined: Tue Dec 28, 2010 01:29 PM
Re: Pasar tablas SQL Server a DBF
Posted: Wed Jul 19, 2017 01:34 PM
cnavarro wrote:Pero te conecta correctamente al servidor?


Si

El programa funciona y conecta pero no puede importar el Dbf a la base de datos de mysql

FWH 25.12

Harbour/Hbmk2

Microsoft Visual C++

MySql 8.0

Antigravity

Posts: 6755
Joined: Wed Feb 15, 2012 08:25 PM
Re: Pasar tablas SQL Server a DBF
Posted: Wed Jul 19, 2017 01:35 PM

Has leido mi post anterior?

Cristobal Navarro

Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo

El secreto de la felicidad no está en hacer lo que te gusta, sino en que te guste lo que haces
Posts: 1276
Joined: Tue Dec 28, 2010 01:29 PM
Re: Pasar tablas SQL Server a DBF
Posted: Wed Jul 19, 2017 01:35 PM
cnavarro wrote:El problema lo tienes, porque lo estás haciendo al revés

La instrucción
Code (fw): Select all Collapse
aTables := FW_AdoTables( oCn )

es incorrecta, eso te devuelve las tablas que hay en el servidor, y tú necesitas los dbf que vas a importar

Tienes que leer todos los dbf para pasárselos a la function de importación

Code (fw): Select all Collapse
aTables := HB_dirScan( cPath, "*.dbf", "A" )   // Por ejemplo
XBrowse( aTables )


Después haces un For .... Next y le vas aplicando cada elemento de la tabla a la function de importacion ( ojo con añadirle el path al nombre si es necesario ), todo en minúsculas eso si



Tengo los Dbf en el mismo directorio que el ejecutable....no necesito path alli?

FWH 25.12

Harbour/Hbmk2

Microsoft Visual C++

MySql 8.0

Antigravity

Posts: 1276
Joined: Tue Dec 28, 2010 01:29 PM
Re: Pasar tablas SQL Server a DBF
Posted: Wed Jul 19, 2017 01:37 PM
Compuin wrote:
cnavarro wrote:El problema lo tienes, porque lo estás haciendo al revés

La instrucción
Code (fw): Select all Collapse
aTables := FW_AdoTables( oCn )

es incorrecta, eso te devuelve las tablas que hay en el servidor, y tú necesitas los dbf que vas a importar

Tienes que leer todos los dbf para pasárselos a la function de importación

Code (fw): Select all Collapse
aTables := HB_dirScan( cPath, "*.dbf", "A" )   // Por ejemplo
XBrowse( aTables )


Después haces un For .... Next y le vas aplicando cada elemento de la tabla a la function de importacion ( ojo con añadirle el path al nombre si es necesario ), todo en minúsculas eso si



Tengo los Dbf en el mismo directorio que el ejecutable....no necesito path alli?


Voy a probar y te comento

FWH 25.12

Harbour/Hbmk2

Microsoft Visual C++

MySql 8.0

Antigravity

Posts: 6755
Joined: Wed Feb 15, 2012 08:25 PM
Re: Pasar tablas SQL Server a DBF
Posted: Wed Jul 19, 2017 01:39 PM
El for seria algo asi

Code (fw): Select all Collapse
   For x =1 to Len( aTables )

        FW_AdoImportFromDBF( oCn, lower( aTables[ x ][ 1 ] ) ) 

   Next x


O incluso

Code (fw): Select all Collapse
    AEVal( aTables, { | a | FW_AdoImportFromDBF( oCn, lower( a[ 1 ] ) ) } )
Cristobal Navarro

Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo

El secreto de la felicidad no está en hacer lo que te gusta, sino en que te guste lo que haces
Posts: 1276
Joined: Tue Dec 28, 2010 01:29 PM
Re: Pasar tablas SQL Server a DBF
Posted: Wed Jul 19, 2017 01:40 PM
Colocandolo asi

Code (fw): Select all Collapse
aTables := HB_dirScan( "*.dbf", "A" )   // Por ejemplo
   XBrowse( aTables )


Me trae el Xbrowse vacio

Los dbf estan en el mismo directorio del ejecutable

FWH 25.12

Harbour/Hbmk2

Microsoft Visual C++

MySql 8.0

Antigravity