/system/mail

www.altova.com Imprimir este apartado Subir un nivel

Inicio > 

/system/mail

El contenedor system/mail ofrece la función send, que sirve para enviar correos electrónicos.

 

Nota: antes de usar esta función debe comprobar si las opciones del servidor de correo electrónico están configuradas correctamente (véase Definir parámetros de correo electrónico).

 

builtin_function send

Objetivo

Enviar un correo electrónico al destinatario indicado, que suele ser el administrador.

 

Esta función devuelve TRUE si la ejecución finaliza correctamente. Si hay un error de ejecución, el resultado dependerá del valor del parámetro Anular en caso de error:

 

Si el parámetro Anular en caso de error es TRUE (predeterminado), la ejecución del trabajo se anula. Cuando esto ocurra, podrá seguir controlando errores por medio de bloques protegidos (véase Control de errores).
Si el parámetro Anular en caso de error es FALSE, la función devuelve FALSE.

Parámetros

De

Dirección de correo electrónico desde la que se envía el correo, por ejemplo: flowforce@<hostname>.

Para

Dirección de correo electrónico del destinatario.

Asunto

Texto del asunto del mensaje.

Cuerpo del mensaje

Texto del cuerpo del mensaje en forma de cadena de texto. Admite caracteres ASCII y Unicode-

Adjunto

Nombre del archivo adjunto que se debe enviar en el correo electrónico.

Anular en caso de error

Este parámetro binario determina el valor que se debe devolver si falla el trabajo. Si este parámetro es FALSE, la función devolverá FALSE también. Si este parámetro es TRUE, la ejecución del trabajo se anulará. El valor predeterminado es TRUE.

 

builtin_function send-mime

Objetivo

Envía correos electrónicos al destinatario especificado, que por lo general es el administrador.

 

Esta función devuelve TRUE si la ejecución finaliza correctamente. Si hay un error de ejecución, el resultado dependerá del valor del parámetro Anular en caso de error:

 

Si el parámetro Anular en caso de error es TRUE (predeterminado), la ejecución del trabajo se anula. Cuando esto ocurra, podrá seguir controlando errores por medio de bloques protegidos (véase Control de errores).
Si el parámetro Anular en caso de error es FALSE, la función devuelve FALSE.

 

Al contrario que la función send, el parámetro Cuerpo del mensaje de esta función espera una expresión que produzca una secuencia, no una cadena de texto. Esto permite obtener el cuerpo del mensaje (por ejemplo como HTML) de una secuencia.

 

Para obtener el contenido HTML del cuerpo del mensaje es recomendable llamar a una transformación de datos de StyleVision Server que produzca un resultado HTML como MIME. FlowForceServer no recoge imágenes, hojas de estilos ni otros recursos similares referenciados por archivos HTML en una secuencia MIME autónoma.

 

Para producir un cuerpo de mensaje autónomo en HTML con StyleVision Server, sigas estos pasos:

 

1.Diseñe el cuerpo HTML del correo electrónico en Altova StyleVision. El diseño puede contener imágenes y hojas de estilos locales.
2.Implemente la transformación de datos de StyleVision en FlowForce Server. En FlowForce esa transformación se convierte en una función integrada que StyleVision Server puede ejecutar.
3.Cree un trabajo que llame a la transformación de datos de StyleVision antes mencionada y asegúrese de que selecciona la opción GenerateHtmlOutputAsMime en la página de configuración del trabajo.
4.En esa página puede llamar a las funciones de expresión de FlowForce para recoger la secuencia MIME generada y pasársela al parámetro "Mensaje" de la función send-mime (véase más abajo el "Ejemplo 1").

 

Si el HTML hace referencia a recursos externos que no se puedan incrustar en la secuencia MIME, estos se añadirán al mensaje como adjuntos.

 

Más abajo puede consultar un trabajo de ejemplo que produce un resultado HTML en forma de secuencia MIME. Para ver un ejemplo explicado paso a paso sobre cómo implementar una transformación de datos de StyleVision Server en FlowForce Server, consulte el apartado Crear un trabajo a partir de una transformación de StyleVision. Para más información sobre la integración de StyleVision Server, consulte el apartado Integración con MapForce Server y StyleVision Server.

 

Para crear la secuencia del cuerpo del mensaje directamente en FlowForce puede llamar a funciones de expresión como stream-open o stream-from-string. También puede usar Funciones de expresión MIME para personalizar el correo electrónico o los encabezados de mensaje del adjunto.

 

Para evitar que el correo electrónico acabe en la carpeta de correo no deseado del destinatario debe construir los encabezados MIME de forma que los admita el servidor o programa que los recibe.

Parámetros

De

Dirección de correo electrónico desde la que se envía el mensaje, por ejemplo: flowforce@<hostname>.

Para

Dirección de correo electrónico del destinatario.

Asunto

Línea del asunto del mensaje.

Mensaje

Cuerpo del mensaje como expresión de FlowForce que devuelve un tipo secuencia.

Adjunto

Adjuntos que se envían con el correo electrónico. Cada archivo adjunto debe ser una expresión de FlowForce que produce una secuencia. Llame a las funciones de secuencia para crear secuencias a partir de cadenas o archivos. Llame a las Funciones de expresión MIME para añadir, modificar o eliminar encabezados MIME.

Cancelar si da error

Este parámetro binario determina el valor que se debe devolver si falla el trabajo. Si este parámetro es FALSE, la función devolverá FALSE también. Si este parámetro es TRUE, la ejecución del trabajo se anulará. El valor predeterminado es TRUE.

Ejemplo 1

El trabajo del ejemplo siguiente invoca la función send-mime para enviar un correo electrónico en formato HTML.

 

El primer paso de la ejecución genera un resultado HTML llamando a una transformación de datos de StyleVision Server. Esta transformación se ha diseñado con StyleVision y después se ha implementado en FlowForce Server, como se explica en Crear un trabajo a partir de una transformación de StyleVision. Observe que la casilla GenerateHtmlOutputAsMime está seleccionada y que el resultado del primer paso de la ejecución se llama "output" (necesitaremos esta cadena en un paso posterior y podemos hacer referencia a ella tan solo con teclear "output" en una expresión).

 

El segundo paso llama a la función compute para calcular una expresión de FlowForce. Más concretamente, la expresión nth (results(output), 0) recoge la secuencia MIME con índice 0 (en este caso OutHtml) del resultado generado en el paso anterior.

 

Por último, el tercer paso envía el mensaje como tal. El campo "Mensaje" también contiene una expresión de FlowForce, que en este caso es el resultado calculado en el paso 2.

 

fs_send_mime_example1

Ejemplo 2

El ejemplo siguiente invoca la función send-mime para enviar un correo electrónico en formato HTML que también contiene una imagen adjunta en formato .jpg.

 

El primer paso prepara el cuerpo del mensaje. Para simplificar, en este ejemplo hemos tecleado el código HTML directamente en el campo de texto. Sin embargo, recomendamos obtener el resultado HTML mediante una transformación de datos de StyleVision, como hemos explicado en el ejemplo anterior.
 

El campo "Mensaje" contiene una expresión de FlowForce. La expresión convierte el resultado del primer paso (de tipo cadena) en una secuencia, que es por lo que se llama a la función stream-from-string. El cifrado y el tipo MIME deseado se pasan a la función como argumentos.

 

La imagen adjunta se toma de una ruta local: C:\sample.png. El campo "Adjunto" contiene la siguiente expresión:

 

add-mime-header(stream-open('C:\sample.png', 'image/png'), 'Content-Disposition', 'attachment; filename=''sample.png')

 

La expresión anterior hace lo siguiente:

 

La función stream-open abre la imagen como una secuencia.
La función add-mime-header añade el encabezado "Content-Disposition" a la secuencia. De este modo la imagen adjunta tendrá el nombre que queramos ("sample.png").

 

 

fs_send_mime_example


© 2019 Altova GmbH