close Warning: Can't synchronize with repository "(default)" (/var/svn/tolp does not appear to be a Subversion repository.). Look in the Trac log for more information.

Opened 12 years ago

Closed 12 years ago

Last modified 12 years ago

#1669 closed task (fixed)

Función WriteWorkbook en TolExcel

Reported by: Manuel Locubiche Malaxechevarria Owned by: Jorge
Priority: high Milestone: Mantainance
Component: Excel API Version: 3.1
Severity: normal Keywords:
Cc:

Description

Se solicita la implementación de la función WriteWorkbook (disponible en el paquete SaddExcel) en TolExcel, para poder utilizarla en sistemas operativos no Windows.

Change History (17)

comment:1 Changed 12 years ago by Jorge

Status: newaccepted

El prototipo de la función es:

Real WriteWorkbook(Set workbook, Text path);

path es el nombre del archivo excel destino y workbook contiene un Set por cada worksheet dentro del workbook destino.

comment:2 Changed 12 years ago by Jorge

La versión 2.3 del paquete está pendiente de compilar en Windows para subir la dll y luego el paquete al repositorio. La versión 2.3 incluye métodos para crear archivos excel.

comment:3 Changed 12 years ago by Jorge

(In [5734]) refs #1669, se implementa la función Text TolExcel::WriteWorkbook(Text path, Set data)

comment:4 Changed 12 years ago by Jorge

(In [5735]) refs #1669, los segundos se almacenan en un double

comment:5 Changed 12 years ago by Jorge

(In [5736]) refs #1669, compilando en linux los cambios r5734 y r5735

comment:6 Changed 12 years ago by Pedro Gea

(In [5738]) Refs #1669
Se suben nuevas dlls compiladas con VC9.

comment:7 Changed 12 years ago by Manuel Locubiche Malaxechevarria

Hola Jorge,

como te comente ayer en Windows va perfectamente.
Estamos probando en linux, en euler, y la excel la crea en blanco, previo algún error de aviso, reproducible en el código de abajo:

Text TolExcel::WriteWorkbook("/media/nas/bdr/temp/b.xls", [[ Set h1 = [[ [[1]] ]] ]] )

Si no se nombra el set también da un error de aviso(este da tanto en windows como en linux, aunque en windows termina generando la excel con un nombre por defecto)

Gracias, un abrazo

comment:8 Changed 12 years ago by Jorge

(In [5741]) refs #1669, limpiando trazas

comment:9 Changed 12 years ago by Jorge

Resolution: fixed
Status: acceptedclosed

(In [5742]) fixes #1669, no esta claro si todavía queda un error con la secuencia Open+Save + Edit + Save.

comment:10 Changed 12 years ago by Jorge

Resolution: fixed
Status: closedreopened

Hay que compilar en CentOS 5.5 de lo contrario tendremos un error de carga como el siguiente.

<E>
ERROR: [1] [LoadDynLib("/opt/tol-devel/tolp/OfficialTolArchiveNetwork/TolExcel/CppTools/Linux_x86_32/TolExcel.so")] 
  lt_dlopen error:'/usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.9' not found (required by /opt/tol-devel/tolp/OfficialTolArchiveNetwork/TolExcel/CppTools/Linux_x86_32/TolExcel.so)'</E>

comment:11 Changed 12 years ago by Jorge

Resolution: fixed
Status: reopenedclosed

(In [5743]) fixes #1669, compilación en CentOS 5.4

comment:12 Changed 12 years ago by Pedro Gea

(In [5749]) Refs #1669
Se evita crear una hoja sin nombre. Ya que genera archivos xls corruptos.

comment:13 Changed 12 years ago by Pedro Gea

Resolution: fixed
Status: closedreopened

Queda una última cosa por resolver, no muy urgente.

Al intentar crear un libro con dos hojas, por ejemplo, nos encontramos un libro con tres hojas, la última de ellas vacía y con el nombre "Sheet1".

Esto ocurre salvo en el caso en el que una de las hojas que creemos tenga exactamente ese nombre.

Como parece que al crear el libro ya hay una hoja creada, se sugiere reutilizar esta primera, cambiándole el nombre en lugar de crearla.

comment:14 Changed 12 years ago by Jorge

(In [5760]) refs #1669, #1680, traza de tamaños de vectores

comment:15 Changed 12 years ago by Jorge

(In [5761]) refs #1669, #1680, RenameWS

comment:16 Changed 12 years ago by Jorge

Resolution: fixed
Status: reopenedclosed

(In [5762]) fixes #1669, #1680, RenameWS

comment:17 Changed 12 years ago by Jorge

(In [5764]) refs #1669, #1680, compilación en CentOS 5.4

Note: See TracTickets for help on using tickets.