11-10-2009 06:10 AM
var documento = document.name;
var nombre = documento.substr(0,5);
//NUEVA FORMA DE BUSCAR
var Folder = search.luceneSearch("+PATH:\"app:company_home/*\" +TYPE:\"cm:folder\" +@cm\\:name:\"000053Ramírez\"");
var pendientes = space.childByNamePath("pendientes");
if (Folder != null && Folder.hasPermission("CreateChildren"))
{
var copy = document.move(Folder);
if (copy != null)
{
document.name = documento;
document.save();
}
}
else
{
var copy = document.move(pendientes);
if (copy != null)
{
document.name = documento;
document.save();
}
}
Ocurrió un error del sistema durante la operación: Failed to execute script 'workspace://SpacesStore/7465b384-cd60-11de-a65d-43cb83d5086a':
Failed to execute script 'workspace://SpacesStore/7465b384-cd60-11de-a65d-43cb83d5086a': TypeError: Cannot find function hasPermission. (AlfrescoScript#7)
11-17-2009 12:18 PM
11-17-2009 12:40 PM
11-18-2009 05:35 AM
if (carpetacliente!= null)
A mi me costó, porque no soy programador, pero aplicando la lógica del script al final me di cuenta que por aquí pasaba todo, y devolvía cualquier resultado (no se exactamente cuál), lo que hacía que el resto del script fuera mal interpretado. Como la búsqueda me devuelve una matriz de nodos, la comparación parece ser que siempre era algún tipo de valor. Así que sustituí dicha línea por el valor que en las siguientes líneas se empleaba, es decir "carpetacliente[0], y "voilá", salió andando. Así que esa línea queda del siguiente modo:if (carpetacliente[0]!= null)
También cambié la ruta de la carpeta clientes, aunque dentro de User Homes, también funciona.var documento = document.name;
var codigo = documento.substr(0,6);
var nombre = "Cliente "+codigo;
var pendientes = space.childByNamePath("pendientes");
var carpetacliente = search.luceneSearch("+PATH:\"/app:company_home/cm:Clientes//*\" AND TYPE:\"cm:folder\" AND @cm\\:description:\""+nombre+"\"");
if (carpetacliente[0]!= null)
{
if(carpetacliente[0].hasPermission("CreateChildren"))
{
var copy = document.move(carpetacliente[0]);
if (copy != null)
{
document.name = documento;
document.save();
}
}
}
else
{
var copy = document.move(pendientes);
if (copy != null)
{
document.name = documento;
document.save();
}
}
Por supuesto, este código no es perfecto y menos teniendo en cuenta de donde proviene (no soy programador), y es muy mejorable, por lo que agradecezco cualquier sugerencia.11-18-2009 06:07 AM
var documento = document.name;
var codigo = documento.substr(0,6);
var nombre = "Cliente "+codigo;
var pendientes = space.childByNamePath("pendientes");
var carpetacliente = search.luceneSearch("+PATH:\"/app:company_home/cm:Clientes//*\" AND TYPE:\"cm:folder\" AND @cm\\:description:\""+nombre+"\"");
if (carpetacliente!= null)
{
if (carpetacliente[0]!= null)
{
if(carpetacliente[0].hasPermission("CreateChildren"))
{
var copy = document.move(carpetacliente[0]);
if (copy != null)
{
document.name = documento;
document.save();
}
}
}
else
{
var copy = document.move(pendientes);
if (copy != null)
{
document.name = documento;
document.save();
}
}
}
else
{
var copy = document.move(pendientes);
if (copy != null)
{
document.name = documento;
document.save();
}
}
(puede que se me haya escapado meter alguna llave { .. } )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.