PDA

Ver la Versión Completa : Envio de Mails desde SAP


enrifm
15/10/07, 12:17:17
Alguien puede decirme lso apsos a seguir para poder enviar un correo electronico desde SAP a una dirección de correo fuera de SAP. Sería para poderlo enviar desde un programa.

Se que hay que montar el SAPConnect, pero a partir de ahí, alguna función...

Un saludo

tgfch
15/10/07, 13:40:01
Hola, enrifm

Si hay una función es : SO_NEW_DOCUMENT_SEND_API1

por ejemplo

CALL FUNCTION 'SO_NEW_DOCUMENT_SEND_API1'
EXPORTING
DOCUMENT_DATA = DOCUMENT_DATA
DOCUMENT_TYPE = 'RAW'
PUT_IN_OUTBOX = 'X'
COMMIT_WORK = 'X'
TABLES
OBJECT_CONTENT = OBJECT_CONTENT
RECEIVERS = RECEIVERS
EXCEPTIONS
TOO_MANY_RECEIVERS = 1
DOCUMENT_NOT_SENT = 2
DOCUMENT_TYPE_NOT_EXIST = 3
OPERATION_NO_AUTHORIZATION = 4
PARAMETER_ERROR = 5
X_ERROR = 6
ENQUEUE_ERROR = 7
OTHERS = 8.

IF SY-SUBRC <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.


Donde:
DOCUMENT_DATA => OBJ_NAME va a ser igual al nombre del objeto y el OBJ_DESCR titulo del correo
OBJECT_CONTENT=> es el texto que va el el correo
RECEIVERS => las direcciones de correo.

Espero sea de ayuda, saludos.
tgfch

BY_MY
15/10/07, 14:18:06
Aunque mejor usar el "pattern" con el nombre de la llamada aqui te dejo el codigo completo.

Una vez ejecutado te vas a la transacción "scot" y ves si estan en espera para ser enviados. A partir de ahi como bien dices el problema si es que existe es de configuracion o del JOB.

*&---------------------------------------------------------------------*
*& Form SEND_MAIL
*&---------------------------------------------------------------------*
*
*
*
*&---------------------------------------------------------------------*
FORM SEND_MAIL.


CALL FUNCTION 'SO_NEW_DOCUMENT_SEND_API1'
EXPORTING
DOCUMENT_DATA = maildata
* DOCUMENT_TYPE = 'RAW'
* PUT_IN_OUTBOX = ' '
* IMPORTING
* SENT_TO_ALL =
* NEW_OBJECT_ID =
TABLES
OBJECT_HEADER = mailtxt
OBJECT_CONTENT = mailtxt
* CONTENTS_HEX =
* OBJECT_PARA =
* OBJECT_PARB =
RECEIVERS = mailrec
EXCEPTIONS
TOO_MANY_RECEIVERS = 1
DOCUMENT_NOT_SENT = 2
DOCUMENT_TYPE_NOT_EXIST = 3
OPERATION_NO_AUTHORIZATION = 4
PARAMETER_ERROR = 5
X_ERROR = 6
ENQUEUE_ERROR = 7
OTHERS = 8
.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.

ENDFORM.