FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Error con funcion ImportFromDBF
Posts: 1276
Joined: Tue Dec 28, 2010 01:29 PM
Error con funcion ImportFromDBF
Posted: Mon Nov 13, 2017 06:42 PM
Hola foro

Tengo un error al tratar de usar la ImportFromDBF....estoy usando las dbf del directorio samples con este codigo. Puse las tablas en un array

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

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

   REQUEST DBFCDX

   function Main()
   local cHost      := "localhost"
   local cUser      := "root"
   local cPassword  := "1234"
   local oCn,nSecs, uRet, cTable, aTables
   local cDb        := "fwh"

   ? "Connect to Server"
   FWCONNECT oCn HOST cHost USER cUser PASSWORD cPassword
       if oCn == nil
        ? "Connect Fail"
    return nil
        else
    endif
    
   if oCn != nil

      ? "Selecting database " + cDB, "Create if new"
      if Empty( oCn:ListDbs( cDb ) )
         oCn:CreateDB( cDb, "latin1" )
      endif
      oCn:SelectDB( cDB )
      ? "Connected to " + oCn:CurrentDB()
      
      aTables := HB_dirScan( ".\", "*.dbf", "A" )

     XBrowse( aTables )

      for each cTable in  aTables //{ "customer.dbf", "states.dbf" }
         if ! oCn:TableExists( cFileNoExt( cTable ) )
            ? "Importing " + cTable
            nSecs := Seconds()
            uRet := oCn:ImportFromDBF( cTable )

            nSecs := Seconds() - nSecs
            ? uret
            ? "Imported in ", nSecs, "Seconds"
         endif
      next

   endif
    
       ? "IMPORTACION FINALIZADA"
           
       oCn:Close()

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



Aca el error

Application
===========
Path and name: C:\fwh\samples\mysql01.exe (32 bits)
Size: 3,906,560 bytes
Compiler version: Harbour 3.2.0dev (r1603082110)
FiveWin version: FWH 17.01
C compiler version: Borland/Embarcadero C++ 7.0 (32-bit)
Windows version: 6.1, Build 7601 Service Pack 1

Time from start: 0 hours 0 mins 3 secs
Error occurred at: 11/13/17, 13:37:16
Error description: Error BASE/1108 Argument error: AT
Args:
[ 1] = C :
[ 2] = A { ... } length: 5

Stack Calls
===========
Called from: => AT( 0 )
Called from: .\source\function\FILENAME.PRG => CFILENOPATH( 48 )
Called from: .\source\function\FILENAME.PRG => CFILENOEXT( 68 )


Algun advise ?

FWH 25.12

Harbour/Hbmk2

Microsoft Visual C++

MySql 8.0

Antigravity

Posts: 1276
Joined: Tue Dec 28, 2010 01:29 PM
Re: Error con funcion ImportFromDBF
Posted: Wed Nov 15, 2017 05:11 PM

Algun advise ?

FWH 25.12

Harbour/Hbmk2

Microsoft Visual C++

MySql 8.0

Antigravity

Posts: 10733
Joined: Sun Nov 19, 2006 05:22 AM
Re: Error con funcion ImportFromDBF
Posted: Sun Nov 19, 2017 03:37 PM
Please see your code
Code (fw): Select all Collapse
           uRet := oCn:ImportFromDBF( cTable )

Here cTable is not dbf name, it is an array
Modify this line as:
Code (fw): Select all Collapse
           uRet := oCn:ImportFromDBF( cTable[ 1 ] )
Regards



G. N. Rao.

Hyderabad, India
Posts: 1276
Joined: Tue Dec 28, 2010 01:29 PM
Re: Error con funcion ImportFromDBF
Posted: Sun Nov 19, 2017 04:46 PM
nageswaragunupudi wrote:Please see your code
Code (fw): Select all Collapse
           uRet := oCn:ImportFromDBF( cTable )

Here cTable is not dbf name, it is an array
Modify this line as:
Code (fw): Select all Collapse
           uRet := oCn:ImportFromDBF( cTable[ 1 ] )


With the change before....the error persist

Application
===========
Path and name: C:\fwh\samples\export.exe (32 bits)
Size: 3,975,168 bytes
Compiler version: Harbour 3.2.0dev (r1705200225)
FiveWin version: FWH 17.05
C compiler version: Borland/Embarcadero C++ 7.3 (32-bit)
Windows version: 6.1, Build 7601 Service Pack 1

Time from start: 0 hours 0 mins 7 secs
Error occurred at: 11/19/17, 11:45:48
Error description: Error BASE/1108 Argument error: AT
Args:
[ 1] = C :
[ 2] = A { ... } length: 5

Stack Calls
===========
Called from: => AT( 0 )
Called from: .\source\function\FILENAME.PRG => CFILENOPATH( 48 )
Called from: .\source\function\FILENAME.PRG => CFILENOEXT( 68 )
Called from: export.prg => MAIN( 36 )

FWH 25.12

Harbour/Hbmk2

Microsoft Visual C++

MySql 8.0

Antigravity

Posts: 10733
Joined: Sun Nov 19, 2006 05:22 AM
Re: Error con funcion ImportFromDBF
Posted: Sun Nov 19, 2017 05:37 PM
Modify this line also
Code (fw): Select all Collapse
       if ! oCn:TableExists( cFileNoExt( cTable ) )

as
Code (fw): Select all Collapse
       if ! oCn:TableExists( cFileNoExt( cTable[ 1 ] ) )
Regards



G. N. Rao.

Hyderabad, India
Posts: 1276
Joined: Tue Dec 28, 2010 01:29 PM
Re: Error con funcion ImportFromDBF
Posted: Sun Nov 19, 2017 05:42 PM
nageswaragunupudi wrote:Modify this line also
Code (fw): Select all Collapse
       if ! oCn:TableExists( cFileNoExt( cTable ) )

as
Code (fw): Select all Collapse
       if ! oCn:TableExists( cFileNoExt( cTable[ 1 ] ) )


Hello,

It's work like this

Code (fw): Select all Collapse
       if ! oCn:TableExists( cFileNoExt( cTable[ 1 ] ) )
         ? "Importing " + cTable[ 1 ]


But it is adding me a ID field in the imported table which I don't want it



How could avoid this ?

FWH 25.12

Harbour/Hbmk2

Microsoft Visual C++

MySql 8.0

Antigravity

Posts: 10733
Joined: Sun Nov 19, 2006 05:22 AM
Re: Error con funcion ImportFromDBF
Posted: Sun Nov 19, 2017 05:54 PM

ImportFromDBF( cDbfName, nil, nil, nil, nil, .F. ) // 5th param .F. suppresses creation of AutoInc field ID

BUT
In that case you will be creating all tables in MySql without PrimaryKey and that is VERY DANGEROUS.

Regards



G. N. Rao.

Hyderabad, India
Posts: 1276
Joined: Tue Dec 28, 2010 01:29 PM
Re: Error con funcion ImportFromDBF
Posted: Sun Nov 19, 2017 06:13 PM
nageswaragunupudi wrote:ImportFromDBF( cDbfName, nil, nil, nil, nil, .F. ) // 5th param .F. suppresses creation of AutoInc field ID

BUT
In that case you will be creating all tables in MySql without PrimaryKey and that is VERY DANGEROUS.


Thanks a lot

FWH 25.12

Harbour/Hbmk2

Microsoft Visual C++

MySql 8.0

Antigravity

Posts: 1276
Joined: Tue Dec 28, 2010 01:29 PM
Re: Error con funcion ImportFromDBF
Posted: Sun Nov 19, 2017 07:07 PM

Is there a way to export Index files too ?

FWH 25.12

Harbour/Hbmk2

Microsoft Visual C++

MySql 8.0

Antigravity

Posts: 1956
Joined: Fri Oct 07, 2005 07:08 PM
Re: Error con funcion ImportFromDBF
Posted: Sun Dec 03, 2017 12:24 AM

creo, a mi parecer, que estan en SET DBF y tienen que estar en SET MYSQL.

Yo lo que haria seria exportar de DBF a TXT separando con punto y coma los valores de los campos
y luego hacer una rutina, analizada antes, y comenzar a "crear" en mysql.

FWH 21.02
Harbour 3.2.0dev (r2104281802)
Copyright (c) 1999-2021, https://harbour.github.io/
Posts: 1276
Joined: Tue Dec 28, 2010 01:29 PM
Re: Error con funcion ImportFromDBF
Posted: Sun Dec 03, 2017 12:25 AM
goosfancito wrote:creo, a mi parecer, que estan en SET DBF y tienen que estar en SET MYSQL.

Yo lo que haria seria exportar de DBF a TXT separando con punto y coma los valores de los campos
y luego hacer una rutina, analizada antes, y comenzar a "crear" en mysql.



Muchas gracias

FWH 25.12

Harbour/Hbmk2

Microsoft Visual C++

MySql 8.0

Antigravity

Continue the discussion