Importar de excel a DBF

Importar de excel a DBF

Postby ACC69 » Thu Oct 14, 2010 6:24 pm

Hola buenas tardes,tengo la clase FILEXLS,y necesitaria importar a mi archivo base de datos de Excel,alguien tendrá alguna rutina o que lo haya hecho o un ejemplo, que me pueda darme la idea de importar desde mi sistema el archivo excel ?

Es con el fin de no capturar dos veces,el usuario captura datos en excel, y yo desde mi sistema necesitaria importar desde excel, todo lo capturado por el usuario y asi en mi sistema, una vez importado los datos de excel,el usuario pueda agregarle mas datos, calculos, etc etc .

Espero haberme explicado y que puedan ayudarme al respecto antes mencionado.

Gracias y se los agradeceré mucho a todos los colegas.

Atte: Adrian C. C.

acc69@hotmail.com
ACC69
 
Posts: 632
Joined: Tue Dec 12, 2006 7:34 pm

Re: Importar de excel a DBF

Postby horacio » Thu Oct 14, 2010 6:53 pm

Podrias utilizar texcelscrip. funciona de maravillas. saludos
horacio
 
Posts: 1358
Joined: Wed Jun 21, 2006 12:39 am
Location: Capital Federal Argentina

Re: Importar de excel a DBF

Postby ACC69 » Thu Oct 14, 2010 7:46 pm

horacio wrote:Podrias utilizar texcelscrip. funciona de maravillas. saludos

Buenas tardes Horacio, algun ejemplo que me pueda proporcionar y donde consigo la clase que recomienda o alguien que me pueda proporcionar la clase, o colegas, que puedan aportar sus experiencias en importar a su dbf, desde excel

Gracias y saludos
ACC69
 
Posts: 632
Joined: Tue Dec 12, 2006 7:34 pm

Re: Importar de excel a DBF

Postby acuellar » Thu Oct 14, 2010 7:53 pm

Adrian, aqui un ejemplio sin Clase

Code: Select all  Expand view

Function ExcelToDBF()
      LOCAL oExcel, oHoja, nRows, nCols,nRow, nCol
      LOCAL   aDBF := {"EMPLEADOS" }
      LOCAL   aHOJAS:= { "Hoja1" }
      PRIVATE cDbf
 
      oExcel:= TOleAuto():New( "Excel.Application" )
      *oExcel:WorkBooks:Open(cGetFile("C:\*.XLS", "Seleccione Fichero"))
      oExcel:WorkBooks:Open("C:\PLANILLA.XLS")
      If empty( oExcel )
         Retur nil
      Endif
      cDbf:= aDbf[i] + ".DBF"
       USE (cDbf) ALIAS Base EXCLUSIVE  
       DBZAP()
       oExcel:Sheets(aHojas[I]):Select()
       oHoja=oExcel:ActiveSheet
       nRows := oHoja:UsedRange:Rows:Count()
       nCols := oHoja:UsedRange:Columns:Count()
       oDbfNam:SetText( "Convirtiendo " + aDbf[i]  )
       For nRow := 2 TO nRows
         APPEND BLANK
         FOR nCol := 1 TO nCols
           xValue := oHoja:Cells(nRow,nCol):Value
           FieldPut(nCol,xValue)
           SysRefresh()
         Next
         Memory(-1)
        Next I
   oExcel:Quit()
   Base->( dBCloseArea() )
 
Retu Nil
 


Saludos,

Adhemar
Saludos,

Adhemar C.
User avatar
acuellar
 
Posts: 1590
Joined: Tue Oct 28, 2008 6:26 pm
Location: Santa Cruz-Bolivia

Re: Importar de excel a DBF

Postby ACC69 » Fri Oct 15, 2010 2:28 pm

acuellar wrote:Adrian, aqui un ejemplio sin Clase

Code: Select all  Expand view

Function ExcelToDBF()
      LOCAL oExcel, oHoja, nRows, nCols,nRow, nCol
      LOCAL   aDBF := {"EMPLEADOS" }
      LOCAL   aHOJAS:= { "Hoja1" }
      PRIVATE cDbf
 
      oExcel:= TOleAuto():New( "Excel.Application" )
      *oExcel:WorkBooks:Open(cGetFile("C:\*.XLS", "Seleccione Fichero"))
      oExcel:WorkBooks:Open("C:\PLANILLA.XLS")
      If empty( oExcel )
         Retur nil
      Endif
      cDbf:= aDbf[i] + ".DBF"
       USE (cDbf) ALIAS Base EXCLUSIVE  
       DBZAP()
       oExcel:Sheets(aHojas[I]):Select()
       oHoja=oExcel:ActiveSheet
       nRows := oHoja:UsedRange:Rows:Count()
       nCols := oHoja:UsedRange:Columns:Count()
       oDbfNam:SetText( "Convirtiendo " + aDbf[i]  )
       For nRow := 2 TO nRows
         APPEND BLANK
         FOR nCol := 1 TO nCols
           xValue := oHoja:Cells(nRow,nCol):Value
           FieldPut(nCol,xValue)
           SysRefresh()
         Next
         Memory(-1)
        Next I
   oExcel:Quit()
   Base->( dBCloseArea() )
 
Retu Nil
 


Saludos,

Adhemar


Hola buenos dias como esta , gracias por el ejemplo Adhemar, probare y le confirmo que tal va, otro detalle, Adhemar se podria importar unicamente los datos que yo necesito ? no necesito importar todo el contenido de excel a mi dbf ,solo lo indispensable, y algun ejemplo, para poder iniciarme y adaptarlo a mis necesidades,gracias y le agradezco su ejemplo.

Saludos y buen dia

Adrian C. C.
ACC69
 
Posts: 632
Joined: Tue Dec 12, 2006 7:34 pm

Re: Importar de excel a DBF

Postby acuellar » Fri Oct 15, 2010 3:40 pm

Adrian

Tenes que saber que columnas queres.
Code: Select all  Expand view


 xValue := oHoja:Cells(nRow,nCol):Value  //nCol te indica la columna que queres.1
 FieldPut(nCol,xValue)
 //Podes hacer asi:
 xValue := oHoja:Cells(nRow,2):Value  ; FieldPut(2,xValue)
 xValue := oHoja:Cells(nRow,5):Value  ; FieldPut(5,xValue)

 


Saludos,


Adhemar
Saludos,

Adhemar C.
User avatar
acuellar
 
Posts: 1590
Joined: Tue Oct 28, 2008 6:26 pm
Location: Santa Cruz-Bolivia


Return to FiveWin para Harbour/xHarbour

Who is online

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