añadir custom properties en search result list? Aikau

cancel
Showing results for 
Search instead for 
Did you mean: 
camachompi
Member II

añadir custom properties en search result list? Aikau

Buenas
Escribo para ver si me pueden ayudar.

Estoy queriendo modificar los resultados de las búsquedas (quiero que entre las properties predefinidas aparezcan algunas que yo he creado como: kb:Registro)

Estoy modificando AlfSearchResult.js que esta dentro de aikau-1.0.8.1.jar pero hasta ahora no e conseguido resultados dinamicos solo consigo resultasdos estaticos como mensages.

Estamos trabajando con Alfresco 5.0.d

Un compañero del foro me comento que en este enlace podia tener la solucion http://blogs.alfresco.com/wp/developer/2015/04/01/adding-views-to-filtered-search/ pero sigue sin mostrar mis "custom properties".

he leido en este enlace algo relacionado pero no explican los procesos a llevar a cabo –> https://forums.alfresco.com/forum/installation-upgrades-configuration-integration/installation-upgra...
12 Replies
cristinamr
Advanced

Re: añadir custom properties en search result list? Aikau

Buenas camachompi

Creo que la clave la tienes en el post que nos enseñas ( http://blogs.alfresco.com/wp/developer/2015/04/01/adding-views-to-filtered-search/). Primero de todo, en ese post tienes un ejemplo que puedes descargar (https://www.dropbox.com/s/yfar5v2dkklcavv/SearchView.jar?dl=0). El log de alfresco no te muestra nada? Podrías describirnos paso a paso lo que has hecho? A ver si conseguimos acotar las posibilidades y así ver dónde está el error.

Un saludo!
--
VenziaIT: helping companies since 2005! Our ECM products: AQuA & Seidoc
angelborroy
Alfresco Employee

Re: añadir custom properties en search result list? Aikau

Entiendo que lo que quieres es que en los resultados de la lista (que aparecen a la derecha de la pantalla) se incluyan propiedades de tu modelo de contenido personalizado. Para eso tienes que crear una nueva vista según las indicaciones de http://blogs.alfresco.com/wp/developer/2015/04/01/adding-views-to-filtered-search/

En el otro hilo al que haces referencia (https://forums.alfresco.com/forum/installation-upgrades-configuration-integration/installation-upgra...), se indica cómo incluir propiedades personalizadas en los filtros de facetado que aparecen a la izquierda de la pantalla.

¿Qué es lo que quieres conseguir?
Hyland Developer Evangelist
camachompi
Member II

Re: añadir custom properties en search result list? Aikau

Me gustaría conseguir mis propiedades en los resultados de las búsquedas, es decir en la vista detallada, predeterminado viene (miniatuara, nombre, titulo, Modificado hace 11 meses por …, descripcion, sitio, en carpeta, tamaño)mis propiedades nºregistro(kb:registro) y fecha de entrada (kb:FechaDeEntrada).

Ya he probado http://blogs.alfresco.com/wp/developer/2015/04/01/adding-views-to-filtered-search/ pero crea una vista igual que la que viene predefinida (vista detallada) al cambiar las vista no muestra resultados.
angelborroy
Alfresco Employee

Re: añadir custom properties en search result list? Aikau

¿Quieres decir que al cambiar a la "Table View" no muestra resultados? Seguramente no has empaquetado bien la extensión o no la has delegado en el lugar adecuado, porque a mí me ha funcionado sobre una 5.0.d bajando el JAR que indica Dave en el artículo (descargable desde Dropbox), copiándolo en alfresco/tomcat/webapps/share/WEB-INF/lib y volviendo a arrancar Alfresco.

Una vez que tengas el proyecto de extensión montado y funcionando, puedes revisar el tutorial de Aikau para la creación de vistas (https://github.com/Alfresco/Aikau/blob/master/tutorial/chapters/Tutorial6.md#step-2-create-a-list-vi...)

Suerte
Hyland Developer Evangelist
camachompi
Member II

Re: añadir custom properties en search result list? Aikau

ya he creado la nueva vista como indica el manual anterior y veo las propiedades por defecto (nombre, descripcion) he añadido lo siguiente y no muestra nada. (propertyToRender: "node.properties.kb:Registro")


he configurado mi fichero kb-model.xml donde tengo definidas las propiedades y he puesto en cada propiedad <facetable>true</facetable>
            <property name="kb:Registro">
                <title>Registro</title>
               <type>d:long</type>
                <index enabled="true">
                        <tokenised>both</tokenised>
                        <facetable>true</facetable>
                </index>
                </property>


Este seria el fichero faceted-search.get.js

vaScript to modify the JSON model for the page

var widget = widgetUtils.findObject(model.jsonModel.widgets, "id", "FCTSRCH_SEARCH_RESULTS_LIST");
if (widget && widget.config && widget.config.widgets)
{
   widget.config.widgets.push({
      name: "alfresco/documentlibrary/views/AlfDocumentListView",
      config: {
         viewSelectionConfig: {
            label: "Table View",
            iconClass: "alf-tableview-icon",
            value: "table"
         },
         widgetsForHeader: [
            {
               name: "alfresco/documentlibrary/views/layouts/HeaderCell",
               config: {
                  label: "Name"
               }
            },
            {
               name: "alfresco/documentlibrary/views/layouts/HeaderCell",
               config: {
                  label: "Description"
               }
            },
            {
               name: "alfresco/documentlibrary/views/layouts/HeaderCell",
               config: {
                  label: "Nº Registro"
               }
            }
         ],
         widgets: [
            {
               name: "alfresco/documentlibrary/views/layouts/Row",
               config: {
                  widgets: [
                     {
                        name: "alfresco/documentlibrary/views/layouts/Cell",
                        config: {
                           additionalCssClasses: "mediumpad",
                           widgets: [
                              {
                                 name: "alfresco/renderers/SearchResultPropertyLink",
                                 config: {
                                    propertyToRender: "displayName"
                                 }
                              }
                           ]
                        }
                     },
                     {
                        name: "alfresco/documentlibrary/views/layouts/Cell",
                        config: {
                           additionalCssClasses: "mediumpad",
                           widgets: [
                              {
                                 name: "alfresco/renderers/Property",
                                 config: {
                                    propertyToRender: "description"
                                 }
                              }
                           ]
                        }
                     },
                     {
                        name: "alfresco/documentlibrary/views/layouts/Cell",
                        config: {
                           additionalCssClasses: "mediumpad",
                           widgets: [
                              {
                                 name: "alfresco/renderers/Property",
                                 config: {
                                    propertyToRender: "node.properties.kb:Registro"
                                 }
                              }
                           ]
                        }
                     }               
                  ]
               }
            }
         ]
      }
   });
}
camachompi
Member II

Re: añadir custom properties en search result list? Aikau

ya me funciona "Table View" pero si modifico el archivo facetes-search.get.js para poner una propiedad mia no me deja el vació el campo de mi propiedad.

he añadido
                     {
                        name: "alfresco/documentlibrary/views/layouts/Cell",
                        config: {
                           additionalCssClasses: "mediumpad",
                           widgets: [
                              {
                                 name: "alfresco/renderers/Property",
                                 config: {
                                    propertyToRender: "node.properties.kb:Registro"
                                 }
                              }
                           ]
                        }
                     },
angelborroy
Alfresco Employee

Re: añadir custom properties en search result list? Aikau

Debería funcionar… ¿Están saliendo en los resultados documentos que tengan esa propiedad asignada con el tipo documental correspondiente al espacio de nombres "kb"?

Puedes intentar utilizar "warnIfNotAvailable: true" para identificar si está llegando o no el valor de la propiedad a Aikau.
Hyland Developer Evangelist
camachompi
Member II

Re: añadir custom properties en search result list? Aikau

He probado con "warnIfNotAvailable: true, warnIfNoteAvailableMessage: "no.title.message"" y encuentro documentos que tiene la propiedad establecida pero no la muestra en la buscada aparece el mensaje de "sin titulo"
angelborroy
Alfresco Employee

Re: añadir custom properties en search result list? Aikau

Entonces tendrás que cambiar el origen de datos, lo cual va a ser algo más complicado.

Según el artículo de Dave Draper: "Another option would be to extend the
alfresco/documentlibrary/AlfSearchList
widget to request the full data for each node before the view is rendered. This would naturally slow down the rendering of search results but would allow you to display any of the data available for that node."

Así que en vez de extender
alfresco/documentlibrary/views/AlfDocumentListView
, tendrás que empezar por "AlfSearchList". Échale un vistazo a https://blogs.alfresco.com/wp/developer/2014/09/29/aikau-mini-examples-crud-service-get/

Suerte
Hyland Developer Evangelist