Cambio de ftl que afecta a distintas reglas

cancel
Showing results for 
Search instead for 
Did you mean: 
mtangelmoreno
Member II

Cambio de ftl que afecta a distintas reglas

Hola, hemos cambiado un ftl que afecta a distintas reglas de envio de e-mail a un determinado usuario. ¿Como puedo hacer que todas ellas cojan el cambio del ftl?
Otra duda es que en ese cuerpo de correo necesito poner el enlace a un determinado documento pero haciendo que la url sea dinámica, esto es para que si mi aplicación cambia de servidor el enlace al documento siga siendo correcto.

Muchas gracias.
Un saludo.
1 Reply
ajv
Member II

Re: Cambio de ftl que afecta a distintas reglas

Hola mtangelmoreno,

Antes de mirarme tu caso pensaba  que los cambios de plantillas de mail, si en principio son cambios de contenido, no te daría problemas. Vamos, que se actualizaría al momento.
Pensaba que era lo mismo que cuando seleccionas una regla de contenido para ejecutar un script, que se almacena en la regla el noderef del script para saber qué script lanzar en caso de ser necesario.
De esta forma, si se modifica el script (de forma que se elimina el que había y se crea un nuevo script con el mismo nombre, contenido, etc.) las reglas no te funcionarían porque el ID de la referencia es diferente….pero si sólo se hacen modificaciones en el contenido del script, sí.

No obstante, aquí me parece que es diferente.  :cry:
He estado mirando un poco, y me parece que cuando se define una regla para realizar notificaciones, se almacena en un parámetro la plantilla. Esto puede traer problemas, como el que tienes ahora, que quieres modificar la forma de notificar algo, y no basta con modificar la plantilla del diccionario de datos.

Si esto es así (que, por lo que he visto, creo que sí), la única opción que veo es modificar directamente el esquema de base de datos de Alfresco.
Te digo lo que he hecho yo:
1.- Una select para ver las propiedades de los parámetros de las reglas de contenido, cuyo STRING_VALUE contiene algo. Esto te devolverá muchas propiedades, no sólo las que contienen el contenido de las plantillas.
select props.* from alf_node node, alf_node_properties props, alf_child_assoc asoc, alf_node node2, alf_node_properties props2
where node.id = props.node_id and
node.TYPE_QNAME = '{http://www.alfresco.org/model/action/1.0}actionparameter'
and props.QNAME = '{http://www.alfresco.org/model/action/1.0}parameterValue'
and props.STRING_VALUE IS NOT NULL
and asoc.CHILD_NODE_ID = node.ID
and asoc.TYPE_QNAME = '{http://www.alfresco.org/model/action/1.0}parameters'
and asoc.PARENT_NODE_ID = node2.ID
and node2.TYPE_QNAME = '{http://www.alfresco.org/model/action/1.0}action'
and props2.NODE_ID = node2.ID
and props2.QNAME = '{http://www.alfresco.org/model/action/1.0}definitionName'
and props2.STRING_VALUE = 'mail'
order by props.node_id
2.- Para hacer la prueba, modificaría una de las propiedades (la columna STRING_VALUE, por ejemplo, añadiendole la cadena TEST) para ver si modificando el registro, se modifica la notificación.
3.- Todavía no he sabido cómo obtener únicamente las propiedades de la plantilla de mail…reconozco que la select no es totalmente correcta, pues devuelve más resultados que los que debería…pero bueno, es un comienzo por si quieres investigar y hacer alguna prueba. En principio se detectan fácilmente las notificaciones.

En fin, espero que te resulte útil la orientación.  Smiley Very Happy
Hasta pronto!