Estoy tratando de poder hacerlo solamente con harbour
El archivo sus primeros renglones son
21122012;01012013;31032013;20000009637;C;S;N;6,00;4,50;00;00;AZUACA GUILLERMO
21122012;01012013;31032013;20000241254;D;S;N;6,00;4,50;00;00;RAMOS SANTIAGO JUAN
21122012;01012013;31032013;20000439771;D;S;N;6,00;4,50;00;00;MENDIZABAL,LUIS MARIA
21122012;01012013;31032013;20000561860;D;S;N;6,00;4,50;00;00;CROLERO MANLIO JUAN
Para que tengan una idea son 436536 líneas. (Y este es el mas pequeño de todos 35 megas)
Lo hice con la clase txt
oTxtfil := TTxtFile():New( MfILE )
lo hacía pero demoraba como 15 a 20 minutos, por eso lo deseche, hice otros intento pero con los mismos resultados
Ahora estoy probando con append from lo intente pero me da error
Error description: Error DBCMD/1005 Error de argumento: __DBAPP
Stack Calls
===========
Called from: => __DBAPP( 0 )
Called from: ../../../dbdelim.prg => __DBDELIM( 0 )
Called from: origen.prg => LEO( 717 )
El programa es así
- Code: Select all Expand view
function leo()
LOCAL aStru := { { "field1" , "C", 8, 0 }, ;
{ "field2" , "C", 8, 0 }, ;
{ "field3" , "C", 8, 0 }, ;
{ "field4" , "C", 11, 0 }, ;
{ "field5" , "C", 1, 0 }, ;
{ "field6" , "C", 1, 0 }, ;
{ "field7" , "C", 1, 0 }, ;
{ "field8" , "C", 5, 0 }, ;
{ "field9" , "C", 5, 0 }, ;
{ "field10" , "C", 2, 0 }, ;
{ "field11" , "C", 2, 0 }, ;
{ "field12", "C", 35, 0 } }
LOCAL cFileTXT := "padron.txt"
LOCAL cFileDBF := "AgenRet.dbf"
dbCreate( cFileDBF, aStru )
USE ( cFileDBF )
cDefEol := SET( _SET_EOL, chr( 13 ) )
APPEND FROM ( cFileTXT ) DELIMITED WITH ";"
APPEND FROM ( cFileTXT ) DELIMITED WITH ( { ",",";" } )
SET( _SET_EOL, cDefEol )
return nil
Buscando por internet encontre la última parte de código pero me da el error descripto.
Gracias por su atención