Ejemplo Clase Texcel

Ejemplo Clase Texcel

Postby leandro » Wed Oct 11, 2006 12:10 pm

Amigos del foro he descargado la clase que modifico vickthor de su sitio... He estado revisando los ejemplos, pero todavia no la tengo clara .....

Si alguien me pudiera ayudar con un ejemplo que pase una base de datos a excel se lo agradeceria... de Antemano gracias.
Saludos
LEANDRO AREVALO
Bogotá (Colombia)
https://hymlyma.com
https://hymplus.com/
leandroalfonso111@gmail.com
leandroalfonso111@hotmail.com

[ Embarcadero C++ 7.60 for Win32 ] [ FiveWin 23.07 ] [ xHarbour 1.3.0 Intl. (SimpLex) (Build 20230914) ]
User avatar
leandro
 
Posts: 1682
Joined: Wed Oct 26, 2005 2:49 pm
Location: Colombia

Re: Ejemplo Clase Texcel

Postby Vikthor » Wed Oct 11, 2006 2:02 pm

leandro wrote:Amigos del foro he descargado la clase que modifico vickthor de su sitio... He estado revisando los ejemplos, pero todavia no la tengo clara .....

Si alguien me pudiera ayudar con un ejemplo que pase una base de datos a excel se lo agradeceria... de Antemano gracias.


Leandro :

El siguiente código crea un libro y en la primera hoja, vacia todo el contenido de un archivo .dbf , se asigna formato a las columnas , se define el nombre para un rango , se cambia el tipo de letra, se renombra la hoja.

Espero que te ayude.


Code: Select all  Expand view  RUN
        oExcel := TExcelScript():New()

        oExcel:Create( cFile+".xls" )

        oExcel:oSheet:Range( "A:E" ):NumberFormat = "@"

        // Hoja para los lotes

        uData := "NUMBER"+Chr( 9 )+"ITEM"+Chr( 9 )+"LOTE"+Chr( 9 )+"QUANTY"+Chr( 9 )+"ALMACEN"+ CRLF
        bAdd := { || uData += Alltrim( ( cLt )->Number )+ Chr( 9 ) , ;
                     uData += Alltrim( ( cLt )->Item )+ Chr( 9 ) , ;
                     uData += Alltrim( Transform( ( cLt )->Lote , "XXXXXXXX") )+ Chr( 9 ) , ;
                     uData += Alltrim( Transform( ( cLt )->Quanty , "##,###,###") )+ Chr( 9 ) , ;
                     uData += Alltrim( ( cLt )->Almacen ) , ;
                     uData += CRLF }


       ( cLt )->( DbGoTop() )
        nStart := 1
        nLine := 1
        oClip := TClipBoard():New()
        DO WHILE ( cLt )->( !Eof() )
           nLine++
           Eval( bAdd )
           IF Len( uData ) > 50000
              oClip:Clear()
              oClip:SetText( uData )
              cCell := "A" + Alltrim( Str( nStart ) )
              oExcel:SetPos( cCell )
              oExcel:Paste()
              nStart := nLine + 1
              uData := ""
           ENDIF
           ( cLt )->( DbSkip( 1 ) )
        ENDDO
        IF Len( uData ) > 0
           oClip:Clear()
           oClip:SetText( uData )
           cCell := "A" + Alltrim( Str( nStart ) )
           oExcel:SetPos( cCell )
           oExcel:Paste()
        ENDIF
        cRange := "A1:E" + Alltrim( Str( nLine ) )
        oExcel:oSheet:Range( cRange ):Select()
        oClip:Clear()
        oExcel:NameSheet( "Hoja1" , "LOTES" )
        oExcel:oExcel:Selection:Name := "LOTES"
        oExcel:oExcel:Selection:Font:Name := "Tahoma"
        oExcel:oExcel:Selection:AutoFit()
        oClip:End()
        ( cLt )-> ( DbCloseArea() )

Vikthor
User avatar
Vikthor
 
Posts: 271
Joined: Fri Oct 07, 2005 5:20 am
Location: México

Amigo Gracias lo voy a probar

Postby leandro » Thu Oct 12, 2006 7:20 pm

:arrow: Amigo muchas gracias voy a probar y te comento. :D
Saludos
LEANDRO AREVALO
Bogotá (Colombia)
https://hymlyma.com
https://hymplus.com/
leandroalfonso111@gmail.com
leandroalfonso111@hotmail.com

[ Embarcadero C++ 7.60 for Win32 ] [ FiveWin 23.07 ] [ xHarbour 1.3.0 Intl. (SimpLex) (Build 20230914) ]
User avatar
leandro
 
Posts: 1682
Joined: Wed Oct 26, 2005 2:49 pm
Location: Colombia


Return to FiveWin para Harbour/xHarbour

Who is online

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