Sei sulla pagina 1di 6

Configuracin del envio de correo electrnico desde Sap.

Hoy vamos a hablar de un tema antiguo y que aparece mucho en los foros, aunque,
como casi siempre, con poca documentacin en castellano. Me refiero a la
configuracin para permitir enviar correo electrnico desde un sistema Sap al
exterior.

Desde la version 6.10 y superiores, el kernel de Sap contiene de forma nativa funciones
para el procesamiento del correo via SMTP (incluidas en el ICM Internet Connection
Manager). Vamos a ver la forma de preparar para que el sistema envie correo al exterior
y algunos ejemplos de programacin para generar estos envios desde nuestros propios
desarrollos.

Nota: hemos de tener un servidor de correo interno (propio) o externo que permita el
reenvio SMTP.

Configuracin del Sistema.


En la nota 455140 del OSS se detallan paso por paso las tareas de configuracin del
sistema.

Ejemplo de envio de correo desde cualquier transaccin:

1. Parametros del perfil de la instancia: a travs de la transaccin RZ10, incluiremos


con el parmetro icm/server_port_X (donde X es un nmero secuencial para los
diferentes puertos que configuremos: http, https, smtp, etc) el nmero de puerto TCP/IP
(25 por defecto) y el protocolo (SMTP).

2. Activacin de servicios: a travs de la transaccin SICF,


comprobaremos que tenemos nuestro nodo SMTP configurado y activado.
Aqu se relaciona el servicio con el puerto del ICM que hemos configurado en
el paso anterior.

3. Configuracin del Sap Connect: a travs de este paso conectamos el


nivel de aplicacin (por ejemplo Sap Office) con el nivel ICM (nivel tcnico).
La gestin de esta configuracin se realiza desde la transaccin SCOT.
Hay que realizar la configuracin en cada mandante. Siempre se crea de
forma automtica un nodo SMTP, que tendremos que ajustar para indicarle
los parametros del servidor de correo saliente que utilizaremos para enviar
los correos desde la pasarela Sap.

Haciendo donde clic en el nodo SMTP configuraremos la IP y el puerto del


servidor de correo saliente, si hay que realizar alguna conversin de codigos
de pagina (juegos de caracteres) y los tipos de direccin soportados (en este
caso Internet).

A nivel de detalle, configuraremos los dominios a los que se pueden enviar correos (*
sera a todos), y los formatos de envio de los documentos enviados de Sap (al enviar
formulario o listados por correo, aqu indicamos en que formato se construiran los
anexos que los contengan: pdf, txt, htm, etc).

La transaccin SCOT tambin nos permite monitorizar los correos que estan en cola e
iniciar los procesos de envio (y planificar el Job de envio automatico de correos, que
se ejecutara con la regularidad deseada para que los correos vayan saliendo de la cola
interna a la cola del servidor de correo).

4. Monitorizacin del envio de correos externos: con la transaccin SOST podemos


gestionar los correos que tenemos en cola para envio externo: ver correos pendientes y
enviados, visualizar los mensajes, analizar errores, etc.
5. Asignacin de cuentas de correo a los usuarios del sistema: estas cuentas sern las
utilidas con remitentes de los correos que salgan al exterior. Desde la transaccin SU01,
habra que indicar en todos los usuarios que vayan a enviar correo su cuenta, que sea
utiliza como remitente de los correos que se envien.

Envio de correo desde las aplicaciones.


Una vez realizada toda la configuracin, ya podremos enviar correos de la forma
habitual:

Sap Office: desde la transaccin SBWP podremos crear nuestros mensajes, que
podrn incluir usuarios Sap (que recibiran los mensajes en el propio Sap a travs
de la misma transaccin) o bien a destinatarios externos (indicado su cuenta de
correo electrnico).
Aplicaciones: en todos los informes donde tengamos disponible la opcin de
men Lista > Enviar, podremos crear un mensaje en el cual se anexara como
documento el listado o tabla ALV que estemos procesando.

Envio de correo desde nuestros desarrollos.


Tenemos multitud de formas de poder enviar correos en nuestros programas. En la Wiki
del SDN de Sap hay una completa lista.

Templates de ejemplo proporcionados por Sap:

SAP provides the following programs, which are in fact templates


because they can't be executed as is (email is hardcoded for example):
BCS_EXAMPLE_1: send a simple text provided as an internal table
of text lines to joe.doe@crazy-company.com
BCS_EXAMPLE_2: send a simple text provided as an internal table
of text lines and text attachment in form of text lines itab to
fax DE 09999-123456
BCS_EXAMPLE_3: send a simple text provided in an internal table
of text lines and an additional note to SY-UNAME
BCS_EXAMPLE_4: send a simple text provided in an internal table
of text lines recipients are selected in dialogue (default
joe.doe@crazy-company.com)
BCS_EXAMPLE_5: a simple text provided in an internal table of
text lines and an attached MS word document provided in internal
table SOLIX_TAB (document retrieval has to be coded) to
joe.doe@crazy-company.com
BCS_EXAMPLE_6: enter customer, carrier (flight demo data) and
email, and generate corresponding FP_TEST_03 adobe form, and
send it as attachment to the email
SENDLIST_BCS: provided as attachment in SAP Note 190669 -
Sending lists using SAPconnect, it uses SO_DOCUMENT_SEND_API1
SENDLIST_BCS: provided as attachment in SAP Note 190669 -
Sending lists using SAPconnect, it uses CL_BCS
ZSSO_DOCUMENT_SEND_API1_46 and ZSSO_DOCUMENT_SEND_API1_610:
provided as attachment in SAP Note 609696 - SAPoffice: Error in
documentation (SO_DOCUMENT_SEND_API1). There are 2 versions, one
for 4.6C, and one for 6.10 and above, the difference between the
2 is only the addition of COMMIT_WORK parameter for 6.10
version. Both call SO_DOCUMENT_SEND_API1.
RSWNSENDMAIL1: demo of SO_NEW_DOCUMENT_ATT_SEND_API1.

Ejemplos de programas del SDN, utilizando los siguientes elementos:

CL_BCS
SO_DOCUMENT_SEND_API1

SO_NEW_DOCUMENT_ATT_SEND_API1

SO_NEW_DOCUMENT_SEND_API1

Basicamente, tenemos programas que utilizan los mdulos de funcin (SO), que estn
obsoletos (aunque se pueden utilizar) y aquellos que utilizan la programacin orientada
a objetos (con la clase CL_BCS). Os recomiendo acceder a los links si quereis
profundizar en los temas y analizar los ejemplos de desarrollo.

Referencias:
Postalmethods.com: configuracin del envio de correo saliente desde
Sap.
Thomas Jung: envio de correo desde Abap en version 6.10 y
superiores.

Thomas Jung: envio de correo desde Abap en versiones 4.6D e


inferiores.

Thomas Jung: recepcion de correo en Sap y su procesamiento en


Abap.

Dataxstream.com: configuracin de Sap connect.

Snippets: envio de correo desde Abap usando programacion orientada


a objetos.

Wiki SDN: resumen de elementos Abap para envio de correo


electronico (modulos de funcin).

Potrebbero piacerti anche