Tenia un poco olvidado el blog y he decidido retomarlo con este tutorial. La idea es combinar diferentes aspectos de Alfresco, como son las acciones, dialogos, webscripts, evaluadores...
Vamos a empezar creando un webscript muy sencillo, su función será mostrarnos los documentos que tiene asociados un documento en concreto. Para ello, primero debemos definir nuestro customModel.xml:
Un webscript se puede componer de varios ficheros:Custom Model 1.0 Documento cm:content Documentos Asociados false true cm:content false true
- Documento descriptivo
- Script de control (opcional)
- Una o varias plantillas
- Documento de configuración (opcional)
- Fichero de propiedades (opcional)
En nuestro caso, crearemos tres ficheros en la ruta:
/Company Home/Data Dictionary/Web Scripts/org/alfresco/sample
1. docsAsociados.get.desc.xml (documento descriptivo):
2. docsAsociados.get.html.ftl (plantilla de salida)Documentos Asociados /sample/docsAsociados?q={searchTerm} extension user required
<html> <body> <br> <table> <tr><td colspan="2"><b><u>Documentos Asociados</u></b></td></tr> <tr></tr> <tr></tr> <tr style='background-color: #C6D8EB'> <td></td> <td align="center"><b>Nombre<b></td> </tr> <tr> <#list resultset as node> <td align="center"><img src="${url.context}${node.icon16}"/></td> <td align="center"><a href="/alfresco${node.url}" target="_blank">${node.name}</a></td> <td></td> <#if node.assocs["custom:docsAsociados"]?exists> <#list node.assocs["custom:docsAsociados"] as doc> <td><a href="/alfresco${doc.url}" target="_blank">Documento</a></td> <td></td> <td align="center">${doc.name}</td> <td></td> </#list> </#if> <tr><td colspan="6">--------------------------------------------------------------------------------------</td></tr> </#list> </tr> </table> </body> </html>
if (args.q == undefined || args.q.length == 0){ status.code = 400; status.message = "Search term has not been provided."; status.redirect = true; } else{ var node = search.findNode(args.q); var asociaciones = node.assocs["custom:docsAsociados"]; model.resultset = asociaciones; }Para información más completa y detallada acerca de los webscripts, aquí encontrareis todo lo necesario.
¡Muy buen tuto! Seguro que a más de uno le viene de arte :D
ResponderEliminarEstoy deseando ver la segunda parte ^__^