Sobreescribir archivos

cancel
Showing results for 
Search instead for 
Did you mean: 
toti
Established Member

Sobreescribir archivos

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
angelborroy
Alfresco Employee

Re: Sobreescribir archivos

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
Established Member

Re: Sobreescribir archivos

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
Established Member

Re: Sobreescribir archivos

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.

toti
Established Member

Re: Sobreescribir archivos

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

toti
Established Member

Re: Sobreescribir archivos

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
Alfresco Employee

Re: Sobreescribir archivos

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
joseantonionava
Established Member

Re: Sobreescribir archivos

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.

angelborroy
Alfresco Employee

Re: Sobreescribir archivos

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

Hyland Developer Evangelist
toti
Established Member

Re: Sobreescribir archivos

Hola José Antonio, a mí no me sale el combo para elegir el script así que tengo que poner la dirección que pone en las propiedades del script

Ya está solucionado, ponía la url entera y sólo había que poner una parte de ella.

Muchas gracias