cancel
Showing results for 
Search instead for 
Did you mean: 

Recorrer recursivamente un espacio con Freemarker

cristinamr
World-Class Innovator
World-Class Innovator
Buenas.

Llevo varios días haciendo un desarrollo con Freemarker para una vista personalizada (custom view) y la verdad es que he tenido bastantes problemas a la hora de ver cómo podía recorrer un espacio recursivamente con Freemarker y que te contara el número de documentos que tiene ese espacio y sus hijos, así como el tamaño total de los mismos.
A simple vista es bastante sencillo según explico lo que quiero hacer en el desarrollo, pero todo es ponerse y darse cuenta de que para nada es sencillo, sobre todo si no estás familiarizado con el lenguaje de freemarker, no sabes muy bien como enfocarlo y apenas tener ejemplos en internet sobre esto (lo típico de buscar algo y no encontrarlo por ningun lado, vamos Smiley Tongue).

Estuve mirando en foros, google, y demás y nada así que aquí dejo mi granito de arena por si a alguien le sirve en un futuro (al menos que lo tenga un poco más fácil Smiley Wink 😞


<#assign contador  = 0 >
<#assign tamanio  = 0 >
<#list space.childrenByXPath[".//*"]  as child>
   <#if child.isDocument>
      <#assign contador  = contador+1 >
     <#assign tamanio  = tamanio + child.size>
   </#if>
</#list>
<#assign tamanio = (tamanio/1024)/>
<#assign tamanio = (tamanio/1024)/>
<table border="0" celpadding="0" cellspacing="0">
<tr><td>Numero de docs en el espacio: ${contador}</td></tr>
<tr><td>Tamaño de los documentos: ${tamanio}</td></tr>
</table>

La idea es que metas el código en un ftl y lo ejecutes desde el mismo espacio en el que quieras ver el custom view Smiley Wink
Por cierto un apunte: Divido el tamaño dos veces entre 1024 para que te lo escale a megas sino da demasiadas cifras Smiley Frustrated

Un saludooo!! ^^
--
VenziaIT: helping companies since 2005! Our ECM products: AQuA & Seidoc
22 REPLIES 22

nemrp
Champ in-the-making
Champ in-the-making
Muchas gracias CristinaMR.

He seguido tu tutorial y me ha funcionado perfectamente en un Alfresco 2.2.0, pero en un Alfresco 3.4.0 al desplegarse los scripts no parace el que he creado. No se si lo habré colocado equivocadamente. Lo he puesto en "Espacio de empresa > Diccionario de datos > Scripts". En el desplegable sólo aparecen los que vienen por defecto.

Por cierto, también he hecho la prueba de que el log sea directamente un xls y ha funcionado bien. Lo único que habría que ver ahora es cómo tratar ese xls en su construcción para que se pueda especificar qué va en cada columna, porque los saltos de fila lo hace bien.

Un saludo.

cristinamr
World-Class Innovator
World-Class Innovator
A lo primero, tienes toda la razón ¿le has encontrado alguna lógica? A lo mejor es recargando (como con los webscripts) y listo  :roll:  Si has dado con la clave: Cuenta!!  :mrgreen:

A lo segundo: ¿Y si lo tratas como un .csv? He realizado la siguiente prueba y me ha ido bien:
Créate el txt tal que así (por ejemplo)

Nombre;Apellidos;Poblacion
Cristina;Martin Ruiz;Sevilla

Guárdalo como un csv en vez de txt y ábrelo con el excel y ya verás por ti mismo. El salto de linea es importante porque es el que te va a definir el salto de linea dentro del excel 😃

Comentame ^__^
--
VenziaIT: helping companies since 2005! Our ECM products: AQuA & Seidoc

nemrp
Champ in-the-making
Champ in-the-making
Hola CristinaMR.

A lo primero, tienes toda la razón ¿le has encontrado alguna lógica? A lo mejor es recargando (como con los webscripts) y listo :roll: Si has dado con la clave: Cuenta!! :mrgreen:

Pues no he encontrado solución. Ya hice la prueba de refrescar los webscripts, pero nada Smiley Sad.

A lo segundo: ¿Y si lo tratas como un .csv? He realizado la siguiente prueba y me ha ido bien:
Créate el txt tal que así (por ejemplo)

Nombre;Apellidos;Poblacion
Cristina;Martin Ruiz;Sevilla

Guárdalo como un csv en vez de txt y ábrelo con el excel y ya verás por ti mismo. El salto de linea es importante porque es el que te va a definir el salto de linea dentro del excel 😃

O bien no te he entendido Smiley Surprisedops: o bien no me ha funcionado :?.

He creado un ".txt", le he pegado el texto que me pasas y lo guardo. Después le cambio la extensión a ".csv". Lo abro con el Excel y nada, hay dos filas pero están en una sóla columna (no se separan por el ";").

Ahora bien, si lo guardo como ".txt" y lo abro con el Excel me pregunta cómo quiero que se muestren los datos y entonces sí puedo elegir que se separen en columnas a partir de los ";".

Un saludo y muchas gracias CristinaMR.
Getting started

Tags


Find what you came for

We want to make your experience in Hyland Connect as valuable as possible, so we put together some helpful links.