cancel
Showing results for 
Search instead for 
Did you mean: 

buscar carpeta y mover documento

giorgio
Champ in-the-making
Champ in-the-making
Buenas, tengo un script el cual ejecuto al modificar cierta propiedad de un documento, y lo que hace es mover el documento a la carpeta destino que viene
dada por la propiedad que modifico, para moverlo utilizo la siguiente linea de codigo

var carpetaDestino=companyhome.childByNamePath(destino);
document.move(carpetaDestino);

Pero me encuentro con el problema de que si estoy dentro de un espacio que no esta en el raiz, es decir  en el compani home,
el destino no lo encuentra, porque con esta linea solamente busca el destino dentro de companyhome, pero el destino puede estar por encima o por debajo
del espacio en el que estoy, como podria hacer para poder mover el archivo arriba o abajo?, alguna manera de buscar el destino por todos los espacios?

Un saludo.
14 REPLIES 14

venzia
Star Collaborator
Star Collaborator
Hola Giorgio, prueba lo siguiente :
search.luceneSearch("PATH:\"/app:company_home//*\" +TYPE:\"cm:folder\" +@cm\:name:\"SAI\"");‍
Las comillas deben ir con su caracter escape \".
Si no me equivoco debe funcionar.
Saludos,

giorgio
Champ in-the-making
Champ in-the-making
esta consulta no funciona en el explorador de nodos, voy quitandole comillas y tal, hasta que me funciona, y como resultado me da la misma consulta que he puesto antes, esa si que funciona, pero si la pongo en el script que ejecuto con la regla, ahi es cuando se queja.

search.luceneSearch("PATH:\"/app:company_home//*\" +"TYPE:cm:folder" +"@cm\:nameSmiley FrustratedAI");

Un saludo y gracias.

venzia
Star Collaborator
Star Collaborator
La has probado tal cual en el script?.
El explorador de nodos requiere una sintaxis algo diferente a las clases java o ficheros js (por ejemplo no necesita el caracter escape para las comillas).
Saludos,

giorgio
Champ in-the-making
Champ in-the-making
Gracias, innovasoft, pero sigue sin funcionar, y suelta el mismo error.
Esta vez lo puse asi:
search.luceneSearch("PATH:"/app:company_home//*" +"TYPE:cm:folder" +"@cm\:nameSmiley FrustratedAI");

Saludos

venzia
Star Collaborator
Star Collaborator
Según mi experiencia en búsquedas a través de scripts tienes 3 errores :
search.luceneSearch("PATH:"/app:company_home//*" +"TYPE:cm:folder" +"@cm\:nameSmiley FrustratedAI");
1-+"TYPE:cm:folder" -> Las comillas las debes usar para delimitar el término (tipo cadena) a buscar en la la propiedad TYPE .. es decir .. quedaría así : +TYPE:"cm:folder"
  -En java/js surgen problemas con caracteres especiales para barras(/), comillas simples y dobles (' "), etc .. para ello se utiliza el caracter escape / .. con lo que .. según tengo entendido (y probado) quedaría finalmente así : +TYPE:\"cm:folder\" (para "escapar" las comillas del tipo)
2-+"@cm\:nameSmiley FrustratedAI" -> igual que para el TYPE, es decir, si buscamos el término SAI en la propiedad NAME quedaría de esta forma : +@cm\:name:\"SAI\"
3-Al final falta cerrar las dobles comillas del parámetro Query de la función luceneSearch.
Por eso mi sugerencia inicial (q conste que no la he probado) es :
search.luceneSearch("PATH:\"/app:company_home//*\" +TYPE:\"cm:folder\" +@cm\:name:\"SAI\"");‍
Puestos a probar, si es que te da error la búsqueda que te digo al ejecutar el script, te dejo otra sugerencia :
search.luceneSearch("PATH:\"/app:company_home//*\" +TYPE:cm:folder +@cm\:name:SAI");‍
ya que el uso de comillas en tipos cadena es para búsqueda de terminos exactos, por lo que por aproximación también debería hacerlo bien.
Saludos y espero que te sirva.