Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

Regarding mail

Former Member
0 Likes
405

Hi,

Is there any way to send a mail with cc populated with some mail id.

regards,

Ravi

2 REPLIES 2
Read only

sreeramkumar_madisetty
Active Contributor
0 Likes
357

HI,

Check this:

INCLUDE: OLE2INCL. "OLE2 Automation

DATA: OUTLOOK TYPE OLE2_OBJECT,

NAMESPACE TYPE OLE2_OBJECT,

MYFOLDER TYPE OLE2_OBJECT,

MYITEM TYPE OLE2_OBJECT,

MYITEMS TYPE OLE2_OBJECT.

  • collection of mail item properties

DATA: MYPROPS TYPE OLE2_OBJECT, "#EC NEEDED

  • A mail item property

MYPROP TYPE OLE2_OBJECT, "#EC NEEDED

W_VALUE TYPE OLE2_OBJECT. " property values

DATA :

W_VALUE2(100),

W_VALUE3(100),

W_VALUE4(1) VALUE '''' .

DATA: W_COUNTER TYPE I. "#EC NEEDED

DATA: W_CREATETIME TYPE OLE2_OBJECT, "#EC NEEDED

Y_CREATETIME TYPE OLE2_OBJECT. "#EC NEEDED

CLEAR W_VALUE.

FREE MYITEM.

FREE MYFOLDER.

FREE NAMESPACE.

FREE OUTLOOK.

----


  • FORM F0026_SENDEMAIL_OUTLOOK *

----


  • ........ *

----


FORM FM_SENDEMAIL_OUTLOOK USING RV_TO

RV_CC

RV_SUBJECT

RV_BODY

CHANGING V_RET.

  • Create instance of Outlook

CREATE OBJECT OUTLOOK 'Outlook.Application'.

  • Get the outlook namespace

CALL METHOD OF OUTLOOK 'GetNamespace' = NAMESPACE

EXPORTING

#1 = 'MAPI'.

  • Get outlook folders and create a reference to sent mail folder

  • (myfolder)

CALL METHOD OF NAMESPACE 'GetDefaultFolder' = MYFOLDER

EXPORTING

#1 = 5. "olFolderSentMail

  • Create an inbox item

CALL METHOD OF OUTLOOK 'CreateItem' = MYITEM

EXPORTING

#1 = 0. "olMailItem

  • set properties for sending mail

*

SET PROPERTY OF MYITEM 'To' = RV_TO. " user email

SET PROPERTY OF MYITEM 'BodyFormat' = 3.

SET PROPERTY OF MYITEM 'CC' = RV_CC.

SET PROPERTY OF MYITEM 'Body' = RV_BODY.

  • Replace ALL occurence of $OBJECTID in ZFACT_NOTIFICATN-SUBJECT

  • with OBJECTID value

  • for testing: Add object ID used for tracking email.

  • CONCATENATE '000000000-0060-3025000-WA737-000000000'

*ZFACT_NOTIFICATN-SUBJECT INTO ZFACT_NOTIFICATN-SUBJECT SEPARATED BY ':

*.

SET PROPERTY OF MYITEM 'Subject' = RV_SUBJECT.

  • Create custom property attached to the mail item

  • so that we can later identifiy the item

  • PERFORM CreateCustomProperty USING myitem .

  • In the normal case, object id is in the first position of subject.

CALL METHOD OF MYITEM 'Save'.

  • PERFORM CREATECUSTOMPROPERTY USING MYITEM .

CALL METHOD OF MYITEM 'Display'

EXPORTING #1 = 1.

W_COUNTER = 1.

FREE MYITEM.

CONCATENATE W_VALUE4 RV_SUBJECT INTO

W_VALUE3.

CONCATENATE W_VALUE3 W_VALUE4 INTO W_VALUE3.

CONCATENATE '[Subject] = ' W_VALUE3 INTO W_VALUE2

SEPARATED BY ' '. "#EC NOTEXT

WAIT UP TO 2 SECONDS.

CALL METHOD OF MYFOLDER 'Items' = MYITEMS.

CALL METHOD OF MYITEMS 'Find' = MYITEM

EXPORTING #1 = W_VALUE2.

GET PROPERTY OF MYITEM 'Subject' = W_VALUE.

    • Get creation time used for tracking email

  • GET PROPERTY OF MYITEM 'CreationTime' = W_CREATETIME.

IF W_VALUE NE RV_SUBJECT.

  • IF MYITEM IS INITIAL .

*and not MYITEM is eq '.

V_RET = 'NO'.

EXIT.

ELSE.

V_RET = 'YES'.

EXIT.

ENDIF.

  • free memory

FREE MYPROPS.

FREE MYPROP.

FREE W_CREATETIME.

FREE Y_CREATETIME.

FREE W_VALUE.

ENDFORM.

You can call this program from another program using a call like:

PERFORM fm_sendemail_outlook

IN PROGRAM zemail_prg

USING ws_to

ws_cc

ws_subject

ws_body

CHANGING ws_ret. "#CCE

Regards

kumar

Read only

Former Member
0 Likes
357

Hi Ravi,

I think this might be useful to you.

http://www.sapdevelopment.co.uk/reporting/email/attach_xls.htm

Regards,

Harsha.