12-28-2016 05:56 AM
Hola,
Estoy realizando una búsqueda a partir de 2 valores, estos valores a veces contienen espacios. Si los valores no contienen espacios me devuelve el resultado correctamente, en cambio si contiene espacios no me devuelve nada.
Ejemplo:
var numFactura = args.nFact;
var cif = args.cPro;
var qpath = "+PATH:\"app:company_home//*\"";
var qcontent = " +@\\{http\\://www.alfresco.org/model/content/1.0\\}content.mimetype:application/pdf";
var qnumFact = " +@fra\\:NumFactura:" + numFactura;
var qcifPro = " +@fra\\:CIF:" + cif;
var strq = qpath + qcontent + qnumFact + qcifPro;
var content = search.luceneSearch(strq);He probado algunas soluciones que proponen en otros post como utilizar la codificación ISO9075Encode pero sigue sin funcionar.
var queryEncoded = search.ISO9075Encode(strq);
var content = search.luceneSearch(queryEncoded);O pasar solamente los valores.
numFactura = search.ISO9075Encode(numFactura);
cif = search.ISO9075Encode(cif);Pero sigo sin recibir resultados.
¿Alguna idea de porque me esta pasando esto?
Muchas gracias.
01-11-2017 12:55 PM
magarcia_sm _ Que subsistema de búsqueda utilizas ? Lucene o SOLR ? Que versión de Alfresco utilizas ?
Saludos.
--C.
01-12-2017 02:40 AM
Como motor de búsqueda utilizo Lucene y la versión de Alfresco es la 4.2.f
01-11-2017 10:08 AM
01-11-2017 11:39 AM
Así es Cristina, si realizo la búsqueda con espacios en el buscador me devuelve correctamente el resultado.
Como solución temporal estoy realizando la búsqueda de la forma que me comentó Cesar anteriormente, creando una query formada por todas las separaciones que crean los espacios, de esta forma si obtengo el resultado deseado, pero me gustaría encontrar una solución al problema para evitar código innecesario y tan chapucero .
if (numFactura.indexOf(" ") >= 0) {
var elementos = numFactura.split(" ");
for (var i = 0; i < elementos.length; i++) {
queryNumFactura = queryNumFactura + " +@fra\\:NumFactura:*" + elementos[i] + "*";
}
} else {
queryNumFactura = " +@fra\\:NumFactura:" + numFactura;
}
01-12-2017 04:51 AM
Si te funciona en el buscador entonces el problema no es a nivel de modelo de datos. Debe ser en la codificación de Javascript o similar. ¿Podríamos hablar? Quizás por hangouts o Skype? Así te digo algunas pruebas para tratar de identificar donde viene el problema. Además yo tengo una instalación limpia de la 4.2.f así que podríamos ir viendo a la vez, dónde está el problema 😉 Mandame privado y lo vemos. Y si damos con el problema lo ponemos en el hilo para que sirva a posteriori ^^
Un saludo,
Cristina.
01-13-2017 05:30 AM
Muchas gracias por tu interés Cristina.
Intenté enviarte un privado pero necesito que me hagas following para poder enviartelo.
01-13-2017 05:37 AM
01-17-2017 04:23 PM
Te cuento las pruebas que hecho (e intento colgarte alguna captura para que lo veas)
A ver, he hecho la siguiente prueba en un Alfresco 4.2.f limpio: Con administrador he ido al sitio de pruebas que tiene Alfresco (http://localhost:8080/share/page/site/swsdp😞

He ido a la project library y he creado 3 txt con los siguientes nombres: A43 234.34, A43 234.35 y A43 234.36

Una vez creado, arriba a la derecha introduzco en la búsqueda A43 234.34 y en el resultado me devuelve 3 resultado: Primero el A43 234.34 y a continuación A43 234.35 y A43 234.36. También he lanzado A43 234.35, y A43 234.36 y siempre el primer resultado es el correcto (entiendo que le da prioridad):
Test1)

Test2)

Test3)

Es más, si pongo entre comillas el termino, sólo me devuelve 1 resultado (el correcto):

¿Puedes reproducir tal cual estas pruebas y decirme? Si aun así sigue sin funcionar o te da otros resultados entonces debe ser algo de configuración en tu Alfresco. Cuéntame los resultados y vamos viendo. Vamos a intentar acotar dónde está el problema a ver si damos con la solución 🙂
¡Un saludo!
01-18-2017 04:51 AM
Hola Cristina,
He reproducido las pruebas tal cual me comentas y el resultado es el mismo que el tuyo. (Esto desde la búsqueda avanzada de Alfresco).
Aparte de la "Búsqueda Avanzada" yo tengo mi plantilla personalizada para "Búsqueda de Facturas" ya que tengo un modelo personalizado para estas. Si intento reproducir la búsqueda anterior desde "Búsqueda de Facturas" los resultados ya no son los mismos. Si busco A43 234.34 me devuelve 3 resultados (A43 234.34, A43 234.35, A43 234.36). En cambio si lo pongo entre comillas "A43 234.34", no me devuelve ningún resultado.

¿Habrá que definir el comportamiento de la búsqueda en el custom model o algún otro archivo de configuración?
Añado también mi custom model.
<?xml version="1.0" encoding="UTF-8"?>
<!-- Custom Model -->
<!-- Note: This model is pre-configured to load at startup of the Repository. So, all custom -->
<!-- types and aspects added here will automatically be registered -->
<model name="fra:facturaModel" xmlns="http://www.alfresco.org/model/dictionary/1.0">
<!-- Optional meta-data about the model -->
<description>Custom Model</description>
<author></author>
<version>1.0</version>
<imports>
<!-- Import Alfresco Dictionary Definitions -->
<import uri="http://www.alfresco.org/model/dictionary/1.0" prefix="d"/>
<!-- Import Alfresco Content Domain Model Definitions -->
<import uri="http://www.alfresco.org/model/content/1.0" prefix="cm"/>
</imports>
<!-- Introduction of new namespaces defined by this model -->
<!-- NOTE: The following namespace custom.model should be changed to reflect your own namespace -->
<namespaces>
<namespace uri="FacturaModel.model" prefix="fra"/>
</namespaces>
<constraints>
<constraint name="fra:valoresEstado" type="LIST">
<parameter name="allowedValues">
<list>
<value>Revisar</value>
<value>Aprobada</value>
<value>Rechazada</value>
<value>Revisar_eFra</value>
</list>
</parameter>
</constraint>
</constraints>
<types>
<type name="fra:facturas">
<title>Facturas</title>
<parent>cm:content</parent>
<properties>
<property name="fra:digitalizador">
<title>Digitalizador</title>
<type>d:text</type>
<mandatory>true</mandatory>
</property>
<property name="fra:nombreEmpresa">
<title>Nombre o Razón Social</title>
<type>d:text</type>
<mandatory>true</mandatory>
</property>
<property name="fra:fecha">
<title>Fecha Factura</title>
<type>d:date</type>
<mandatory>true</mandatory>
</property>
<property name="fra:fechaOperaciones">
<title>Fecha de realización de las operaciones</title>
<type>d:date</type>
<mandatory>true</mandatory>
</property>
<property name="fra:numFactura">
<title>Número Factura</title>
<type>d:text</type>
<mandatory>true</mandatory>
</property>
<property name="fra:cif">
<title>CIF Empresa Emisora</title>
<type>d:text</type>
<mandatory>true</mandatory>
</property>
<property name="fra:base">
<title>Base Imponible</title>
<type>d:double</type>
<mandatory>true</mandatory>
</property>
<property name="fra:d1Base21">
<title>Base Imponible IVA 21%</title>
<type>d:double</type>
<mandatory>false</mandatory>
</property>
<property name="fra:d1Base12">
<title>Base Imponible IVA 12%</title>
<type>d:double</type>
<mandatory>false</mandatory>
</property>
<property name="fra:d1Base105">
<title>Base Imponible IVA 10.5%</title>
<type>d:double</type>
<mandatory>false</mandatory>
</property>
<property name="fra:d1Base10">
<title>Base Imponible IVA 10%</title>
<type>d:double</type>
<mandatory>false</mandatory>
</property>
<property name="fra:d1Base4">
<title>Base Imponible IVA 4%</title>
<type>d:double</type>
<mandatory>false</mandatory>
</property>
<property name="fra:d1Base0">
<title>Base Imponible IVA 0%</title>
<type>d:double</type>
<mandatory>false</mandatory>
</property>
<property name="fra:iva">
<title>IVA total</title>
<type>d:double</type>
<mandatory>true</mandatory>
</property>
<property name="fra:iva21">
<title>IVA 21%</title>
<type>d:double</type>
<mandatory>false</mandatory>
</property>
<property name="fra:iva12">
<title>IVA 12%</title>
<type>d:double</type>
<mandatory>false</mandatory>
</property>
<property name="fra:iva105">
<title>IVA 10.5%</title>
<type>d:double</type>
<mandatory>false</mandatory>
</property>
<property name="fra:iva10">
<title>IVA 10%</title>
<type>d:double</type>
<mandatory>false</mandatory>
</property>
<property name="fra:iva4">
<title>IVA 4%</title>
<type>d:double</type>
<mandatory>false</mandatory>
</property>
<property name="fra:reApply">
<title>Aplicar Recargo de Equivalencias</title>
<type>d:boolean</type>
<default>false</default>
</property>
<property name="fra:reImporte">
<title>Importe total del recargo</title>
<type>d:double</type>
</property>
<property name="fra:d1RE52">
<title>Recargo de Equivalencias del 5.2%</title>
<type>d:double</type>
</property>
<property name="fra:d1RE14">
<title>Recargo de Equivalencias del 1.4%</title>
<type>d:double</type>
</property>
<property name="fra:d1RE05">
<title>Recargo de Equivalencias del 0.5%</title>
<type>d:double</type>
</property>
<property name="fra:irpfApply">
<title>Aplicar IRPF</title>
<type>d:boolean</type>
<default>false</default>
</property>
<property name="fra:irpfImporte">
<title>Importe total IRPF</title>
<type>d:double</type>
</property>
<property name="fra:total">
<title>Total</title>
<type>d:double</type>
<mandatory>true</mandatory>
</property>
</properties>
</type>
</types>
<aspects>
<!-- Definition of new Content Aspect: Customer Details -->
<!-- Especifica si un documento tiene ocr o no para moverlo a Revisar o a Leer factura -->
<aspect name="fra:ocr">
<title>OCR</title>
<properties>
<property name="fra:ocrApply">
<title>Aplicar OCR</title>
<type>d:boolean</type>
<default>true</default>
</property>
<property name="fra:cifEmpresa">
<title>CIF Empresa</title>
<type>d:text</type>
</property>
<property name="fra:userName">
<title>Usuario</title>
<type>d:text</type>
</property>
</properties>
</aspect>
<!-- Aspecto para asignar al espacio donde se escanearan los documentos. Se utilizara
para el evaluator de la accion escanear -->
<aspect name="fra:scan">
<title>Escanear</title>
<properties>
<property name="fra:scanSpace">
<title>Escanear</title>
<type>d:boolean</type>
<default>true</default>
</property>
</properties>
</aspect>
<aspect name="fra:espacioAbierto">
<title>Periodo Abierto</title>
<properties>
<property name="fra:abierto">
<title>Periodo Abierto</title>
<type>d:boolean</type>
<default>true</default>
</property>
</properties>
</aspect>
<aspect name="fra:revisarDocumento">
<title>Revisar Factura</title>
<properties>
<property name="fra:revisar">
<title>Revisar Documento</title>
<type>d:boolean</type>
<default>true</default>
</property>
<property name="fra:estado">
<title>Estado</title>
<type>d:text</type>
<constraints>
<constraint ref="fra:valoresEstado"/>
</constraints>
</property>
</properties>
</aspect>
<aspect name="fra:certificado">
<title>Certificado Digital</title>
<properties>
<property name="fra:clave">
<title>Clave</title>
<type>d:text</type>
</property>
<property name="fra:cifDescarte">
<title>CIF Descarte</title>
<type>d:text</type>
</property>
<property name="fra:applyRE">
<title>Recargo de Equivalencia</title>
<type>d:boolean</type>
</property>
</properties>
</aspect>
</aspects>
</model>
01-18-2017 02:05 PM
¡Qué buena noticia! Entonces no es problema de tu Alfresco, debe ser que algo de lo que despliegas que no esté bien definido o similar 🙂 ¿Podrías pasarme todos los archivos que despliegas para echarles un vistazo y echarlo a andar en mi Alfresco? A ver si veo algo raro. Te he pasado por privi mi email.
Un saludo,
Cristina.
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.