TExcelScript y xHarbour

TExcelScript y xHarbour

Postby fgondi » Tue Feb 14, 2006 12:25 pm

Hola grupo,

Uso la clase TExcelScript de Vikthor para generar exportar dato a excel.

Lo que quiero hacer es exportar un tabla a excel y dejar el documento excel abierto para que el operador grabe/cierre o haga lo que quiera con él.
Sin embargo aunque cierre el libro de excel, este queda abierto aunque no visible y dependiente del programa. Por tanto cuando vuelvo a exportar otra a cosa a excel se queda bloqueado (excel).

Lo que hacía antes en Harbour para evitar este problemas es poner la instrucción oExcel:End(.F.). Esto liberaba excel de la aplicación y no lo cerraba.
Ahora con xHarbour esta instrucción cierra el documento excel.

Como puedo liberar excel de la aplicación y que este no se cierre?
Gracias a todos por vuestro tiempo
Un saludo
Fernando González Diez
ALSIS Sistemas Informáticos
User avatar
fgondi
 
Posts: 694
Joined: Fri Oct 07, 2005 6:58 am
Location: Palencia, España

Postby Vikthor » Tue Feb 14, 2006 3:13 pm

fgondi :

La última clase que modifique, verifica si existe una instancia de Excel abierta para tomarla y trabajar con ella, revisa el código fuente del método Open(), ahí es dónde se hace esa revisión.
Vikthor
User avatar
Vikthor
 
Posts: 271
Joined: Fri Oct 07, 2005 5:20 am
Location: México

Postby fgondi » Tue Feb 14, 2006 4:28 pm

Uso la última clase que modificaste.

Code: Select all  Expand view
      TRY
        ::oExcel := GetActiveObject( "Excel.Application" )
        ::oClip:=TClipBoard():New()
        ::oClip:Clear()
      CATCH
         TRY
            ::oExcel := CreateObject( "Excel.Application" )
            ::oClip:=TClipBoard():New()
            ::oClip:Clear()
...


Si comento las líneas que llaman a GetActiveOject evito el bloqueo de excel, pero se sigue quedando abierto Excel (auque lo cierre) hasta que cierro el programa en xHarbour o ejecuto la instrucción oExcel:End(.F.).
Si salgo del programa en xHarbour, excel queda abierto.
Si ejecuto oExcel:End(.F.) me cierra tambien Excel.

Con Harbour y la clase tOleAuto ejecutar oExcel:End(.F.) dejaba excel abierto o al cerrar Excel cerraba el proceso en el programa.
Un saludo
Fernando González Diez
ALSIS Sistemas Informáticos
User avatar
fgondi
 
Posts: 694
Joined: Fri Oct 07, 2005 6:58 am
Location: Palencia, España


Return to FiveWin para Harbour/xHarbour

Who is online

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