AWE – Notificando

Introducción

Antes de comenzar con la configuración de las notificaciones en AWE, me permito esclarecer el significado de una notificación. Sistémicamente una notificación corresponde del verbo de notificar, que significa comunicar algo formalmente. Asimismo se lo considera en la jerga como el documento donde se constata una resolución, siendo este documento el medio por el cual se comunica la misma.

Independientemente del término que deseemos considerar y asimilar, queda claro que la finalidad es comunicar algo. Entonces si nos rememoramos a nuestros mejores años de escolares, vamos a poder identificar algunos componentes básicos en una comunicación:

//AWE – Notificando – Elementos de la Comunicación ESP

Tenemos a un Emisor que es quien desea transmitir un Mensaje hacia un Receptor por medio de un Canal, donde el Mensaje puede encontrarse o no Codificado y responde a un Contexto determinado. Entonces tenemos una entidad que envía un mensaje, y otra entidad que lo recibe. Tenemos un mensaje que es aquello que se desea comunicar, en un momento y circunstancia puntual (contexto). Finalmente el mensaje se envía por medio de un canal (e-mail, fax, teléfono, y para los más viejos: carta).

Definiendo las Notificaciones

Expuesta la introducción, notaremos que el motor de aprobaciones será el emisor siempre de un mensaje. El mensaje es la comunicación del acontecimiento de un evento dentro del circuito de aprobación, pudiéndose optar entre tres canales estándar: push, e-mail y lista de trabajo. El receptor podrá configurarse puntualmente para cada evento.

A continuación se listan los pasos para definir las notificaciones:

  • Determinar la Necesidad
  • Configuración General de Notificaciones
  • Determinación del Mensaje
  • Selección de Eventos del Proceso
  • Selección de Eventos del Circuito (Opcional)

Determinar la Necesidad

El paso inicial, paso 0, para configurar las notificaciones consta en determinar cual es la necesidad. Para definir la necesidad es importante saber que es capaz de realizar AWE de manera estándar. Entonces paso a dar una breve reseña: La notificación estará relacionada siempre a un evento de aprobación como ser aprobación, rechazo, pedido de aprobación, etc.; la misma se podrá enviar al solicitante, al aprobador, a un revisor, o a una lista de usuarios determinados; ya sea por push, correo electrónico o lista de trabajo.

No considero necesario explicar que es un correo electrónico o qué es una lista de trabajo; pero en caso de encontrarnos con algún despistado dejo a continuación una imagen creo es bastante ilustrativa al respecto.

//AWE – Notificando – Lista de Trabajo – Email ES

Ahora bien la notificación Push no corre con la misma suerte que sus anteriores. Este tipo de notificaciones es relativamente nueva en PeopleSoft. Son aquellas alertas que se muestran bajo la bandera de la cabecera de PeopleSoft como se ve en la imagen a continuación:

//AWE – Notificando – Notificación PUSH ESP

Entonces, habiendo identificados las alternativas debemos respondernos:

  1. Qué eventos van a disparar una notificación?
  2. Qué tipo de notificación requerimos? Correo Electrónico y/o Lista de Trabajo?
  3. Quién debe ser notificado?

Configuración General de Notificaciones

El primer paso es activar las notificaciones en el proceso y definir la estrategia de notificación. Esto se realiza desde el componente de Registro de Transacciones:

Finanzas: Menú Principal > Componentes de Empresa > Aprobaciones > Aprobaciones > Registro de Transacción

Recursos Humanos: Menú Principal > Definir HRMS > Definiciones Comunes > Aprobaciones > Registro de Transacción

//AWE – Notificando – Registro de Transacciones ESP

A continuación se explican los campos a completar:

  1. Activar Notificaciones: Aquí se especifica que canales de notificaciones se activan a nivel del proceso de aprobación. El valor aquí definido es que el regirá y limitará toda la configuración siguiente. Se podrá optar por activar tanto el Correo Electrónico como la Lista de Trabajo y las notificaciones Push, solo uno de ellos, o ninguno.
  2. Estrategia de Notificación: El campo hace referencia al método que se utilizará para notificar, no hace referencia al canal, sino al método. El método puede ser ‘En Línea’ que quiere decir que se notifica al momento en que se dispara un evento desde el Circuito, o bien ‘Fuera de Línea’ o por ‘Proceso Batch’. El segundo hará que todos los eventos generarán datos en una tabla temporal, y que al ejecutar el proceso estándar de Notificaciones y Escalonamiento(NEM) se enviarán todas las notificaciones pendientes. En general, salvo alguna disposición puntual de un cliente vamos a utilizar la estrategia ‘En Línea’.
  3. Existen otros dos campos que pueden resultar de interés, que son Raíz Paquete y Ruta Clase. Estos se utilizan para sobrescribir la clase estándar de notificación, en el caso en que necesitemos realizar alguna acción particular que no pueda realizarse desde el estándar. Muchos procesos estándar sobrescriben para generar mensajes más detallados.

Determinación del Mensaje

El mensaje es aquello que se desea notificar, ya sea por correo electrónico o por lista de trabajo. Consta de un texto fijo que se define, en general con la información del evento que está ocurriendo donde dinámica mente se le incorporan los datos relacionados a la transacción y solicitud.

El mensaje para el correo electrónico se define entonces desde el componente de Plantillas Genéricas

Menú Principal > PeopleTools > Workflow > Notificaciones > Plantillas Genéricas

//AWE – Notificando – Definición Plantilla Genérica ESP

A continuación se detallan los campos a completar:

  1. Plantilla: Es el identificador de la plantilla de mensaje.
  2. Descripción: Texto libre que describe la plantilla, por lo general relacionado con el Evento que dispara y el Circuito que lo está disparando.
  3. Emisor: Podemos definir quien será el emisor virtual del mensaje. Siento las opciones el usuario que dispara el evento, o bien el sistema mismo (con el correo definido en la configuración SMTP).
  4. Asunto: Campo de texto libre que identifica el asunto del mensaje. En el caso de correo electrónico va a mostrarse como el asunto del mismo.
  5. Texto Mensaje: Corresponde al texto que comprende el cuerpo del mensaje. Es donde se determina aquello que se quiere comunicar.
  6. Valor: Corresponde a las variables que se utilizarán en el asunto y cuerpo del mensaje, permitiendo de este modo que el mismo contenga información del contexto en que se encuentra el proceso de aprobación. Este valor es el que permite que exista un dinamismo en el mensaje, y pueda así ser reutilizado por cada instancia del circuito.
  7. Descripción: Es un campo de texto libre que se utiliza para informar y dar una referencia descriptiva del valor variable antes definido. Tanto el campo Valor como Descripción son meramente informativos.

Es importante entender que, el texto que se redacta en el mensaje es fijo y que las variables serán reemplazadas por los valores que retorne un objeto SQL que debemos crear. El objeto SQL recibirá como parámetros los campos de la solicitud que fueron agregados en registro de referencia cruzada (en el orden que aparezcan); y con ellos debemos obtener en columnas todos los valores que configuremos a partir del ‘%2’ en adelante (el ‘%1’ se reserva siempre para la URL del componente de aprobación que se configure en el circuito, que es generado y completado automáticamente por el Circuito de Aprobación). El objeto SQL deberá devolver una única fila como resultado. A continuación se muestra un ejemplo de objeto SQL para obtener información de un Voucher de AP:

SELECT A.BUSINESS_UNIT 
 , A.VOUCHER_ID 
 , A.INVOICE_ID 
 , %DateOut(A.INVOICE_DT) 
 , A.GROSS_AMT 
 , A.NAME1 
 , B.OPRDEFNDESC 
 , C.OPRDEFNDESC 
  FROM PS_VCHR_AF_EML_VW A LEFT OUTER JOIN PSOPRDEFN_VW B ON A.OPRID = B.OPRID LEFT OUTER JOIN PSOPRDEFN_VW C ON A.OPRID_LAST_UPDT = C.OPRID 
 WHERE A.BUSINESS_UNIT=:1 
   AND A.VOUCHER_ID=:2

Ahora bien si la notificación será enviada por el canal Push, lo que se debe hacer es configurar un Mensaje de Catálogo. El mensaje de catálogo podrá utilizar campos variables con el uso del símbolo %, y regirá la misma norma que en el texto de la plantilla genérica: los valores serán obtenidos de un objeto SQL siendo la primer columna correspondiente al valor %2. El valor %1 se encuentra reservado para la URL del componente de aprobación.

Por último, las notificaciones por lista de trabajo no requieren una configuración adicional del mensaje. Por lista de trabajo solo se informa la URL del componente aprobador para que el usuario ingrese a realizar la acción solicitada (o bien para revisar una solicitud).

Selección de Eventos del Proceso

Con el mensaje determinado, debemos configurar los eventos para los cuales requerimos notificar. Los eventos van a definir el contexto del mensaje, de acuerdo a los conceptos brindados en la introducción. Todos los eventos que configuremos a nivel del proceso, serán ejecutados para todos los circuitos que el proceso tenga definido.

Los eventos se configuran desde el componente de Configuración de Transacciones:

Finanzas: Menú Principal > Componentes de Empresa > Aprobaciones > Aprobaciones > Notif Trns Entorno Aprobación

Recursos Humanos: Menú Principal > Definir HRMS > Definiciones Comunes > Aprobaciones > Notif Trns Entorno Aprobación

//AWE – Notificando – Configuración de Transacciones ESP

A continuación se detallan los campos a completar:

1. Evento y Nivel: Corresponden al evento que va a disparar la notificación para el nivel seleccionado (recordar que la aprobación puede ser a nivel de linea o de cabecera). Los siguientes son eventos que comúnmente son utilizados para enviar las notificaciones: En Aprobación Final, En Rechazo Final, Ruta para Aprobación.
2. Nombre Menú, 3.Cpte Aprobación, 4.Nombre Página, 5.Acción Menú: Como se mencionara, la notificación se envía conjunto a una URL para acceder a información de la solicitud en cuestión (o bien para realizar una acción sobre ella). En base a esto es necesario definir el Menú, Componente, Página y Acción para el direccionamiento desde la notificación. Este componente puede ser re definido a nivel de participante de notificación, puesto que un aprobador tendrá acceso a un componente determinado y quizás un solicitante a otro.
6. ID Objeto SQL: Corresponde al objeto SQL que definirá las variables que puedan utilizar los distintos canales de notificación. Luego cada canal y participante pueden definir su propio objeto SQL (por ejemplo el correo electrónico puede utilizar un objeto SQL distinto al de la notificación Push).
7. Participante: Para el evento seleccionado en 1), define quién será el receptor de la notificación.
8. Lista Usuario: Si en el campo 7) se seleccionara Lista de Usuario, aquí se deberá definir la misma.
9. Usuario: Al seleccionar esta opción, estamos definiendo que el canal utilizado será el que esté configurado en el perfil del usuario que va a recibir la notificación (PeopleTools > Seguridad > Perfiles de Usuario > Perfiles de Usuario, solapa Workflow).
10. Correo, 11. Lista Trabajo, 12. Push: Habilita cada uno de los canales de notificación.
13. Nombre Plantilla: En caso de seleccionar 10), se deberá definir el nombre de la plantilla genérica a utilizar.
14. Prioridad: Define la prioridad del correo electrónico.
15. Serie Mensaje y 16. Número Mensaje: Definen el mensaje de catálogo que se utilizará en la notificación push.
17. ID Objeto SQL: Idem 6.
18. Excluir URL: Determina si la URL se considera como el primer parámetro variable (%1) para el mensaje de catálogo.
19. Número de Horas y 20. Notificación Máxima: Estos campos se utilizan para determinar cuantas horas deben pasar entre cada notificación, y cual es el máximo número de notificaciones que se enviarán antes de proceder a escalar la aprobación. Esta información cobra sentido cuando se configura el Notification and Escalation Manager (NEM).

Selección de Eventos del Circuito (Opcional)

Existe una posibilidad adicional para configurar notificaciones que afectan solo a un circuito determinado. De este modo se configuran notificaciones que van a sobre escribir las configuradas a nivel del proceso.

Esta configuración se lleva a cabo desde el componente de Definición de Circuito de Aprobación:

Finanzas: Menú Principal > Componentes de Empresa > Aprobaciones > Aprobaciones > Definición Proceso Aprobación

Recursos Humanos: Menú Principal > Definir HRMS > Definiciones Comunes > Aprobaciones > Definición Proceso Aprobación

//AWE – Notificando – Definición Proceso Aprobación ESP

Como se observa en la imagen anterior, la configuración es idéntica a la explicada en párrafos anteriores.

Conclusiones

Las notificaciones no se limitan a lo expresado en esta nota, sino que existe una infinidad de variantes que se pueden explorar para mejorar la experiencia del usuario. Por ejemplo se pueden configurar los correos electrónicos en codificación de HTML, modificando levemente las clases del Core de AWE.

No hay olvidar que lo importante es el mensaje, y el mensaje en este caso está relacionado directamente con el evento del circuito que lo dispara. No es necesario llenar una notificación de datos, imágenes, etc.., con el link a la información es más que suficiente.

Contenido

Compartir en facebook
Compartir en twitter
Compartir en linkedin
Carrito de compra