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: 

How To send the text document as a attachment using a 'So_object_send'

Former Member
0 Kudos

Hi,

I want to send a mail to user in sap office.

I had used a function module 'SO_OBJECT_SEND'.

Also, I need to send all the attachments (like files .XLS,.TXT etc) in the mail as a attachment.

Please tell me how to pass the attachment to the Function module 'So_object_send'.

Thanks in advance

Regards,

Darshana

3 REPLIES 3

P561888
Active Contributor
0 Kudos

Hi,

Already this is answered so many please search in SDN.

Regards,

Bharani

Former Member
0 Kudos

Hi,

Please refer below code.

CALL FUNCTION 'SO_OBJECT_SEND' 
EXPORTING 
object_hd_change = w_object_hd_change 
object_type = 'RAW' 
owner = sy-uname 
TABLES 
objcont = message_content 
receivers = receiver_list 
packing_list = packing_list 
att_cont = compressed_attachment.

Thanks,

Archana

Former Member
0 Kudos

You should use FM SO_NEW_DOCUMENT_ATT_SEND_API1 to send mail with attachments.

Below is the code for your reference :

  • Doc data

WL_DOC_DATA-OBJ_NAME = TEXT-031. "Survey Data

WL_DOC_DATA-OBJ_DESCR = TEXT-031. "Survey Data

WL_DOC_DATA-OBJ_LANGU = C_LANG_EN. "E

  • Receiver's details

WL_RECEIVERS-RECEIVER = ABCD AT XYZ DOT COM."l_survey_recipient_email.

WL_RECEIVERS-REC_TYPE = C_REC_TYPE. "U

WL_RECEIVERS-COM_TYPE = C_COMM_TYP. "INT

WL_RECEIVERS-NOTIF_DEL = C_CHK. "X

WL_RECEIVERS-NOTIF_NDEL = C_CHK. "X

APPEND WL_RECEIVERS TO TL_RECEIVERS.

  • Mail subject

WL_HEADER-LINE = TEXT-036. "Mail

APPEND WL_HEADER TO TL_HEADER.

LOOP AT TL_EMAIL_TAB2 INTO WL_HEADER2.

CONCATENATE WL_HEADER2-MESSAGE C_TAB INTO L_STRING.

CONCATENATE C_RET L_STRING INTO WL_OBJTXT-LINE SEPARATED BY SPACE.

APPEND WL_OBJTXT TO TL_OBJTXT.

ENDLOOP. "LOOP AT tl_email_ta..

DESCRIBE TABLE TL_OBJTXT LINES L_LINES.

L_TMP = L_LINES * 255.

MOVE L_TMP TO L_DOC_SIZE.

CONDENSE L_DOC_SIZE.

WL_PACK-HEAD_START = 1.

WL_PACK-HEAD_NUM = 0.

WL_PACK-BODY_START = 1.

WL_PACK-BODY_NUM = L_LINES.

WL_PACK-DOC_TYPE = C_DOC_TYP. "RAW

WL_PACK-OBJ_LANGU = C_LANG_EN. "E

WL_PACK-DOC_SIZE = L_DOC_SIZE.

APPEND WL_PACK TO TL_PACK.

  • Call function module to send the email to the survey recipient

CALL FUNCTION 'SO_NEW_DOCUMENT_ATT_SEND_API1'

EXPORTING

DOCUMENT_DATA = WL_DOC_DATA

PUT_IN_OUTBOX = C_CHK "X (Check)

COMMIT_WORK = C_CHK "X (Check)

TABLES

PACKING_LIST = TL_PACK

OBJECT_HEADER = TL_HEADER

CONTENTS_TXT = TL_OBJTXT

RECEIVERS = TL_RECEIVERS

IF SY-SUBRC = 0.

SUBMIT RSCONN01 WITH MODE = 'INT'

WITH OUTPUT = 'X'

AND RETURN.

ENDIF.

Regards,

NaPPy