Busquedas de tipos de contenidos en Alfresco Share

Una de las características mejoradas de la ultima versión 3.4 de Alfresco es el buscador de Alfresco Share, que ha sido adaptado al sistema de formularios, pudiendo definir un formulario de búsqueda de un tipo de contenido con metadatos personalizados. De este modo, podemos hacer búsquedas por diferentes tipos de contenidos adaptados a negocio, como por ejemplo actas, incidencias o facturas:

En el archivo share-config-custom.xml tendríamos algo tal que así (habiendo definido convenientemente los esquemas de los tipos de contenido):

<config evaluator="string-compare" condition="AdvancedSearch">
   <advanced-search>
      <form>
         <form labelId="Acta" descriptionId="Busqueda de actas">ac:acta</form>
         <form labelId="Incidencia" descriptionId="Busqueda de incidencias">bug:incidencia</form>
         <form labelId="Factura" descriptionId="Busqueda de facturas">fac:facturae</form>
      </forms>
  </advanced-search>
</config>

<config evaluator="model-type" condition="ac:acta">
   <forms>
     <form>
         <field-visibility>
            <show id="cm:name" />
            <show id="cm:title" force="true" />
            <show id="ac:Lugar" />
            <show id="ac:HoraInicio" />
            <show id="ac:HoraFin" />
            <show id="ac:TipoActa" />
            <show id="ac:people" />
            <show id="ac:Participantes" />
            <show id="ac:OrdenDelDia" />
            <show id="ac:ResumenReunion" />
            <show id="ac:ResumenDecisiones" />
            <show id="ac:relacionados" />
            <show id="ac:adjuntos" />
            <show id="ac:ActaRevisada" />
         </field-visibility>
     </form>
     <form id="search">
         <field-visibility>
            <show id="cm:name" />
            <show id="cm:title" force="true" />
            <show id="ac:Lugar" />
            <show id="ac:HoraInicio" />
            <show id="ac:HoraFin" />
            <show id="ac:TipoActa" />
            <show id="ac:people" />
            <show id="ac:Participantes" />
            <show id="ac:OrdenDelDia" />
            <show id="ac:ResumenReunion" />
            <show id="ac:ResumenDecisiones" />
            <show id="ac:relacionados" />
            <show id="ac:adjuntos" />
            <show id="ac:ActaRevisada" />
         </field-visibility>
     </form>
   </forms>
</config>

Y cuya representación en la búsqueda avanzada sería de la siguiente manera segun la config de arriba, para el tipo de contenido de acta:


Una de las cosas mejorables del buscador es una posible orientación/extensión a la definición de aspectos en los formularios de búsqueda, y también, desde el punto de vista funcional, sería interesante añadir la posibilidad de hacer búsquedas por categorías o etiquetas múltiples.

Por otro lado, en Alfresco Share se puede definir un nodo raíz por debajo del cual se muestra y  se navega jerarquicamente la estructura de espacios del repositorio. Cuando ese nodo no es el de defecto (la raiz) y está ubicado en un subnivel más abajo, p. ej. en /Espacio de empresa/RepositorioConocimiento las búsquedas en sus últimas versiones Community 3.4.d y Enterprise 3.4.2 presentan unos enlaces que no son correctos. Se puede hacer un pequeño workaround modificando el script que crea los enlaces y cambiando las sentencias javascript slice(2) por slice(3) en los siguientes archivos,

$ALF_HOME/tomcat/webapps/share/components/search/search.js
$ALF_HOME/tomcat/webapps/share/components/search/search-min.js


el buscador ya es funcional.

http://wiki.alfresco.com/wiki/Share_Advanced_Search

00

More Blog Entries

0 Comments