cancel
Showing results for 
Search instead for 
Did you mean: 

Buscar un documento por propiedades con JavaScript

magarcia_sm
Star Contributor
Star Contributor
Hola

Estoy empezando a estudiar la API de javascript de Alfresco. Actualmente tenemos la version CE 3.0. Quisiera poder buscar un documento en un path "definido" y buscar documentos de un "tipo" y por el valor de una de sus propiedades.

Si encuentro esos documentos quisiera poder moverlos también a un espacio específico.

¿Podrían indicarme donde encontrar estos ejemplos?

El código que estoy creando es este


 
  var nombre = document.name;
  var codigo = nombre.replace("Ax_","");
  var codigo_final = codigo.replace(".pdf","");
  document.properties["ax:numeroAnexo"] = codigo_final;
  var SpaceFinal = companyhome.childByNamePath("Final");
  var SpacePendiente = companyhome.childByNamePath("Pendientes");
     
  var doc_contrato = encontrarContrato(codigo_final);
 
  if (!(doc_contrato==null))
 
  {
     doc_contrato.properties["co:estado"] = "Firmado";
     doc_contrato.properties["co:fechaContrato"]=getToday();
    doc_contrato.move(SpaceFinal);
     document.move(SpaceFinal);
    
  }
else
{
     document.move(SpacePendiente);
}   
 
 
 
  function encontrarContrato (codigo_contrato)
  {
     
   
   var query ="co:numeroContrato:*"+codigo_contrato+"*";
   var store ="workspace://SpacesStore//Company Home/Pendientes";
   var results = search.luceneSearch (store,query);
    
   if (!(results == null))
     {
       
        return results[0];
     }
   else return null;
  }
 
function getToday()
{
   var today = new Date();
    var dd = today.getDate();
    var mm = today.getMonth()+1; //January is 0!

    var yyyy = today.getFullYear();
    if(dd<10){
        dd='0'+dd;
    }
    if(mm<10){
        mm='0'+mm;
    }
    var today = dd+'/'+mm+'/'+yyyy;
   
   return today;
   
}    
    


Aquí para indicarle el Nodo Espacio de destino, estoy diciendole a Alfresco que busque los espacios con los nombres que necesito, pero necesitaría poder decirles algo como

nodoDestino = Nodo ("workspace://SpacesStore"/Company Home/Final");

La búsqueda tampoco me devuelve nada, aunque las variables (que no sean el path) tienen los valores de las propiedades correctas

Algún enlace que indique a modo de ejemplo cómo hacer esto??

Gracias!!
2 REPLIES 2

cristinamr
World-Class Innovator
World-Class Innovator
Buenas mgarcia.

Es que no lo estás montando bien, una cosa es el Store donde alfresco guarda los nodos (workspace, archive, etc…) y otra la ruta de la carpeta donde tú los almacenas (debajo del company home, por ejemplo). El Store es como si fueran "cajas de almacenamiento" para Alfresco. Hace un tiempo escribí este tutorial para empezar con javascript, échale un vistazo a los 4 capitulos (el 3 es el más importante, además tienes varios ejemplos) y me cuentas ^_^

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

Gracias Cristina, el tutorial está muy claro y me ha sido de gran utilidad!