martes, 22 de septiembre de 2009

Abap enviar mail mediante outlook

report enviamail.


parameters:
correo(50) type c,
adjunto LIKE RLGRAP-FILENAME.


AT SELECTION-SCREEN ON VALUE-REQUEST FOR adjunto.
CALL FUNCTION 'KD_GET_FILENAME_ON_F4'
EXPORTING
STATIC = 'X'
MASK = ''
CHANGING
FILE_NAME = adjunto.

start-of-selection.

TYPE-POOLS : ole2.
DATA: appoutlook TYPE ole2_object.
DATA: appout2 TYPE ole2_object.
DATA: appitem TYPE ole2_object.
DATA: namespace TYPE ole2_object.
DATA: attachments TYPE ole2_object.
DATA: frace01(45), frace02(45).
DATA: p_subj(20) TYPE c.
DATA: p_body TYPE string.




* Crear objeto OLE : outlook.application
CREATE OBJECT appoutlook 'outlook.application'.
* Mensajes vía MAPI
CALL METHOD OF appoutlook 'GetNameSpace' = namespace
EXPORTING
#1 = 'MAPI'.
* Crea objeto nuevo ITEM ( nuevo mensaje )
CALL METHOD OF appoutlook 'CreateItem' = appitem
EXPORTING
#1 = '0'.
* Propiedades TO , SUBJECT y BODY
SET PROPERTY OF appitem 'To' = correo.

* CONCATENATE p_subj 'OC: ' itab-ebeln INTO p_subj
*SEPARATED BY space.
SET PROPERTY OF appitem 'Subject' = 'Correo electronico test'.

CONCATENATE '' 'aca va el texto para el cuerpo del mensaje '
INTO p_body.

SET PROPERTY OF appitem 'Body' = p_body.

* Se adjunta el archivo
if adjunto is not initial.
CALL METHOD OF appitem 'Attachments' = attachments.
CALL METHOD OF attachments 'Add'
EXPORTING
#1 = adjunto.
endif.
* Envíar directamente
CALL METHOD OF appitem 'Send'.
*Se muestra la pantalla del outlook
******** CALL METHOD OF appitem 'Display'.
* Libera Espacio del objeto
FREE OBJECT attachments.
FREE OBJECT appitem.
FREE OBJECT namespace.
* Cierra Outlook ( solo si se quiere que quede cerrado )
***CALL METHOD OF appoutlook 'Quit'.

2 comentarios:

Anónimo dijo...

Hello, the whole thing is going nicely here and ofcourse every one is
sharing facts, that's genuinely fine, keep up writing.

http://www.cvparfait.com/node/98150
http://www.theinnovationcenter.org/online-communities/forum-19522
http://observatoriociudadano.net/?q=node/61839
http://keunstmarkt.keunstwurk.nl/node/60033
http://tonygerewagroup.com/content/trouble-free-how-buy-cheap-twitter-followers-strategies-3-great-start
http://www.sistassicurazioni.it/content/how-buy-cheap-twitter-followers-training
http://fundraiser.info/?q=node/9719
http://www.pokerdesdecero.es/content/hassle-free-tips-how-buy-cheap-twitter-followers-effective-date
http://tdvagora.com/node/5555
http://create4change.org/?q=node/14610

My homepage :: lorrane

Anónimo dijo...

Way cool! Some extremely valid points! I appreciate you writing this article plus the rest of the
website is also very good.

Also visit my webpage: luxury rental properties