Sending emails from SAP system
Hai everybody,
for sending emails from SAP system , what are all the configuration we have to made & what are all the cheks we have to perform at BASIS level .
Pl guide me.
Ramesh
Hi,
Configurations need to be done with Tcode : SCOT
and RFC need to be established using SM59.
SO_NEW_DOCUMENT_ATT_SEND_API1 is the Function Module used for sending Emails from SAP System.
The Email ID's are maintained in XK02 , XD02 For Vendors and Customers in the Basic Data.
You need to write the code to fetch the ID's from the Vendor Master dataor customer master data based on the Vendor/Customer Numbers.
You can always monitor the Emails in SOST.
This is all you need to do.
Similar Messages
-
Regarding Sending email from Sap system
hi experts,
i have developed one object for sending email from sap its working fine onlt to send TO option
HOW TO SEND MAIL TO CC option
thanks adv
reg
GOPIUse:SO_NEW_DOCUMENT_ATT_SEND_API1
CC field in email using SO_NEW_DOCUMENT_ATT_SEND_API1
How can I send mail to CC recipients
Reward points.. -
Components required for sending Email from SAP [Kernel Release 46D]?
Hi All,
Can somebody please tell me the components and the Configuration settings required for sending Emails from SAP system[Kernel Release 46D] to the mail server[Win NT] using SMTP.
From note 455127, I understood that "Sap Internet Mail Gateway" is required and there are other settings to be done. (SAPconnect with RFC can only be used as the Kernel version is 46D)
It will be great if somebody can explain me in simple steps if He/She has done this before.
Thanks,
VarunVarun,
sendmail comes with UNIX OS, there are versions of sendmail programs available for Windows too, but i guess you have to purchase them.
Another alternative is a discontinued product called SAP Exchange connector, if you have a Windows environment and MS Exchange server as your mail server, you could use a SAP exchange connector and get your SAP Email config done.
Regards,
Siddhesh -
Cannot Send Email from SAP Business One
Hi Experts
I have configured SAP Email Services from the Mailer Service and Customer can send emails all the while,
Now I have an Issue for One User,
Iam using the Same Machine, Same Database with Manager Login, I can send Email from SAP with Attachments
But When I use another Super user the system is not delivering the Email and it Goes to the Sent box (but not delivered)
Have anyone encountered the Issue before
Please hep to solve this issue permanently
Thanks and Regards
Vinodh Kumar MohanHi Vinodh Kumar Mohan,
If the email can be found in Sent box, it must be delivered already.
The problem could be on the email recipient side. It may go to the junk mail.
Thanks,
Gordon -
Send email from SAP using SMTP-AUTH
Dear all,
I would like to send email from SAP to external SMTP server using authenticated method.
Can I set up this scenario with SAPConnect?
Or are there any other methods to set up this scenario?
Thanks, Regards,
FendhyHi,
You dont need anu authentication to be set :
Just follow below steps :
Simple steps to do the SMTP configuration :
1. Use transaction SCOT
3. Double Click on SMTP
4. You will get a window and fill in description
5. Tick the "Node in use" box
6. Enter the hostname of the email exchange server
7. Mail port will be 25
8. Click on the button next to Internet called "Set"
9. You will get another window, in the "address area" box, enter *
10. Click the green check button to exit the second window
11. Click the green check button to exit the main window
12. From top menu: Settings -> Default Domain
13. in the small box that appears enter the domain name which is the last part after the @ sign. The domain name would be company.com
14. You need to define a job to process the email, from top menu: View -> Jobs
15. From top menu: Job -> Create
16. Enter a name
17. Click on "INT" in the list then "Schedule job" button
18. Enter start date and time, then click on "Schedule Periodically" button
19. Enter something like every 10 minutes.
20. the configuration is now complete. To test it, you need to have an email defined in your user id properties. Use SU01 for that.
21. Use transaction SO00
22. Put Title, and text in the body, then enter your email address below, the recepient type would be "internet address"
23. After a maximum of 10 minutes you should get the email address.
Regards,
Nirmal.K -
General users can not send emails from SAP themselves except sap_all user
Dear experts ,
General users can not send emails from T-CODE: SO00 themselves except the users
which Assigned SAP_ALL Authorization Profiles .
We hit SAPconnect trace Error : SO_OBJECT_MIME_GET Exception: 2 .
No MIME Document Received. Error Code: UNKNOWN .
How to can i solve the problem ?
Thanks a lot in advance .Thanks for your Reply .
I had set default domain in SCOT ,and email address in su01 .
we can send email successful only SAP_ALL users .General users can not send emails from SAP themselves
Is anybody else to help me ?
Thanks a lot in advance . -
Send mail from SAP system to another SAP system
Hello Xperts
I need to send a mail from one SAP box (ECC) to another SAP box (SRM,CRM, EP etc). I know how to send mail from SAP to external address but unable to find the parameters in this case. Kindly help.
thkx
Prabhu
PS: Kindly DONOT post on "How to send mail from SAP" as my questions is all abt how to send mail from one sap system to another sap systemHi
To send mail Internally check this sample code it works fine this code was developed by me
*& Report ZMATURITYREPORT *
*& Title - Maturity report *
*& ABAP/4 Consultant *
*& Name- Pavan Praveen Valluri Created on 26/07/2007 *
*& Module - FI *
REPORT ZMATURITYREPORT.
tables: bseg.
* SELECTION SCREEN--------------------------------------------------- *
parameters: p_email type somlreci1-receiver default
'@gujaratpetro.com'.
* Data: p_email(25) type c value '[email protected]'.
* END OF SELECTION SCREEN ------------------------------------------- *
*----------DATA DECLARATION--------------------------------------------*
data: it_message type standard table of solisti1 initial size 0
with header line.
data: it_message1 type standard table of solisti1 initial size 0
with header line.
data: it_message2(10) type N.
data: it_message3 type standard table of solisti1 initial size 0
with header line.
data: it_message4 type standard table of solisti1 initial size 0
with header line.
data: it_attach type standard table of solisti1 initial size 0
with header line.
data: text(150).
data: t_packing_list like sopcklsti1 occurs 0 with header line,
t_contents like solisti1 occurs 0 with header line,
t_receivers like somlreci1 occurs 0 with header line,
t_attachment like solisti1 occurs 0 with header line,
t_object_header like solisti1 occurs 0 with header line,
w_cnt type i,
w_sent_all(1) type c,
w_doc_data like sodocchgi1,
gd_error type sy-subrc,
gd_reciever type sy-subrc.
start-of-selection.
data: lv_date type sy-datum.
data: lv_date1 type sy-datum.
data: lv_formatdate(10) type c.
data: lv_formatdate1(10) type c.
data: var1(4) type c,
var2(2) type c,
var3(2) type c.
data: begin of int_bseg occurs 0,
BELNR LIKE BSEG-BELNR,
ZUONR LIKE BSEG-ZUONR,
GJAHR LIKE BSEG-GJAHR,
DMBTR LIKE BSEG-DMBTR,
HKONT LIKE BSEG-HKONT,
end of int_bseg.
data: begin of int_SKAT occurs 0,
TXT50 LIKE SKAT-TXT50,
SAKNR LIKE SKAT-SAKNR,
KTOPL LIKE SKAT-KTOPL,
end of int_SKAT.
data: begin of int_bkpf occurs 0,
BELNR LIKE BKPF-BELNR,
BUKRS LIKE BKPF-BUKRS,
GJAHR LIKE BKPF-GJAHR,
BUDAT LIKE BKPF-BUDAT,
end of int_BKPF.
data: 2days_out type sy-datum.
2days_out = sy-datum + 2.
data: var4(4) type c,
var5(2) type c,
var6(2) type c.
*-------- END OF DATA DECLARATION--------------------------------------*
*--- CONCATENATING AND ARRANGING DATE ---------------------------------*
lv_date = 2days_out.
var1 = lv_date+(4).
var2 = lv_date+4(2).
var3 = lv_date+6(2).
concatenate var3 var2 var1 into lv_formatdate separated by '.'.
*--- END OF CONCATENATING AND ARRANGING DATE -------------------------*
*-------------------------SELECTION FOR BSEG---------------------------*
select zuonr belnr bukrs GJAHR DMBTR HKONT from bseg into
corresponding fields of table int_bseg
where bukrs = 'company name' and
ZUONR = lv_formatdate.
*--------------END OF SSELECTION FOR BSEG--------------------------- *
*-------------------------SELECTION FOR BKPF---------------------------*
select BUDAT BUKRS BELNR GJAHR from BKPF into
corresponding fields of table int_BKPF
where bukrs = 'company name'.
append int_BKPF.
*------------------END OF SELECTION FOR BKPF---------------------------*
*-------------------------SELECTION FOR SKAT---------------------------*
select SAKNR TXT50 from SKAT into
corresponding fields of table int_SKAT
where KTOPL = 'company name'.
*and SAKNR = INT_BSEG-HKONT.
APPEND INT_SKAT.
*--------------END OF SSELECTION FOR SKAT--------------------------- *
*-----------------POPULATING EMAIL SUBJECT ----------------------------*
perform populate_email_message_body.
perform send_file_as_email_attachment
tables it_message
it_attach
using p_email
'Maturity after 2 days'
'XLS'
'filename'
changing gd_error
gd_reciever.
* Instructs mail send program for SAPCONNECT to send email(rsconn01)
perform initiate_mail_execute_program.
*endif.
end-of-selection.
*------------END OF POPULATING EMAIL SUBJECT --------------------------*
*& Form SEND_FILE_AS_EMAIL_ATTACHMENT
* Send email
form send_file_as_email_attachment tables pit_message
pit_attach
using p_email
p_mtitle
p_format
p_filename
p_attdescription
p_sender_address
p_sender_addres_type
changing p_error
p_reciever.
data: ld_error type sy-subrc,
ld_reciever type sy-subrc,
ld_mtitle like sodocchgi1-obj_descr,
ld_email like somlreci1-receiver,
ld_format type so_obj_tp ,
ld_attdescription type so_obj_nam ,
ld_attfilename type so_obj_des ,
ld_sender_address like soextreci1-receiver,
ld_sender_address_type like soextreci1-adr_typ,
ld_receiver like sy-subrc.
ld_email = p_email.
ld_mtitle = p_mtitle.
ld_format = p_format.
ld_attdescription = p_attdescription.
ld_attfilename = p_filename.
ld_sender_address = p_sender_address.
ld_sender_address_type = p_sender_addres_type.
* Fill the document data.
w_doc_data-doc_size = 1.
* Populate the subject/generic message attributes
w_doc_data-obj_langu = sy-langu.
w_doc_data-obj_name = 'SAPRPT'.
w_doc_data-obj_descr = ld_mtitle .
w_doc_data-sensitivty = 'F'.
** Fill the document data and get size of attachment
clear w_doc_data.
read table it_attach index w_cnt.
w_doc_data-doc_size =
( w_cnt - 1 ) * 255 + strlen( it_attach ).
w_doc_data-obj_langu = sy-langu.
w_doc_data-obj_name = 'SAPRPT'.
w_doc_data-obj_descr = ld_mtitle.
w_doc_data-sensitivty = 'F'.
clear t_attachment.
refresh t_attachment.
t_attachment[] = pit_attach[].
* Describe the body of the message
clear t_packing_list.
refresh t_packing_list.
t_packing_list-transf_bin = space.
t_packing_list-head_start = 1.
t_packing_list-head_num = 0.
t_packing_list-body_start = 1.
describe table it_message lines t_packing_list-body_num.
t_packing_list-doc_type = 'RAW'.
append t_packing_list.
* Add the recipients email address
clear t_receivers.
refresh t_receivers.
t_receivers-receiver = ld_email.
t_receivers-rec_type = 'U'.
t_receivers-com_type = 'INT'.
t_receivers-notif_del = 'X'.
t_receivers-notif_ndel = 'X'.
append t_receivers.
call function 'SO_DOCUMENT_SEND_API1'
EXPORTING
document_data = w_doc_data
put_in_outbox = 'X'
sender_address = ld_sender_address
sender_address_type = ld_sender_address_type
commit_work = 'X'
IMPORTING
sent_to_all = w_sent_all
TABLES
object_header = t_object_header
packing_list = t_packing_list
contents_bin = t_attachment
contents_txt = it_message
receivers = t_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.
* Populate zerror return code
ld_error = sy-subrc.
* Populate zreceiver return code
loop at t_receivers.
ld_receiver = t_receivers-retrn_code.
endloop.
endform. "send_file_as_email_attachment
*& Form INITIATE_MAIL_EXECUTE_PROGRAM
* Instructs mail send program for SAPCONNECT to send email.
form initiate_mail_execute_program.
wait up to 2 seconds.
if gd_error eq 0.
submit rsconn01 with mode = 'INT'
with output = 'X'
and return.
endif.
endform. " INITIATE_MAIL_EXECUTE_PROGRAM
*& Form POPULATE_EMAIL_MESSAGE_BODY
* Populate message body text
form populate_email_message_body.
refresh it_message.
refresh it_message1.
refresh it_message3.
refresh it_message4.
*--------------- LOOP FOR BSEG -----------------------------------------
loop at int_BSEG.
read table int_bKPF WITH KEY BELNR = INT_BSEG-BELNR
GJAHR = INT_BSEG-GJAHR.
read table int_SKAT WITH KEY SAKNR = INT_BSEG-HKONT.
*---CHANGING DATE FORMAT FOR BKPF---------------------------------------
lv_date1 = int_bkpf-budat.
var4 = lv_date1+(4).
var5 = lv_date1+4(2).
var6 = lv_date1+6(2).
concatenate var6 var5 var4 into lv_formatdate1 separated by '.'.
*---END OF CHANGING DATE FORMAT FOR BKPF-------------------------
it_message = int_bseg-belnr.
it_message1 = lv_formatdate1.
it_message2 = int_bseg-dmbtr.
it_message3 = int_bseg-hkont.
IT_MESSAGE4 = INT_SKAT-TXT50.
SHIFT IT_MESSAGE2 LEFT DELETING LEADING '0'.
*-------------POPULATING EMAIL BODY WITH DATA -------------------------
concatenate 'Maturity After 2Days' 'for' 'G/L account-' it_message3
'--' IT_MESSAGE4 ',' 'Amount-' it_message2
into it_message separated by space.
append it_message.
append it_message1.
append it_message3.
clear it_message.
clear it_message1.
clear it_message2.
clear it_message3.
endloop.
*------------END OF LOOP FOR BSEG --------------------------------------
endform. " POPULATE_EMAIL_MESSAGE_BODY
<b><i>
To send an mail with external attachment check this one
</b></i>
<i>first create a Include report with the following coding</i>
*& Include ZPA1_INCLFOR_MAIL *
* Data
DATA: docdata LIKE sodocchgi1,
objpack LIKE sopcklsti1 OCCURS 1 WITH HEADER LINE,
objhead LIKE solisti1 OCCURS 1 WITH HEADER LINE,
objtxt LIKE solisti1 OCCURS 10 WITH HEADER LINE,
objbin LIKE solisti1 OCCURS 10 WITH HEADER LINE,
objhex LIKE solix OCCURS 10 WITH HEADER LINE,
reclist LIKE somlreci1 OCCURS 1 WITH HEADER LINE.
DATA: tab_lines TYPE i,
doc_size TYPE i,
att_type LIKE soodk-objtp.
DATA: listobject LIKE abaplist OCCURS 1 WITH HEADER LINE.
* FORM
FORM ml_customize USING objname objdesc.
*----------- Clear Variables
CLEAR docdata.
REFRESH objpack.
CLEAR objpack.
REFRESH objhead.
REFRESH objtxt.
CLEAR objtxt.
REFRESH objbin.
CLEAR objbin.
REFRESH objhex.
CLEAR objhex.
REFRESH reclist.
CLEAR reclist.
REFRESH listobject.
CLEAR listobject.
CLEAR tab_lines.
CLEAR doc_size.
CLEAR att_type.
*--------- Set Variables
docdata-obj_name = objname.
docdata-obj_descr = objdesc.
ENDFORM. "ml_customize
* FORM
FORM ml_addrecp USING preceiver prec_type.
CLEAR reclist.
reclist-receiver = preceiver.
reclist-rec_type = prec_type.
APPEND reclist.
ENDFORM. "ml_customize
* FORM
FORM ml_addtxt USING ptxt.
CLEAR objtxt.
objtxt = ptxt.
APPEND objtxt.
ENDFORM. "ml_customize
* FORM
FORM ml_prepare USING bypassmemory whatatt_type whatname.
IF bypassmemory = ''.
*--------- Fetch List From Memory
CALL FUNCTION 'LIST_FROM_MEMORY'
TABLES
listobject = listobject
EXCEPTIONS
OTHERS = 1.
IF sy-subrc <> 0.
MESSAGE ID '61' TYPE 'E' NUMBER '731'
WITH 'LIST_FROM_MEMORY'.
ENDIF.
CALL FUNCTION 'TABLE_COMPRESS'
* IMPORTING
* COMPRESSED_SIZE =
TABLES
in = listobject
out = objbin
EXCEPTIONS
OTHERS = 1
IF sy-subrc <> 0.
MESSAGE ID '61' TYPE 'E' NUMBER '731'
WITH 'TABLE_COMPRESS'.
ENDIF.
ENDIF.
* Header Data
* Already Done Thru FM
* Main Text
* Already Done Thru FM
* Packing Info For Text Data
DESCRIBE TABLE objtxt LINES tab_lines.
READ TABLE objtxt INDEX tab_lines.
docdata-doc_size = ( tab_lines - 1 ) * 255 + STRLEN( objtxt ).
CLEAR objpack-transf_bin.
objpack-head_start = 1.
objpack-head_num = 0.
objpack-body_start = 1.
objpack-body_num = tab_lines.
objpack-doc_type = 'TXT'.
APPEND objpack.
* Packing Info Attachment
att_type = whatatt_type..
DESCRIBE TABLE objbin LINES tab_lines.
READ TABLE objbin INDEX tab_lines.
objpack-doc_size = ( tab_lines - 1 ) * 255 + STRLEN( objbin ).
objpack-transf_bin = 'X'.
objpack-head_start = 1.
objpack-head_num = 0.
objpack-body_start = 1.
objpack-body_num = tab_lines.
objpack-doc_type = att_type.
objpack-obj_name = 'ATTACHMENT'.
objpack-obj_descr = whatname.
APPEND objpack.
* Receiver List
* Already done thru fm
ENDFORM. "ml_prepare
* FORM
FORM ml_dosend.
CALL FUNCTION 'SO_NEW_DOCUMENT_ATT_SEND_API1'
EXPORTING
document_data = docdata
put_in_outbox = 'X'
commit_work = 'X' "used from rel. 6.10
* IMPORTING
* SENT_TO_ALL =
* NEW_OBJECT_ID =
TABLES
packing_list = objpack
object_header = objhead
contents_bin = objbin
contents_txt = objtxt
* CONTENTS_HEX = objhex
* OBJECT_PARA =
* object_parb =
receivers = reclist
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.
MESSAGE ID 'SO' TYPE 'S' NUMBER '023'
WITH docdata-obj_name.
ENDIF.
ENDFORM. "ml_customize
* FORM
FORM ml_spooltopdf USING whatspoolid.
DATA : pdf LIKE tline OCCURS 0 WITH HEADER LINE.
*-------------- Call Function
CALL FUNCTION 'CONVERT_OTFSPOOLJOB_2_PDF'
EXPORTING
src_spoolid = whatspoolid
TABLES
pdf = pdf
EXCEPTIONS
err_no_otf_spooljob = 1
OTHERS = 12.
*------------- Convert
PERFORM doconv TABLES pdf objbin.
ENDFORM. "ml_spooltopdf
* FORM
FORM doconv TABLES
mypdf STRUCTURE tline
outbin STRUCTURE solisti1.
*-------- Data
DATA : pos TYPE i.
DATA : len TYPE i.
*------------ Loop And Put Data
LOOP AT mypdf.
pos = 255 - len.
IF pos > 134. "length of pdf_table
pos = 134.
ENDIF.
outbin+len = mypdf(pos).
len = len + pos.
IF len = 255. "length of out (contents_bin)
APPEND outbin.
CLEAR: outbin, len.
IF pos < 134.
outbin = mypdf+pos.
len = 134 - pos.
ENDIF.
ENDIF.
ENDLOOP.
IF len > 0.
APPEND outbin.
ENDIF.
ENDFORM. "doconv
<b>
Then include that report in the following report and copy the same code and paste it there
</b>
*& Report ZPA_TEMP147 *
REPORT ZPA_TEMP147 .
INCLUDE zpa1_inclfor_mail.
* DATA
DATA : itab LIKE tline OCCURS 0 WITH HEADER LINE.
DATA : file_name TYPE string.
data : path like PCFILE-PATH.
data : extension(5) type c.
data : name(100) type c.
* SELECTION SCREEN
PARAMETERS : receiver TYPE somlreci1-receiver lower case.
PARAMETERS : p_file LIKE rlgrap-filename
OBLIGATORY.
* AT SELECTION SCREEN
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file.
CLEAR p_file.
CALL FUNCTION 'F4_FILENAME'
IMPORTING
file_name = p_file.
* START-OF-SELECTION
START-OF-SELECTION.
PERFORM ml_customize USING 'Tst' 'Testing'.
PERFORM ml_addrecp USING receiver 'U'.
PERFORM upl.
PERFORM doconv TABLES itab objbin.
PERFORM ml_prepare USING 'X' extension name.
PERFORM ml_dosend.
SUBMIT rsconn01
WITH mode EQ 'INT'
AND RETURN.
* FORM
FORM upl.
file_name = p_file.
CALL FUNCTION 'GUI_UPLOAD'
EXPORTING
filename = file_name
filetype = 'BIN'
TABLES
data_tab = itab
EXCEPTIONS
file_open_error = 1
file_read_error = 2
no_batch = 3
gui_refuse_filetransfer = 4
invalid_type = 5
no_authority = 6
unknown_error = 7
bad_data_format = 8
header_not_allowed = 9
separator_not_allowed = 10
header_too_long = 11
unknown_dp_error = 12
access_denied = 13
dp_out_of_memory = 14
disk_full = 15
dp_timeout = 16
OTHERS = 17.
path = file_name.
CALL FUNCTION 'PC_SPLIT_COMPLETE_FILENAME'
EXPORTING
complete_filename = path
* CHECK_DOS_FORMAT =
IMPORTING
* DRIVE =
EXTENSION = extension
NAME = name
* NAME_WITH_EXT =
* PATH =
EXCEPTIONS
INVALID_DRIVE = 1
INVALID_EXTENSION = 2
INVALID_NAME = 3
INVALID_PATH = 4
OTHERS = 5
ENDFORM. "upl
<b>These are the FM for sending external email :-</b>
SO_DOCUMENT_SEND_API1
SAPoffice: Send new document with attachments via RFC
SO_NEW_DOCUMENT_ATT_SEND_API1
(In 4.6C only, You can go to SE37 and click the documentation on how to use it. A sample program is provided there.)
SAPoffice: Send new document with attachments via RFC
Note : If you are using FM SO_NEW_DOCUMENT_ATT_SEND_API1 then Export Parameter DOCUMENT_DATA-OBJ_DESCR contains the Subject.
SO_NEW_DOCUMENT_SEND_API1
SAPoffice: Send new document
<b>Check this sample report</b>
DATA : BEGIN OF ITAB OCCURS 0,
PERNR LIKE PA0001-PERNR,
ENAME LIKE PA0001-ENAME,
END OF ITAB.
DATA: message_content LIKE soli OCCURS 10 WITH HEADER LINE,
receiver_list LIKE soos1 OCCURS 5 WITH HEADER LINE,
packing_list LIKE soxpl OCCURS 2 WITH HEADER LINE,
listobject LIKE abaplist OCCURS 10,
compressed_attachment LIKE soli OCCURS 100 WITH HEADER LINE,
w_object_hd_change LIKE sood1,
compressed_size LIKE sy-index.
START-OF-SELECTION.
SELECT PERNR ENAME
INTO CORRESPONDING FIELDS OF TABLE ITAB
FROM PA0001
WHERE PERNR < 50.
LOOP AT ITAB.
WRITE :/02 SY-VLINE , ITAB-PERNR, 15 SY-VLINE , ITAB-ENAME, 50
SY-VLINE.
ENDLOOP.
* Receivers
receiver_list-recextnam = '[email protected]'. "-->
* EMAIL ADDRESS
RECEIVER_list-RECESC = 'E'. "<-
RECEIVER_list-SNDART = 'INT'."<-
RECEIVER_list-SNDPRI = '1'."<-
APPEND receiver_list.
* General data
w_object_hd_change-objla = sy-langu.
w_object_hd_change-objnam = 'Object name'.
w_object_hd_change-objsns = 'P'.
* Mail subject
w_object_hd_change-objdes = 'Message subject'.
* Mail body
APPEND 'Message content' TO message_content.
* Attachment
CALL FUNCTION 'SAVE_LIST'
EXPORTING
list_index = '0'
TABLES
listobject = listobject.
CALL FUNCTION 'TABLE_COMPRESS'
IMPORTING
compressed_size = compressed_size
TABLES
in = listobject
out = compressed_attachment.
DESCRIBE TABLE compressed_attachment.
CLEAR packing_list.
packing_list-transf_bin = 'X'.
packing_list-head_start = 0.
packing_list-head_num = 0.
packing_list-body_start = 1.
packing_list-body_num = sy-tfill.
packing_list-objtp = 'ALI'.
packing_list-objnam = 'Object name'.
packing_list-objdes = 'Attachment description'.
packing_list-objlen = compressed_size.
APPEND packing_list.
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.
<b>Settings for sending mail</b>
Configuring SAP 4.6x Internet mail Gateway
SAP can be configured to send and receive emails from different sources.This section explains how to integrate SAPOffice with an external emailsystem. Your Internet email must be configured and running prior to this.Email from SAP is forwarded to the users external email system..
You can configure inbound and outbound forwarding. Outbound flow forwardsa SAP message (eg: update termination) via UNIX sendmail to the intended recepient. Inbound accepts a message from sendmail and places it in the users SAPOffice inbox. Many companies prefer to configure outbound only.
Configuring outbound forwarding
SAP configuration
1. Create your RFC destination for outbound email using transaction SM59
RFC Destination : SAP_INTERNET_GATEWAY
Connection Type : T
Description : SAP internet mail gateway
Click on 'Explicit Host' if you wanton demand gateway dameon invocation.
Program : /sapmnt/SID/exe/mlunxsnd
Target Host : Enter hostname that runs your central instance.
Click 'Test Connection' and you should seea successfull message.
2. Shared Office Settings transaction SO16-> Send -> Settings or
directly via transaction SCOT- SAPconnect Administation
Nodes - Create
Node : IMAIL
Description : SAP internet mail gateway
RFC Destination : SAP_INTERNET_GATEWAY
Tick : Internet
Address Area : *
Tick : All formats
Dev. type : Choose an approciate Printer Device
Set further addresstype : N
Maximum waiting timefor repeat send attempt procedure : Blank or decide for yourself
Tick : Node is ready for use
Setting
- DefaultDomain : <your company domain>.com
- Conversionrule : require if your communication device only support one format.
e.g. if you email system only support the format RAW (ASCII text format)
Format To Format Ranking Function module
ALI RAW 1 SX_OBJECT_CONVERT_ALI_RAW (convert APAP List)
Referto note 171698 - SAPconnect: Formats, conversion, device type
UNIX configuration
1 .. cd /sapmnt/SID/exe
2 ..csh
..mlsomadm mailgw.ini
System Name [C11] :
Client [000] :
Username : MAILADM
Password : MAILADM
Language : E
Load Balancing :
Hostname : <hostname>
System number : <instance_number>
Gateway hostname: <central_instance_hostname>
Gateway Service : <instance number>
Use SAP Router :
Trace level :
Sendmail Command [/usr/lib/sendmail -i -f<SENDER_ADDRESS>]:
Codepage [ISO-8859-1] :
Trace Level (Outbound) [0] :
Update file sapmailsid.cfg? [Y]
Testing whether your configuration is successful
1. Logon to SAP
2. Execute transaction SO01
3. Write a message and send it to <your_internet_email_address>
4. If you don't see the mail in your internet mailbox, go back and review steps 1-12
Schedule the SAP Internet Mail Gateway Jobs to start every 5 minutes
1. Create
2. Position your cursor at INT
3. Click Schedule and supply the date and time
4. Click Schedule periodically and tick Minutes and type in 5
5. Click Create and you are done
6. Click Show Scheduling to check
Problems that you might encounter :-
If you have set up a node in SCOT and it tests out well but recieve the reply.
"Cannot process message in node, parameterscannot be converted".
Make sure the RFC connection is working, and that SapConnect has been installed on the Unix Server or the Microsoft Exchange Server. Originally, I had the same error, and found that nothing had been installed on Unixor Exchange, to support SapConnect.
In SCOT (View -> System Status), your mail remains at the Intransit column.
Check you sendmail.cf files (e.g.Sun Solaris /etc/mail/sendmail.cf). Try using the sendmail command to send a test file at the Unix level. You must be able to send mail at theUnix level before you can send mail at the SAP level.
http://help.sap.com/saphelp_nw04/helpdata/en/cf/700b405bacdd5fe10000000a155106/content.htm
http://www.tamboly.com/SAPEmailConfiguration.html
Check my previous links
Mail Send
sending mails from abap program
Mail Sending to external email id's
settings needed for sending emails
Regards
Pavan -
hiii
<b>Is it possible to send mail from SAP to External user??????if possible does BASIS people had to do something???</b>
I want to send the email from sap to external user([email protected]).My mail will consist of some changes made in production order(CO03). for which i had created the BADI. That part is over now i want to send the mail.
<b>I got many sample programs in sdn but when i enter the email address it execute but mail is not sent.....I want to know by just executing Zprogram mail will be sent or there is some role for BASIS also..............</b>
Thanking you.
Regards.There is a transaction called SCOT that needs to be configured
http://www.sap-basis-abap.com/sapbs035.htm
http://www.sap-img.com/basis/basis-faq.htm
http://help.sap.com/saphelp_nw2004s/helpdata/en/2b/d925bf4b8a11d1894c0000e8323c4f/frameset.htm -
Send IDOC from SAP system to IX but can't see any message in SXI_MONITOR
Hi all,
I have built up an XI system and configured an IDOC to IDOC scenario between two SAP Systems. After completed all configuration necessary:
1. Configuration on Source Side (SAP System that send IDOC) and on Target Side (SAP System that receive IDOC) is OK.
2. SLD is OK: Technical System and Business System are correct for these two SAP System.
3. Integration Repository: all designed Object is OK.
4. Integration Directory: all configuration is OK. "Test Configuration" Function is OK.
5. Runtime WorkBench: is OK. "Test Message" Function of "Integration Server" is OK.
In general, it is all OK.
But when i send an IDOC from SAP System Sour Side (Outbound IDOC from Source Side is OK), on the XI server i can't see any message in Tcode SXI_MONITOR. In this case, my XI server didn't receive any IDOC Message from this Source Side, and so that my XI server can't process and exchange any IDOC sent from Source Side.
Anyone can please help me to explain this problem: why my XI server can't receive any IDOC message from SAP System Source Side when all configuration is OK? Do anyone see the same case as this case?
Thanks a lot for all in advance,
Best regards,
Vinh voHi,
Possible checks
At R/3 side
1) Check in SMQ1 and SM58
At XI Side
1) Check in SMQ2 and IDX5
Check this
http://help.sap.com/saphelp_nw04/helpdata/en/6a/e6194119d8f323e10000000a155106/frameset.htm
Regards
Seshagiri -
QRFC/TRFC for sending idocs from SAP system to XI
Hi experts,
The standard program RFFOEDI1 generates payment orders - first PEXR2002 and then EUPEXR idocs. These idocs are to be sent to the bank from SAP through XI. Bank partner profile is maintained. But these idocs because of TRFC are not getting sent in the order in which they are generated by the SAP system. So I changed the bank partner profile settings from TRFC to QRFC and gave the rule name as first 16 of mes type. But the idocs are struck in the SAP system. Is there any standard program to be run to send the idocs out from SAP system or is it automatic.
Please suggest a standard method which is to be followed to send the idocs in the same order in which they are getting generated for the scenairo above.
Regards,
AshaHi Asha,
As you said Idocs are stucking,
To send Idocs to XI, you must have maintain some settings in XI to receive Idocs. Once they are done properly .in R3 side standard way to send idocs to XI is Maintaining<b> <i>Change Pointers</i></b> and shedule the programe to trigger that most of Standard idocs will have standard programs to catch change pointers and send them to external system.
and to maintain the same order of idocs there is a setting called Quality Of Service in XI side ,that option should be set to Exactly Once In Order .
Regards,
Ramesh. -
Aattach an existing Excel file to an email from SAP system.
Hi,
How can I attach an existing Excel file from SAP system (Example in 'DIR_TEMP' folder) & send a mail. Guess this requires a class with a method which picks up the file using the file path. Does CL_DOCUMENT_BCS provides this???? boz CL_DOCUMENT_BCS->ADD_DOCUMENT_AS_ATTACHMENT is for Add Existing Document as an Attachment,if so please let me know how with few lines of code??
Thankx in advance.* Local Data declarations
DATA: ls_rec TYPE somlreci1.
DATA: lp_send_request TYPE REF TO cl_bcs,
lp_document TYPE REF TO cl_document_bcs,
lp_sender TYPE REF TO if_sender_bcs,
lp_recipient TYPE REF TO if_recipient_bcs,
lp_bcs_exception TYPE REF TO cx_bcs.
DATA: lt_text TYPE soli_tab,
ls_text LIKE LINE OF lt_text,
lv_flag.
DATA: lt_tline TYPE TABLE OF tline.
DATA lv_receiver TYPE ad_smtpadr.
* DATA lt_attach TYPE soli_tab.
DATA ls_tline TYPE tline.
TRY.
* create persistent send request
lp_send_request = cl_bcs=>create_persistent( ).
* Get the text
IF iv_stxt IS NOT INITIAL.
CALL METHOD zfi_flexgl_common=>read_text
EXPORTING
iv_stxt = iv_stxt
IMPORTING
et_tline = lt_tline
ev_failed = ev_failed.
LOOP AT lt_tline INTO ls_tline.
APPEND ls_tline-tdline TO lt_text.
ENDLOOP.
ENDIF.
* create and set document
* create document from internal table with text
lp_document = cl_document_bcs=>create_document(
i_type = iv_format_type "'XLS' "HTM'
i_text = lt_text
i_subject = iv_msg_subj ).
IF it_attach IS NOT INITIAL.
* Add attachment
* DATA: l_size TYPE sood-objlen, " Size of Attachment
* l_lines TYPE i. " Lines count
* l_lines = LINES( it_attach ).
* l_size = l_lines * 255.
CALL METHOD lp_document->add_attachment
EXPORTING
i_attachment_type = 'RAW'
i_attachment_subject = 'My attachment'
* i_attachment_size = l_size
i_att_content_text = it_attach.
ENDIF.
* add document to send request
CALL METHOD lp_send_request->set_document( lp_document ).
* Sender addess
*l_sender = cl_sapuser_bcs=>create( sy-uname ).
*call method l_send_request->set_sender
* exporting
* i_sender = l_sender.
* LOOP AT it_rec INTO ls_rec.
lv_receiver = iv_rec.
TRY.
CALL METHOD cl_cam_address_bcs=>create_internet_address
EXPORTING
i_address_string = lv_receiver
RECEIVING
result = lp_recipient.
CATCH cx_address_bcs .
ENDTRY.
CALL METHOD lp_send_request->add_recipient
EXPORTING
i_recipient = lp_recipient
i_blind_copy = abap_true
i_express = abap_true.
* ENDLOOP.
IF sy-subrc <> 0.
ev_failed = abap_true.
EXIT.
ENDIF.
* ---------- send document ---------------------------------------
CALL METHOD lp_send_request->send(
RECEIVING
result = lv_flag ).
CATCH cx_send_req_bcs.
ev_failed = abap_true.
CATCH cx_document_bcs.
ev_failed = abap_true.
ENDTRY.
IF iv_commit = abap_true.
COMMIT WORK.
ENDIF. -
Hi Experts,
I am sending an email from ABAP program using the function module SO_NEW_DOCUMENT_ATT_SEND_API1. But, it is in pending when we see the transaction code SOST. In that T-code if we select that particular mail and press execution button, it is sent to the email id. Do we have any function module which will trigger the mail directly to mail server or to work with the tcode SOST. Do we have any other mechanism.
Thanks and regards,
VenkatHi
After calling the function module : SO_NEW_DOCUMENT_ATT_SEND_API1
check sy-subrc.
If it's 0,the code will sent the emails from SAP.
otherwise there will be the problem.
SOST will send the mails with some delay in some cases.
Regards,
Sreeram -
Send emails from SAP BPC is disabled?
Hello,
I want to send emails from the SAP BPC, I have configured everything. But I have read that this part is disabled in SAP BPC 5.1.
Is that true??
Thank you very much.
Pablo Mortera.Hi Pablo,
Are you talking about any specific emails to be generated from BPC or emails in general? For example, if you are alluding to automatic generation of emails to the owners of BPF or the reviewers of BPF, then that feature is available in BPC7M (Microsoft version of BPC7.0).
Regards
Pravin -
Send email from SAP to external
hi experts,
My code triggers Email from my SAP program to external Email ID.This functionality is working fine.
Below is a snippet of my code:
TRY.
Sender config
obj_send_request = cl_bcs=>create_persistent( ).
obj_sender = cl_sapuser_bcs=>create( sy-uname ).
obj_send_request->set_sender( i_sender = obj_sender ).
*Receiver config
obj_recipient =
cl_cam_address_bcs=>create_internet_address( 'ABC^GMAIL dot COM' ).
obj_send_request->add_recipient(
i_recipient = obj_recipient
i_copy = c_x " CC indicator
ENDTRY.
There are two issues I am facing now (basically required by client):
1: Need to have a string instead of "SY-UNAME" in the Sender address i.e. email should show 'ABC Corporation'
(I think this is not possible as System expects a valid Email ID.. Can anyone confirm this assumption???)
2: The receiver is getting the READ RECEIPT after reading the email. This has to be removed.
Any help would be highly appreciated.
ags.
Edited by: ags on Oct 26, 2009 9:35 AMHi,
CL_RECIPIENTS =
CL_CAM_ADDRESS_BCS=>CREATE_INTERNET_ADDRESS( WA_ADD_RECIPIENTS-SMTPADR ).
*- Add recipient with its respective attributes to send request
IF CL_RECIPIENTS IS NOT INITIAL.
CALL METHOD CL_EMAILERBCS->ADD_RECIPIENT
EXPORTING
I_RECIPIENT = CL_RECIPIENTS
I_EXPRESS = WA_ADD_RECIPIENTS-B_EXPRESS
I_COPY = WA_ADD_RECIPIENTS-B_COPY
I_BLIND_COPY = WA_ADD_RECIPIENTS-B_BLIND_COPY
I_NO_FORWARD = WA_ADD_RECIPIENTS-B_NO_FORWARD.
ENDIF.
This is the way how do I add recipients. Your user requirement is how do I will know the mail has sent or not to recipient rite ??
Regards,
Suneel G -
SAPCONNECT guide for sending Emails from BW System to Individual Email IDs
Hello Everybody,
If somebody can send me a pdf guide for SAPCONNECT inorder to configure Information Broadcasting in SAP BW for sending Emails to user's mail Id from BW system i will reward points to the helper for same if the help found useful as iam struggling for a pdf guide since long but couldnot find one ,not even over google,i dont need help site links ,i have tried them already ,they dont lay the exact procedure ,but a pdf guide ,my email id is [email protected] .
Regards,
SaumyaHello Vikash,
Plz check i have rewarded you points for this forum under very helpful answers.Kindly now plz help me with this matter:
I got ur document ,it was very helpful.Actually though i have already done most of these steps but i did all these steps all over again.Have u already made configuration for BW Information Broadcasting on your side because although i have done all these steps but wt happens is that the mails get collected in the SOST transaction and iam still not able to send mails and the error displayed is as :
Message cannot be transferred to node SMTP due to Connection Error .
Kindly please revert back to this error at earliest.
Regards,
saumya
Maybe you are looking for
-
1 account 3 devices game center question
Hi i have 3 devices 1ipad and 2 iphones, i want to sync all this devices so i use 1 the Same account (nothing wrong With this) but i can not use game center now to play games to each other because the same account... Can Some one help me please i Wil
-
How to Replace Null Value as 0 in an OBIEE11g Pivot Table? it's working 10g
Hi, How to Replace Null Value as 0 in an OBIEE11g Pivot Table? it's working in obiee10g version. We have tried below methods 1) criteria tab and edit the 'column properties' associated with your fact measure. Choose the 'Data Format' tab, tick to ove
-
Just wondering was going to purchase that new Mac Book and wanted to know if it can work with a rounter that has other windows computers on it.
-
My iphone does not display 4g in the top left of screen just EE.
As title. I have mobile data switched on. What else do I have to do?
-
Emacs, LaTeX: a path problem?
Hi, I've got two different boxes, [presumably] the same configuration (texlive, auctex); emacs configs shared via GitHub. It works fine on one box; on another it won't compile the same test file with message "LaTeX: problems after [0] pages". Google