Ver Mensaje Individual
  #3  
Viejo 22/03/06, 15:22:00
Avatar de tracer
tracer tracer is offline
Administrator
 
Fecha de Ingreso: feb 2006
Localización: España (Madrid)
Mensajes: 503
Hola Alicia,

No te preocupes es muy fácil y solo requiere unas pocas lineas de código abap . Para enviar un formulario sapscript por email, tienes que incluir estas funciones en el programa que adjuntarán al correo tu formulario como un pdf.

*--- Define la dirección email del destinatario
LW_COMM_VALUES-ADSMTP-SMTP_ADDR =


*--- Define el Título
LW_SNAST-TDCOVTITLE = SY-TITLE


*--- Define los detalles del emisor y del destinatario
CALL FUNCTION 'CONVERT_COMM_TYPE_DATA'
EXPORTING
PI_COMM_TYPE = 'INT'
PI_COMM_VALUES = LW_COMM_VALUES
PI_REPID = SY-REPID
PI_SNAST = LW_SNAST
PI_MAIL_SENDER = SY-UNAME
IMPORTING
PE_ITCPO = GW_ITCPO
PE_MAIL_RECIPIENT = LW_RECIPIENT
PE_MAIL_SENDER = LW_SENDER
EXCEPTIONS
COMM_TYPE_NOT_SUPPORTED = 1
RECIPIENT_CREATION_FAILED = 2
SENDER_CREATION_FAILED = 3
OTHERS = 4.


Los objetos usados aquí se definen como sigue:

LW_COMM_VALUES TYPE SZADR_COMM_VALUES
LW_SENDER TYPE SWOTOBJID
LW_RECIPIENT TYPE SWOTOBJID
LW_SNAST TYPE SNAST


Esto te dará los detalles del emisor y del. Ahora todo lo que tienes que hacer es llamar a la función OPEN_FORM como sigue:

CALL FUNCTION 'OPEN_FORM'
EXPORTING
DEVICE = 'MAIL' <--- Note: Device is PRINTER for printing
DIALOG = SPACE
FORM = SAPscript form name
LANGUAGE = SY-LANGU
OPTIONS = GW_ITCPO
MAIL_SENDER = LW_SENDER
MAIL_RECIPIENT = LW_RECIPIENT
EXCEPTIONS
CANCELED = 1
DEVICE = 2
FORM = 3
OPTIONS = 4
UNCLOSED = 5
MAIL_OPTIONS = 6
ARCHIVE_ERROR = 7
INVALID_FAX_NUMBER = 8
MORE_PARAMS_NEEDED_IN_BATCH = 9
SPOOL_ERROR = 10
CODEPAGE = 11
OTHERS = 12.



Varios comentarios:

- Recuerda poner el COMMIT WORK después de la llamada al CLOSE_FORM.

- Comprueba con tu equipo de BASIS que tiene corriendo el proceso de envió a email externos cada 5 minutos que llama al programa RSCONN01.

- Si envías correos a direcciones de Hotmail o Yahoo, debes poner alguna dirección de e-mail host en la transaccion SCOT, de lo contrario sus servidores lo rechazarán o lo consideraran como correo no deseado o malicioso. DE echo si chequeas el log de SCOT --> Utilities --> Overview of send orders --> Trace --> Choose tendrás una entrada que reza: "error 550 relaying is prohibited."

Pregunta a tu exchange administrator para permitir que SAP server IP address confie en tu exchange server y podras enviar correos a cualquier dirección de email.

Espero que te sea útil ya nos contaras.
Un saludo, vista, suerte y al toro
__________________
Si precisas una mano, recuerda que yo tengo dos.