cancel
Showing results for 
Search instead for 
Did you mean: 

Sobreescribir archivos

toti
Star Contributor
Star Contributor

Hola, tengo una regla para que cuando se acepta un documento en una determinada carpea lo mueva a otra carpeta de aceptados. El problema es que cuando entra otra vez el archivo con alguna modificación, no lo mueve porque ya existe en la carpeta destino. Qué puedo hacer para que se sobreescriba el archivo en la carpeta de destino ?? Le he activado el versionado pero no mueve el documento.

Se puede cambiar el nombre del archivo mediante una regla antes de moverlo para aƱadirle por ejemplo la fecha del dƭa ??

Muchas gracias

Saludos

12 REPLIES 12

angelborroy
Community Manager Community Manager
Community Manager

Se puede hacer, pero requiere algo de programación en JavaScript. ¿Conoces la API JavaScript de servidor de Alfresco?

https://docs.alfresco.com/5.2/concepts/API-JS-intro.html

Hyland Developer Evangelist

toti
Star Contributor
Star Contributor

Que va, de programación poco salvo PHP y menos la API de alfresco. Por eso preguntaba lo de cambiar el nombre dinÔmicamente para poder salir del paso.

joseantonionava
Star Contributor
Star Contributor

Hola toti,

si para tu proceso no es problema agregar información al nombre del fichero aceptado para que no se llame igual que el que estÔ en la carpeta aceptados podrías, por ejemplo, obtener los milisegundos de cuando se ejecuta la regla y agregarlos al nombre del fichero.

De esta forma nunca existirƔn dos documentos con el mismo nombre en la carpeta de destino y no tendrƭas el problema que indicas.

No entiendo muy bien cual es tu objetivo final y quizÔ se pueda/deba hacer otra solución, pero este javascript te valdría para, como dices, salir del paso:

var nombreDoc = document.properties.name;
var fecha = new Date();
var miliSegundos = fecha.getTime();

document.name = miliSegundos + " " + nombreDoc;
document.save();

Configura una regla en la carpeta de destino para que ejecute el script y listo.

Salu2.

Hola JosĆ© Antonio, voy  a intentar eso y ya te cuento. Muchas gracias

Hola José Antonio, otra vez, he añadido el script al diccionario de datos/scripts, he creado la regla en la carpeta para que cuando se añada un documento se ejecute el script ( poniendo el nodeRef ) , y no hace nada, ¿ hay que hace algo mÔs ?

Muchas gracias

Salu2

angelborroy
Community Manager Community Manager
Community Manager

QuizĆ” este hilo pueda ayudarte a entender lo que tienes que hacer:

https://community.alfresco.com/message/753806-re-problema-al-ejecutar-un-js-que-lanza-un-workflow-si... 

Hyland Developer Evangelist

Hola Toti,

1.- Subes el script.js a Diccionario de Datos/Scripts.

2.- Nueva regla que ejecute el script al entrar documentos.

No entiendo para que y donde usas "nodeRef". No harĆ­a falta nada mas que los puntos 1 y 2.

Salu2.

Yo dirĆ­a que solo lo quiere renombrar cuando sea aceptado en un flujo simple...

Hyland Developer Evangelist

toti
Star Contributor
Star Contributor

Hola Angel, en efecto, cuando se acepta el documento en un flujo simple lo muevo a una carpeta y lo renombro.

Estoy trabajando en intentar ejecutar un work flow completo mediante script.

Muchas gracias