Application Development 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: 

send a mail from program into outlook

Former Member
0 Kudos

hi i wont to send a mail from my program into outlook how can i do that. regards

1 ACCEPTED SOLUTION

Former Member
0 Kudos

With this FM SO_OBJECT_SEND you can send mail to outlook.

3 REPLIES 3

Former Member
0 Kudos

Hi,

Check this link for a sample program..

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

Thanks,

Naren

Former Member
0 Kudos

Hi,

chk this code.

FUNCTION zsend_mail_attachment.

*"----


""Local interface:

*" IMPORTING

*" REFERENCE(V_FILE_PATH) TYPE STRING OPTIONAL

*" REFERENCE(V_SUBJECT) TYPE SO_OBJ_DES

*" TABLES

*" IT_RECEIVERS STRUCTURE SOMLRECI1

*" IT_MESSAGE STRUCTURE SOLISTI1

*"----


DATA: gd_cnt TYPE i,

gd_sent_all(1) TYPE c,

gd_doc_data LIKE sodocchgi1,

gd_error TYPE sy-subrc.

DATA objbin LIKE solisti1 OCCURS 0 WITH HEADER LINE.

DATA : it_packing_list LIKE sopcklsti1 OCCURS 0 WITH HEADER LINE.

  • Binary store for File

DATA : BEGIN OF it_file OCCURS 0,

row(255),

END OF it_file.

  • splitting of the filepath

DATA : BEGIN OF i_split OCCURS 0,

row(50),

END OF i_split.

DATA tab_lines LIKE sy-tabix.

REFRESH : it_file, objbin, it_packing_list, i_split.

CLEAR : it_file, objbin, it_packing_list, i_split.

DESCRIBE TABLE it_message LINES tab_lines.

READ TABLE it_message INDEX tab_lines.

gd_doc_data-doc_size = ( tab_lines - 1 ) * 255 + STRLEN( it_message ).

gd_doc_data-obj_langu = sy-langu.

gd_doc_data-obj_name = 'SENDFILE'.

gd_doc_data-obj_descr = v_subject.

gd_doc_data-sensitivty = 'O'.

CLEAR it_packing_list.

it_packing_list-head_start = 1.

it_packing_list-head_num = 0.

it_packing_list-body_start = 1.

it_packing_list-doc_type = 'RAW'.

it_packing_list-body_num = tab_lines.

APPEND it_packing_list.

IF v_file_path IS NOT INITIAL.

DATA : v_len TYPE i,

v_index LIKE sy-index,

v_doc_type TYPE so_obj_tp,

v_filename TYPE so_obj_des .

v_len = STRLEN( v_file_path ) - 3.

v_doc_type = v_file_path+v_len(3) .

TRANSLATE v_doc_type TO UPPER CASE .

SPLIT v_file_path AT '\' INTO TABLE i_split .

DESCRIBE TABLE i_split LINES v_index .

READ TABLE i_split INDEX v_index .

v_filename = i_split-row .

v_len = STRLEN( v_filename ) - 4.

v_filename = v_filename(v_len) .

CALL FUNCTION 'GUI_UPLOAD'

EXPORTING

filename = v_file_path

filetype = 'BIN'

TABLES

data_tab = it_file.

LOOP AT it_file.

MOVE it_file-row TO objbin-line.

APPEND objbin.

ENDLOOP.

CLEAR it_packing_list.

DESCRIBE TABLE objbin LINES tab_lines.

it_packing_list-transf_bin = 'X'.

it_packing_list-head_start = 1.

it_packing_list-head_num = 1.

it_packing_list-body_start = 1.

it_packing_list-doc_type = v_doc_type.

it_packing_list-body_num = tab_lines.

it_packing_list-doc_size = tab_lines * 255.

it_packing_list-obj_descr = v_filename.

APPEND it_packing_list.

ENDIF.

  • it_receivers-receiver = 'xyz@yahoo.com'.

  • it_receivers-rec_type = 'U'.

  • it_receivers-com_type = 'INT'.

  • APPEND it_receivers .

  • Call the FM to post the message to SAPMAIL

CALL FUNCTION 'SO_NEW_DOCUMENT_ATT_SEND_API1'

EXPORTING

document_data = gd_doc_data

put_in_outbox = 'X'

commit_work = 'X'

  • IMPORTING

  • sent_to_all = gd_sent_all

TABLES

packing_list = it_packing_list

contents_txt = it_message

contents_bin = objbin

receivers = it_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.

ENDFUNCTION.

here is the link,how send mails ,

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

http://www.thespot4sap.com/articles/SAP_Mail_Understanding_SO_Object_Send.asp

Reward points if this Helps.

Manish

Former Member
0 Kudos

With this FM SO_OBJECT_SEND you can send mail to outlook.