01-29-2010 9:32 AM
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
01-29-2010 9:34 AM
Hi,
Already this is answered so many please search in SDN.
Regards,
Bharani
01-29-2010 9:37 AM
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
01-29-2010 9:43 AM
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