Si bien es posible enviar notificaciones de manera natural a roles creados en el directorio de Workflow, los cuales se generan a partir de datos de la aplicación como son usuarios, parties, empleados, etc., puede haber ocasiones en que será necesario enviarlas a un correo que no esté directamente relacionado a un rol y por consistencia de información no sea factible crear un dato "dummy".
Puesto que en la notificación, el valor para el Performer es obligatoriamente el nombre de un rol, tampoco podemos poner directamente el correo, por lo que nos vemos en la necesidad de buscar una alternativa para genera un rol y que este no cree información en el sistema que pueda causar confusión en cuanto a su utilización.
La opción utilizada es recurrir a las APIs de workflow, en particular las del manejo del directorio (WF_DIRECTORY), para crear un rol Ad-Hoc que pueda ser utilizado como performer. El código es simple:
wf_directory.CreateAdHocRole(
role_name => 'CODIGO_ROL'
, role_display_name => 'Descripcion Rol'
, email_address => 'correo@dominio.mx'
, language => 'AMERICAN'
, territory => 'AMERICA'
, parent_orig_system =>'WF_LOCAL_ROLES'
, parent_orig_system_id =>'10001');
Con esto, el rol se crea en la base de datos y está disponible para ser utilizado como performer de una notificación.
Cabe resaltar que esto es cuando el correo es necesario para el destinatario principal de la notificación. Para casos en los que sólo se requiere enterar a correos adicionales en el CC o BCC, es posible utilizar atributos del mensaje a utilizar, #WFM_CC y #WFM_CC, donde es permitido utilizar direcciones de correo directamente, sin necesidad de especificar el rol.
0 comments:
Post a Comment
No spam