‎2007 Dec 10 12:55 PM
Hi all,
Can anyone tell me how to create the distribution list while using the SO_DOCUMENT_SEND_API1 FM.
THank you.
‎2007 Dec 10 1:03 PM
HI,
check the T-code SO23 Tcode for creation of the distribution list.
Regards,
siva chalasani
‎2007 Dec 10 12:58 PM
‎2007 Dec 10 1:03 PM
hello,
I want to create the distribution list which we are passinf to FM SO_DOCUMENT_SEND_API1,
‎2007 Dec 10 1:03 PM
HI,
check the T-code SO23 Tcode for creation of the distribution list.
Regards,
siva chalasani
‎2007 Dec 10 1:06 PM
Hi,
Here is the sample code which i have used in my program.but i used SO_NEW_DOCUMENT_ATT_SEND_API1 fm in my program.i think its new version .
DATA: w_document_data TYPE sodocchgi1. "Mail data
DATA: tbl_packing_list TYPE sopcklsti1 OCCURS 0 WITH HEADER LINE,
tbl_object_header TYPE solisti1 OCCURS 0 WITH HEADER LINE,
tbl_contents_txt1 TYPE solisti1 OCCURS 0 WITH HEADER LINE,
tbl_receivers TYPE somlreci1 OCCURS 0 WITH HEADER LINE.
tbl_contents_txt TYPE solisti1 OCCURS 0 WITH HEADER LINE.
CONSTANTS: c_x TYPE c VALUE 'X'.
CONSTANTS: c_c TYPE c VALUE 'C'.
***********************************************************
FORM send_mail.
CHECK NOT tbl_error[] IS INITIAL.
SORT tbl_error BY material.
Prepare mail
PERFORM prepare_mail.
Get e-mail document data
PERFORM document_data.
Get packing list
PERFORM packing_list.
Get receiver mail id's
tbl_receivers-receiver = 'Z_ROOTS_SHP'.
tbl_receivers-rec_type = c_c.
tbl_receivers-express = c_x.
tbl_receivers-sap_body = c_x.
APPEND tbl_receivers.
Call FM to send E-mails to receivers
CALL FUNCTION 'SO_NEW_DOCUMENT_ATT_SEND_API1'
EXPORTING
document_data = w_document_data
put_in_outbox = 'X'
TABLES
packing_list = tbl_packing_list
object_header = tbl_object_header
contents_txt = tbl_contents_txt
receivers = tbl_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.
IF sy-subrc <> 0.
CLEAR tbl_packing_list.
ENDIF.
REFRESH: tbl_packing_list,tbl_object_header,tbl_contents_txt,
tbl_receivers.
ENDFORM. " send_mail
*******************************************************************
FORM prepare_mail.
CONSTANTS:c_comma TYPE c VALUE ',', "Delimiter
c_linefeed TYPE x VALUE '0D'. "Line feed
E-Mail body content
CONCATENATE text-026 w_docnum text-027 INTO
Pease find the errors in the document attached
tbl_contents_txt-line
SEPARATED BY space.
APPEND tbl_contents_txt.
CLEAR tbl_contents_txt.
"#EC NOTEXT
E-mail attachment header
CONCATENATE text-029 text-030 text-035 text-036 text-031
text-037 text-064 text-033 text-038 text-043 text-039 c_comma
INTO tbl_contents_txt-line SEPARATED BY c_comma.
APPEND tbl_contents_txt.
CLEAR tbl_contents_txt.
E-mail attachment content
IF NOT tbl_error[] IS INITIAL.
LOOP AT tbl_error.
CONCATENATE w_docnum
tbl_error-sold_to
tbl_error-distchan
tbl_error-ship_to
tbl_error-material
tbl_error-shipped_qty
tbl_error-plant "TIR-60433
tbl_error-uom
tbl_error-purchase_order
tbl_error-tsa_no
tbl_error-description
INTO tbl_contents_txt-line
SEPARATED BY c_comma.
CONCATENATE c_linefeed tbl_contents_txt-line c_comma
INTO tbl_contents_txt-line.
APPEND tbl_contents_txt.
CLEAR: tbl_contents_txt.
CLEAR: tbl_error.
ENDLOOP.
ENDIF.
ENDFORM. " prepare_mail
*******************************************************************
FORM document_data.
CONSTANTS: c_underscore TYPE c VALUE '_'.
CLEAR w_line.
CONCATENATE 'RootsTownShipment' sy-datum sy-uzeit INTO w_line
SEPARATED BY c_underscore.
w_document_data-obj_name = w_line.
w_document_data-obj_descr = w_line.
w_document_data-priority = 1.
w_document_data-obj_prio = 1.
ENDFORM. " document_data
****************************************************
FORM packing_list.
CLEAR w_lines.
DESCRIBE TABLE tbl_error LINES w_lines.
READ TABLE tbl_contents_txt INDEX w_lines.
tbl_packing_list-head_start = 1.
tbl_packing_list-head_num = 1.
tbl_packing_list-body_start = 1.
tbl_packing_list-body_num = 1.
tbl_packing_list-doc_type = 'RAW'.
APPEND tbl_packing_list.
tbl_packing_list-head_start = 1.
tbl_packing_list-head_num = 0.
tbl_packing_list-body_start = 2.
tbl_packing_list-body_num = w_lines + 1.
tbl_packing_list-doc_type = 'CSV'.
tbl_packing_list-obj_name = 'RootsTownshipment'.
tbl_packing_list-doc_size = 350 * ( w_lines + 1 ).
"255 * ( w_lines + 1 ).
APPEND tbl_packing_list.
ENDFORM. " packing_list
************************************************************
Change according to your data.Definitely it will help you.
Reward if its useful
Thanks
Sivaparvathi
Message was edited by:
Siva Parvathi