Ordenar documentos por ruta

cancel
Showing results for 
Search instead for 
Did you mean: 
witho
Active Member

Ordenar documentos por ruta

Hola,

Estoy modificando los ftls de Alfresco para conseguir ordenar los documentos según mis necesidades. El caso es que no encuentro una manera de poder ordenar los documentos por ruta, es decir, por espacios o carpetas. He buscado alguna propiedad de los documentos (content) del tipo "path" o "url" pero no he tenido suerte.

¿Alguien sabe como podría conseguir una ordenación por ruta /carpeta / espacio?

Muchas garcias.
3 Replies
pjcaracuel_2349
Active Member II

Re: Ordenar documentos por ruta

Buenas,

Has probado la propiedad??
document.displayPath

Saludos
witho
Active Member

Re: Ordenar documentos por ruta

Hola,

Gracias por tu respuesta, pero el problema es que estoy modificando el ftl del doclist y aquí se ordenan los nodos al listarse:

<#assign weekms=1000*60*60*24*7>
<#assign count=0>
<#– get the filter mode from the passed in args –>
<#– filters: 0=all, 1=word, 2=html, 3=pdf, 4=recent –>
<#if args.f?exists && args.f?length!=0><#assign filter=args.f?number><#else><#assign filter=0></#if>
<#if args.h?exists>
   <#assign docs=companyhome.nodeByReference[args.h].children?sort_by('name')>
<#else>
   <#assign docs=companyhome.childrenByLuceneSearch[args.q]?sort_by('name')>
</#if>
<#list docs as d>
   <#if d.isDocument>
      <#if (filter=0) ||
           (filter=1 && d.mimetype="application/msword") ||
           (filter=2 && d.mimetype="text/html") ||
           (filter=3 && d.mimetype="application/pdf") ||
           (filter=4 && (dateCompare(d.properties["cm:modified"],date,weekms) == 1 || dateCompare(d.properties["cm:created"], date, weekms) == 1))>
      <#assign count=count+1>

Los nodos se listan y se ordenan con ?sort_by('name').

En este punto no puedo acceder al metodo document.displayPath ya que no es una propiedad del docuemnto en sí, como puede ser "cm:modified". ¿De que manera podría utilizarlo aquí? ¿O podría utilizar el metodo displayPath de alguna otra manera para ordenar los dicumentos?

Muchas gracias por tu tiempo.

Saludos.
witho
Active Member

Re: Ordenar documentos por ruta

Finalmente he solucionado el problema simplemente ordenando por la propiedad displayPath que me comentaste. Listando los docs con  ?sort_by('displayPath ') en lugar de con ?sort_by('name'). Muchas gracias!!!

<#assign weekms=1000*60*60*24*7>
<#assign count=0>
<#– get the filter mode from the passed in args –>
<#– filters: 0=all, 1=word, 2=html, 3=pdf, 4=recent –>
<#if args.f?exists && args.f?length!=0><#assign filter=args.f?number><#else><#assign filter=0></#if>
<#if args.h?exists>
   <#assign docs=companyhome.nodeByReference[args.h].children?sort_by('displayPath ')>
<#else>
   <#assign docs=companyhome.childrenByLuceneSearch[args.q]?sort_by('displayPath ')>
</#if>
<#list docs as d>
   <#if d.isDocument>
      <#if (filter=0) ||
           (filter=1 && d.mimetype="application/msword") ||
           (filter=2 && d.mimetype="text/html") ||
           (filter=3 && d.mimetype="application/pdf") ||
           (filter=4 && (dateCompare(d.properties["cm:modified"],date,weekms) == 1 || dateCompare(d.properties["cm:created"], date, weekms) == 1))>
      <#assign count=count+1>