Se encuentra en:
Gestión de Documentos con WebScript
RECU-0078 (Recurso Ejemplo)
Tabla de contenidos
- Área: Ejemplos Ampliados de Acceso a Alfresco
- Carácter del recurso: Recomendado
Descripción
Archivo OperacionesDocumento.get.desc.xml
<webscript>
<shortname>OperacionesDocumento</shortname>
<description>Operaciones que se puede realizar con un documento en Alfresco</description>
<url>/sample/OperacionesDocumento?nombre={nom}</url>
<format default="html">argument</format>
<authentication>guest</authentication>
</webscript>
Archivo OperacionesDocumento.get.html.ftl
<html>
<body>
<img src="/servicios/madeja/%24%7Burl.context%7D/images/logo/AlfrescoLogo32.png" alt="Alfresco" />
${salida}
</body>
</html>
Archivo OperacionesDocumento.get.js
Declaramos la variable salida ,que nos servirá para posteriormente tener un log con los resultado de las operaciones
model.salida="";
comprobamos que se pase correctamente el parámetro nombre
if ((args.nombre) && (args.nombre!=""))
{
var parametro_entrada = args.nombre;
}
else
{
model.salida += "Error en el paso de argumentos\n<br>";
}
Obtenemos el nodo Company Home, en el cual realizaremos la operaciones necesarias.
var folder = roothome.childByNamePath("Company Home");
model.salida=" parametro: "+parametro_entrada+"<br>";
Se comprueba que la variable folder es valida.
if (folder == undefined || !folder.isContainer)
{
status.code = 404;
status.message = "Folder " + url.extension + " not found.";
status.redirect = true;
}
else
{
Creamos un espacio de pruebas
folder.createFolder("PruebadeDocumentos");
var dir1= folder.childByNamePath("PruebadeDocumentos");
model.salida+="Creación de espacios correcta <br>";
Creamos el nuevo documento
var doc= dir1.createFile(parametro_entrada+".txt");
doc.addAspect("cm:versionable");
model.salida+="Creación del documento correcta <br>";
Insertamos informacion en el documento
doc.content="texto original\r\n";
//Hacemos el checkout al documento
var doccopy=doc.checkout();
//actualizamos el documento
doccopy.content+="actualizacion 1";
//Hacemos el checkin al documento
doc= doccopy.checkin();
Mostramos el contenido para comprobar que la edición se ha realizado correctamente
model.salida+="Mostramos el contenido del documento :<br>";
model.salida+=doc.content;
model.salida+="<br>";
Cambiamos los metadatos del documento
doc.name="nuevonombre.txt";
doc.properties.author="Jose";
doc.save();
model.salida+="se ha cambiado correctamente el nombre al documento";
Borramos el documento
if(doc.remove())
{
model.salida+="Se la eliminado correctamente el documento<br>";
}
else
{
model.salida+="Se ha producido un fallo en la eliminación del documento<br>";
}
}