Send HTML email from C4C?
Hello Experts,
We are trying to email from the Event-BeforeSave of our BusinessPartner extension object. Emailing seems to work just fine (plain text or PDF attachment), until the moment we add HTML content.
This is the code that we currently are using:
// create email activity
elEmailRoot.Name.content = "Test HTML";
instEmail = EmailActivity.Create(elEmailRoot);
// add receiver
elEmailParty.PartyKey.PartyID.content = "<myemail>";
instEmail.MessageToParty.Create(elEmailParty);
//Create att folder
instEmailAttFld = instEmail.AttachmentFolder.Create();
//Add attachment (html body)
docName = "body.html";
doctype.content = "10001";
binaryObject.mimeCode = "text/html";
//binaryObject.content = Binary.ParseFromString( resultData.GetFirst().EmailTemplate );
binaryObject.content = Binary.ParseFromString("<html><head></head><body><div>test</div></body></html>");
instEmailAttFld.CreateFile(doctype, docName, docAltName, docDesc, binaryObject);
// send email
instEmail.Send();
Is there an error within my code or is it possible that the system is blocking HTML email? Thanks for your help!
Hi Alessandro,
I can confirm that with SDK 1408 the following code works:
elActivityRoot.TypeCode = "39"; // create Email
elActivityRoot.SubjectName = "Subject";
instActivity = Activity.Create(elActivityRoot);
elActivityParty.PartyName = "[email protected]";
instActivity.MessageToParty.Create(elActivityParty);
// Create a text of type "Body Text"
instActivityAttachm = instActivity.AttachmentFolder.Create();
elActivityAttachmDoc.VisibleIndicator = true;
elActivityAttachmDoc.MIMECode = "text/html";
elActivityAttachmDoc.Name = "body.html";
elActivityAttachmDoc.AlternativeName = "body.html";
elActivityAttachmDoc.CategoryCode = "2";
elActivityAttachmDoc.TypeCode.content = "10001";
instActivityAttachm.Document.Create(elActivityAttachmDoc);
var bin = Binary.ParseFromString( "<html><head></head><body><div>test <strong>HTML</strong>mail</div></body></html>" );
var doc = instActivityAttachm.Document.GetFirst();
var filecontent = doc.FileContent.Create();
filecontent.BinaryObject.content = bin;
instActivity.Send();
Thanks for your input!
Similar Messages
-
Need to send HTML email from Workflow : problem with sender
Hi all,
i need to send HTML email from my Workflow. I did it but i have a problem with the sender. The sender of email is always the agent responsible of workitem, and i don't want the receiver can answer to sender. So i need to put a false email address like nosender.at.mycustomer.com.
Possible to do that ?
Thanks for your help.
CheersHi rick
How to change the wf-batch to some other name as you mention in previous reply. Can you give some details of that. If i use the function module SO_NEW_DOCUMENT_ATT_SEND_API1 how to change the wf-batch name and if i use send mail step in my workflow how to change wf-batch name.
Regards
vijay -
Sending HTML emails from Outlook
I am a Mac user and only know how to send an HTML email from
Entourage. How do I send an HTML email created in Dreamweaver from
a PC that uses Microsoft Outlook?It's tricky in Outlook (Outlook Express lets you actually
edit the code directly if I recall correctly). But one clunky way
to do it regular Outlooks is to display your HTML page in your
browser. Not the source code, the resulting display page in a
normal browser window. Select all, copy, then paste into your HTML
format message in Outlook.
Keep in mind if you're sending this to more than 50 people or
so you stand a real good chance of getting that domain/IP black
listed. -
Can i send html emails from my Nokia 5530XM?
Hi,
I thought I had a font problem with the emails I sent but I´ve realized that emails sent from the phone are plain text with a UTF8 encoding.
Is there any way I can send html emails, maybe using a different font for sending then? I use the inbuilt messaging that came from the phone, i´ve read somewhere around there´s a Nokia email client application, but I don´t know where to find it, if it can be used on a Nokia 5530 and if it does, can both Messaging and email clients coexist?
Thanks in advance for your help and best regards,
L.According to AOL they support IE, Firefox, and Safari: http://help.aol.com/help/microsites/microsite.do?cmd=displayKC&docType=kc&extern alId=73451
Have you tried contacting there support to see if they are aware of the issue: http://help.aol.com/help/microsites/microsite.do -
Sending HTML email from outlook 2013 exchange it comes broken to non outlook clients.
Hi, when i send out email from my outlook 2013 where is configured Microsoft exchange account it comes broken to gmail clients. All html mail is broken and attachments comes like this file.jpg_ or adobe.pdf_ If i send mail to outlook user
all is good but if client uses something else , they receive broken mail.
Msg comes to gmail clients like this
http://community.office365.com/cfs-filesystemfile.ashx/__key/communityserver-components-userfiles/00-00-39-06-09-Attached+Files/4745.errror.jpg
Without signature and normal phone and email.
Client is using windows 8.1.
I started discussion here http://community.office365.com/en-us/forums/158/p/227602/704778.aspx#704778 but they sent me to your forum. You can read our discussion
and see what i did already.Hi,
Some question to help narrowing down the causes:
1. Does this issue occur when using Outlook to configure the Gmail account, does the format change?
2. Does this issue also occur when sending HTML emails to other remote domains?
If the emails is fine when opening them on Outlook, it think Exchange does not change anything on the email. The issue occurs depends on how email clients open the email.
Thanks,
Simon Wu
TechNet Community Support -
How to Send HTML Email from Webpage?
Hi Everyone!
I'm Looking to Send Emails with an Option to Send Text Format (from textfile on Webserver, ex. textfile.txt) or HTML Format (from webpage on Web Server, example: test.html).
I will include My Current Code at the end of this Q.
What Code will I need to use to create the Option, extract the data from the .txt file Or HTML File, and send the Content in the Body of the E-mail?
Also, how can I send the e-mails (both HTML and/or Text Format) to Multiple Recipients by adding the names into the '$email' textbox on the current form?
Thanks in Advance!Which class are u using for the same purpose ?
-
Hi,
We've successfully sent plain text email from our AIR application using navigateToUrl and the mailto protocol to launch the user's default email program, but if we try to use html markup in the body it gets sent as plain text.
Is there any way to send an html email with navigateToUrl, or do we have to use an SMTP mailer? If the latter, is there support in AIR / Flex for SMTP, or do you have to use a 3rd party actionscript library?
Thanks,
GregHi Greg,
It sounds like your email client is defaulting to plain text, maybe there's an option that would allow you to send emails as html? Also, is the email body in encoded html? Not sure how that encoding/decoding would be done using mailto links.
AIR can do socket communication, so you could directly communicate with an SNTP server. However you might want to look into third party libraries such as this one, to speed up your development time.
Chris
Ps. I don't have any experience with that third party library, maybe someone else with experience doing this could recommend other solutions. -
Sending HTML email with SO_DOCUMENT_SEND_API1
Hi all,
I have implemented a function module to send HTML emails with SO_DOCUMENT_SEND_API1.
It works fine, but in every email I have at the end a CRLF which looks not very nice in MS Outlook.
It seems that this will be added to every email in addition to my HTML text.
Has anyone an idea how I can prevent this?
Thanks in advance for your help.
Best Regards,
MarcelHi Marcel,
not only you can, you should use CL_BCS for sending of email. Although I expect it to be not too different from the old functions, it points to the object oriented future of SAP/ABAP. At least it should run more stable and SAP recommends to use it as a replacement for old functions.
I came across one blog
[Sending HTML Email from SAP CRM/ERP|http://www.sdn.sap.com/irj/scn/weblogs;jsessionid=%28J2EE3417300%29ID2058700050DB10227264795501776639End?blog=/pub/wlg/2273]
You may be careful with this one: Probably it's not exactly what you need.
The one I love most for its simplicity is this one
[Unknown thus unloved?|http://www.sdn.sap.com/irj/scn/weblogs;jsessionid=%28J2EE3417300%29ID2058700050DB10227264795501776639End?blog=/pub/wlg/3443]
although it does not mention HTML - I think easy for you to adapt. Compared to functional SO_DOCUMENT.. approach the program will shrink.
If you want to understand the concepts behind, nobody explains it better than
[Thomas Jung: Sending E-Mail from ABAP - Version 610 and Higher - BCS Interface|http://www.sdn.sap.com/irj/scn/weblogs;jsessionid=%28J2EE3417300%29ID2058700050DB10227264795501776639End?blog=/pub/wlg/789]
or - if you still feel unsafe in oo environment -
[Sending E-Mail from ABAP - Version 610 and Higher - BCS Interface|http://www.sdn.sap.com/irj/scn/weblogs;jsessionid=%28J2EE3417300%29ID2058700050DB10227264795501776639End?blog=/pub/wlg/15408]
Happy coding!
Regards,
Clemens -
Sending Unicode HTML email from Oracle
Dear All,
How we can send the HTML email from Oracle in Unicode format (I am using Arabic Language, to be specific). So far I have tried the following solutions (using utl_smpt) without any success (either i see junk characters in the email or see question marks). Would you please help me in solving this?
Options Tried*
Option 1
SQL> ed
Wrote file afiedt.buf
1 CREATE OR REPLACE PROCEDURE p_send_mail_test (
2 sender IN VARCHAR2,
3 recipient IN VARCHAR2,
4 subj IN VARCHAR2,
5 message IN VARCHAR2)
6 IS
7 mailhost VARCHAR2(30) := '<smtp Server>';
8 c utl_smtp.connection;
9 PROCEDURE send_header( name IN VARCHAR2, header IN VARCHAR2) AS
10 BEGIN
11 utl_smtp.write_data(c, name || ': ' || header || utl_tcp.CRLF);
12 END;
13 BEGIN
14 c := utl_smtp.open_connection(mailhost,25);
15 utl_smtp.helo(c, mailhost);
16 utl_smtp.mail(c, sender);
17 utl_smtp.rcpt(c, recipient);
18 utl_smtp.open_data(c);
19 send_header('From', sender);
20 send_header('To', recipient);
21 -- If you need to send mail to more than one receipient, uncomment the
22 -- following line(s) as appropriate. Please don't forget the ","
23 -- in the "To" line before the next receipient's email id. You can't
24 -- use a comma separated list in the receipient parameter.
25 -- For variable number of "To"'s and "Cc"'s have multiple calls to
26 -- "send_header" function inside a cursor for loop.
27 -- Similar comments apply for "Cc" too.
28 -- send_header('To', ',<email@domain>');
29 send_header('Cc', ',<email@domain>');
30 send_header('Subject', subj);
31 utl_smtp.write_data(c, utl_tcp.CRLF || message);
32 utl_smtp.close_data(c);
33 utl_smtp.quit(c);
34 EXCEPTION
35 WHEN utl_smtp.transient_error OR utl_smtp.permanent_error THEN
36 utl_smtp.quit(c);
37 raise_application_error(-20000,
38 'Failed to send mail due to the following error: ' || sqlerrm);
39* END;
SQL>
SQL> /
Procedure created.
SQL> ed
Wrote file afiedt.buf
1 declare
2 email_text varchar2(2000);
3 contract_end_date_v date := sysdate;
4 name_v varchar2(200) := 'Riaz';
5 begin
6 email_text :='<br/><div align="right"><font size="4"><b>السيد '||name_v||' المحترم</b><br/><br/> يرجى التكرم بالعلم أن العقد الخاص بكم سينتهي بتاريخ ' || to_char(contract_end_date_v,'dd-mm-yyyy')||'<br/>. وعليه يرجـى التكـرم بإفادة إدارة الموارد البشرية في حال عدم رغبتكم بتجديد العقد خلال مدة أقصها أسبوعين من اليوم وذلك للأهمية القصوى <br/>.ولكم جزيل الشكر والتقدير </font></div>';
7 p_send_mail_test('<email@domain>','<email@domain>','Hello',email_text);
8* end;
SQL> /
PL/SQL procedure successfully completed.
Result_
<div align="right"><font size="4"><b>????? Riaz ???????</b>
???? ?????? ?????? ?? ????? ????? ??? ?????? ?????? 12-07-2011
.???? ???? ????? ???????? </font></div>
[Question marks along with all tags; this OTN page is converting that to HTML output]
Option2
SQL> ed
Wrote file afiedt.buf
1 create or replace procedure html_email(
2 p_to in varchar2,
3 p_from in varchar2,
4 p_subject in varchar2,
5 p_text in varchar2 default null,
6 p_html in varchar2 default null
7 )
8 is
9 l_boundary varchar2(255) default 'a1b2c3d4e3f2g1';
10 l_connection utl_smtp.connection;
11 l_body_html clob := empty_clob; --This LOB will be the email message
12 l_offset number;
13 l_ammount number;
14 l_temp varchar2(32767) default null;
15 l_smtp_hostname varchar2(50) := '<smtp Server>';
16 begin
17 l_connection := utl_smtp.open_connection( l_smtp_hostname, 25);
18 utl_smtp.helo( l_connection, l_smtp_hostname );
19 utl_smtp.mail( l_connection, p_from );
20 utl_smtp.rcpt( l_connection, p_to );
21 l_temp := l_temp || 'MIME-Version: 1.0' || chr(13) || chr(10);
22 l_temp := l_temp || 'To: ' || p_to || chr(13) || chr(10);
23 l_temp := l_temp || 'From: ' || p_from || chr(13) || chr(10);
24 l_temp := l_temp || 'Subject: ' || p_subject || chr(13) || chr(10);
25 l_temp := l_temp || 'Reply-To: ' || p_from || chr(13) || chr(10);
26 l_temp := l_temp || 'Content-Type: multipart/alternative; boundary=' ||
27 chr(34) || l_boundary || chr(34) || chr(13) ||
28 chr(10);
29 ----------------------------------------------------
30 -- Write the headers
31 dbms_lob.createtemporary( l_body_html, false, 10 );
32 dbms_lob.write(l_body_html,length(l_temp),1,l_temp);
33 ----------------------------------------------------
34 -- Write the text boundary
35 l_offset := dbms_lob.getlength(l_body_html) + 1;
36 l_temp := '--' || l_boundary || chr(13)||chr(10);
37 l_temp := l_temp || 'content-type: text/plain;charset=utf-8' ||
38 chr(13) || chr(10) || chr(13) || chr(10);
39 dbms_lob.write(l_body_html,length(l_temp),l_offset,l_temp);
40 ----------------------------------------------------
41 -- Write the plain text portion of the email
42 l_offset := dbms_lob.getlength(l_body_html) + 1;
43 dbms_lob.write(l_body_html,length(p_text),l_offset,p_text);
44 ----------------------------------------------------
45 -- Write the HTML boundary
46 l_temp := chr(13)||chr(10)||chr(13)||chr(10)||'--' || l_boundary ||
47 chr(13) || chr(10);
48 l_temp := l_temp || 'content-type: text/html;charset=utf-8' ||
49 chr(13) || chr(10) || chr(13) || chr(10);
50 l_offset := dbms_lob.getlength(l_body_html) + 1;
51 dbms_lob.write(l_body_html,length(l_temp),l_offset,l_temp);
52 ----------------------------------------------------
53 -- Write the HTML portion of the message
54 l_offset := dbms_lob.getlength(l_body_html) + 1;
55 dbms_lob.write(l_body_html,length(p_html),l_offset,p_html);
56 ----------------------------------------------------
57 -- Write the final html boundary
58 l_temp := chr(13) || chr(10) || '--' || l_boundary || '--' || chr(13);
59 l_offset := dbms_lob.getlength(l_body_html) + 1;
60 dbms_lob.write(l_body_html,length(l_temp),l_offset,l_temp);
61 ----------------------------------------------------
62 -- Send the email in 1900 byte chunks to UTL_SMTP
63 l_offset := 1;
64 l_ammount := 1900;
65 utl_smtp.open_data(l_connection);
66 while l_offset < dbms_lob.getlength(l_body_html) loop
67 utl_smtp.write_data(l_connection,
68 dbms_lob.substr(l_body_html,l_ammount,l_offset));
69 l_offset := l_offset + l_ammount ;
70 l_ammount := least(1900,dbms_lob.getlength(l_body_html) - l_ammount);
71 end loop;
72 utl_smtp.close_data(l_connection);
73 utl_smtp.quit( l_connection );
74 dbms_lob.freetemporary(l_body_html);
75* end;
SQL> /
Procedure created.
SQL> ed
Wrote file afiedt.buf
1 declare
2 email_text varchar2(2000);
3 contract_end_date_v date := sysdate;
4 name_v varchar2(200) := 'Riaz';
5 begin
6 email_text :='<br/><div align="right"><font size="4"><b>السيد '||name_v||' المحترم</b><br/><br/> يرجى التكرم بالعلم أن العقد الخاص بكم سينتهي بتاريخ ' || to_char(contract_end_date_v,'dd-mm-yyyy')||'<br/>. وعليه يرجـى التكـرم بإفادة إدارة الموارد البشرية في حال عدم رغبتكم بتجديد العقد خلال مدة أقصها أسبوعين من اليوم وذلك للأهمية القصوى <br/>.ولكم جزيل الشكر والتقدير </font></div>';
7 html_email(p_to=>'<email@domain>',p_from=>'<email@domain>',p_subject=>'Hello',p_text=>'Hi', p_html=>email_text);
8* end;
SQL> /
PL/SQL procedure successfully completed.
Result*
????? Riaz ???????
???? ?????? ?????? ?? ????? ????? ??? ?????? ?????? 12-07-2011
Option3
SQL> ed
Wrote file afiedt.buf
1 create or replace procedure p_html_email_riaz(
2 p_to in varchar2,
3 p_from in varchar2,
4 p_subject in varchar2,
5 p_text in varchar2 default null,
6 p_html in varchar2 default null
7 )
8 is
9 l_boundary varchar2(255) default 'a1b2c3d4e3f2g1';
10 l_connection utl_smtp.connection;
11 l_body_html clob := empty_clob; --This LOB will be the email message
12 l_offset number;
13 l_ammount number;
14 l_temp varchar2(32767) default null;
15 l_smtp_hostname varchar2(50) := '<smtp Server>';
16 begin
17 l_connection := utl_smtp.open_connection( l_smtp_hostname, 25);
18 utl_smtp.helo( l_connection, l_smtp_hostname );
19 utl_smtp.mail( l_connection, p_from );
20 utl_smtp.rcpt( l_connection, p_to );
21 l_temp := l_temp || 'MIME-Version: 1.0' || chr(13) || chr(10);
22 l_temp := l_temp || 'To: ' || p_to || chr(13) || chr(10);
23 l_temp := l_temp || 'From: ' || p_from || chr(13) || chr(10);
24 l_temp := l_temp || 'Subject: ' || p_subject || chr(13) || chr(10);
25 l_temp := l_temp || 'Reply-To: ' || p_from || chr(13) || chr(10);
26 l_temp := l_temp || 'Content-Type: multipart/alternative; boundary=' ||
27 chr(34) || l_boundary || chr(34) || chr(13) ||
28 chr(10);
29 ----------------------------------------------------
30 -- Write the headers
31 dbms_lob.createtemporary( l_body_html, false, 10 );
32 dbms_lob.write(l_body_html,length(l_temp),1,l_temp);
33 ----------------------------------------------------
34 -- Write the text boundary
35 l_offset := dbms_lob.getlength(l_body_html) + 1;
36 l_temp := '--' || l_boundary || chr(13)||chr(10);
37 l_temp := l_temp || 'content-type: text/plain; charset=UTF-8' ||
38 chr(13) || chr(10) || chr(13) || chr(10);
39 dbms_lob.write(l_body_html,length(l_temp),l_offset,l_temp);
40 ----------------------------------------------------
41 -- Write the plain text portion of the email
42 /**
43 l_offset := dbms_lob.getlength(l_body_html) + 1;
44 dbms_lob.write(l_body_html,length(p_text),l_offset,p_text);
45 **/
46 ----------------------------------------------------
47 -- Write the HTML boundary
48 l_temp := chr(13)||chr(10)||chr(13)||chr(10)||'--' || l_boundary ||
49 chr(13) || chr(10);
50 l_temp := l_temp || 'content-type: text/html;' ||
51 chr(13) || chr(10) || chr(13) || chr(10);
52 l_offset := dbms_lob.getlength(l_body_html) + 1;
53 dbms_lob.write(l_body_html,length(l_temp),l_offset,l_temp);
54 ----------------------------------------------------
55 -- Write the HTML portion of the message
56 l_offset := dbms_lob.getlength(l_body_html) + 1;
57 dbms_lob.write(l_body_html,length(p_html),l_offset,p_html);
58 ----------------------------------------------------
59 -- Write the final html boundary
60 l_temp := chr(13) || chr(10) || '--' || l_boundary || '--' || chr(13);
61 l_offset := dbms_lob.getlength(l_body_html) + 1;
62 dbms_lob.write(l_body_html,length(l_temp),l_offset,l_temp);
63 ----------------------------------------------------
64 -- Send the email in 1900 byte chunks to UTL_SMTP
65 l_offset := 1;
66 l_ammount := 1900;
67 utl_smtp.open_data(l_connection);
68 while l_offset < dbms_lob.getlength(l_body_html) loop
69 utl_smtp.write_raw_data(l_connection,
70 utl_raw.cast_to_raw(
71 dbms_lob.substr(l_body_html,l_ammount,l_offset ) ) );
72 l_offset := l_offset + l_ammount ;
73 l_ammount := least(1900,dbms_lob.getlength(l_body_html) - l_ammount);
74 end loop;
75 utl_smtp.close_data(l_connection);
76 utl_smtp.quit( l_connection );
77 dbms_lob.freetemporary(l_body_html);
78* end;
SQL>
SQL> /
Procedure created.
SQL> ed
Wrote file afiedt.buf
1 declare
2 email_text varchar2(2000);
3 contract_end_date_v date := sysdate;
4 name_v varchar2(200) := 'Riaz';
5 begin
6 email_text :='<br/><div align="right"><font size="4"><b>السيد '||name_v||' المحترم</b><br/><br/> يرجى التكرم بالعلم أن العقد الخاص بكم سينتهي بتاريخ ' || to_char(contract_end_date_v,'dd-mm-yyyy')||'<br/>. وعليه يرجـى التكـرم بإفادة إدارة الموارد البشرية في حال عدم رغبتكم بتجديد العقد خلال مدة أقصها أسبوعين من اليوم وذلك للأهمية القصوى <br/>.ولكم جزيل الشكر والتقدير </font></div>';
7 p_html_email_riaz(p_to=>'<email@domain>',p_from=>'<email@domain>',p_subject=>'Hello',p_text=>'Hi', p_html=>email_text);
8* end;
SQL> /
PL/SQL procedure successfully completed.
Result*
GaSmO Riaz GacMJQc
mQLl GaJ_Qc HGaZac Cd GaZ^O GaNGU H_c SmdJem HJGQmN 12-07-2011
. fZame mQL\l GaJ_\Qc HE]GOI EOGQI GacfGQO GaHTQmI ]m MGa ZOc Q[HJ_c HJLOmO GaZ^O NaGa cOI C^UeG CSHfZmd cd Gamfc fPa_ aaCecmI Ga^Ufl
.fa_c LRma GaT_Q fGaJ^OmQ
*Option4*
[code]
SQL> ed
Wrote file afiedt.buf
1 CREATE OR REPLACE PROCEDURE send_email_html_test(
2 pi_from IN Varchar,
3 pi_to IN VARCHAR,
4 pi_cc IN Varchar,
5 pi_subj IN VARCHAR,
6 pi_msg CLOB
7 )
8 IS
9 conn utl_smtp.connection;
10 lv_mailhost varchar2(1000);
11 lv_port number;
12 BEGIN
13 lv_mailhost := '<smtp Server>';
14 lv_port := 25;
15 conn := utl_smtp.open_connection(lv_mailhost, lv_port);
16 utl_smtp.helo(conn, lv_mailhost);
17 utl_smtp.mail(conn, pi_from);
18 utl_smtp.rcpt(conn, pi_to);
19 IF pi_cc is not null THEN
20 utl_smtp.rcpt(conn, pi_cc);
21 END IF;
22 utl_smtp.open_data(conn);
23 utl_smtp.write_data(conn, 'MIME-version: 1.0' || utl_tcp.CRLF);
24 utl_smtp.write_data(conn, 'Content-Type: text/html; charset=iso-8859-6' ||
25 utl_tcp.CRLF);
26 utl_smtp.write_data(conn, 'Content-Transfer-Encoding: 8bit' ||
27 utl_tcp.CRLF);
28 utl_smtp.write_data(conn, 'From:' ||pi_from || utl_tcp.CRLF);
29 utl_smtp.write_data(conn, 'To:' ||pi_to || utl_tcp.CRLF);
30 utl_smtp.write_data(conn, 'Cc:' ||pi_cc || utl_tcp.CRLF);
31 utl_smtp.write_data(conn, 'Reply-To:' ||pi_from || utl_tcp.CRLF);
32 utl_smtp.write_data(conn, 'Subject:' ||pi_subj|| utl_tcp.CRLF);
33 utl_smtp.write_data(conn, utl_tcp.crlf);
34 utl_smtp.write_raw_data(conn, utl_raw.cast_to_raw(pi_msg));
35 utl_smtp.close_data(conn);
36 utl_smtp.quit(conn);
37 EXCEPTION WHEN others THEN
38 dbms_output.put_line(sqlerrm);
39* END;
40 /
Procedure created.
SQL> ed
Wrote file afiedt.buf
1 declare
2 email_text varchar2(2000);
3 contract_end_date_v date := sysdate;
4 name_v varchar2(200) := 'Riaz';
5 begin
6 email_text :='
<div align="right"><font size="4"><b>السيد '||name_v||' المحترم</b>
يرجى التكرم بالعلم أن العقد الخاص بكم سينتهي بتاريخ ' || to_char(contract_end_date_v,'dd-mm-yyyy')||'
. وعليه يرجـى التكـرم بإفادة إدارة الموارد البشرية في حال عدم رغبتكم بتجديد العقد خلال مدة أقصها أسبوعين من اليوم وذلك للأهمية القصوى
.ولكم جزيل الشكر والتقدير </font></div>';
7 send_email_html_test('<email@domain>',
8 '<email@domain>',
9 '<email@domain>',
10 'Hello',email_text);
11* end;
SQL> /
PL/SQL procedure successfully completed.
Result*
Riaz افكحترك
ٍرجٌ افترك بافغفك أل افغد افخاص بك سٍلتمٍ بتارٍخ 12-07-2011
. نغفٍم ٍرجٌ افترك بإادة إدارة افكنارد افبشرٍة ٍ حاف غدك ربتك بتجدٍد افغد خفاف كدة أصما أسبنغٍل كل افٍنك نذف ففأمكٍة افصنٌ
.نفك جزٍف افشر نافتدٍر
Option5
SQL> ed
Wrote file afiedt.buf
1 CREATE OR REPLACE PROCEDURE send_mail_test1 (p_to IN VARCHAR2,
2 p_from IN VARCHAR2,
3 p_subject IN VARCHAR2,
4 p_text_msg IN VARCHAR2 DEFAULT NULL,
5 p_html_msg IN VARCHAR2 DEFAULT NULL,
6 p_smtp_host IN VARCHAR2,
7 p_smtp_port IN NUMBER DEFAULT 25)
8 AS
9 l_mail_conn UTL_SMTP.connection;
10 l_boundary VARCHAR2(50) := '----=*#abc1234321cba#*=';
11 BEGIN
12 l_mail_conn := UTL_SMTP.open_connection(p_smtp_host, p_smtp_port);
13 UTL_SMTP.helo(l_mail_conn, p_smtp_host);
14 UTL_SMTP.mail(l_mail_conn, p_from);
15 UTL_SMTP.rcpt(l_mail_conn, p_to);
16 UTL_SMTP.open_data(l_mail_conn);
17 UTL_SMTP.write_data(l_mail_conn, 'Date: ' || TO_CHAR(SYSDATE, 'DD-MON-YYYY HH24:MI:SS') || UTL_TCP.crlf);
18 UTL_SMTP.write_data(l_mail_conn, 'To: ' || p_to || UTL_TCP.crlf);
19 UTL_SMTP.write_data(l_mail_conn, 'From: ' || p_from || UTL_TCP.crlf);
20 UTL_SMTP.write_data(l_mail_conn, 'Subject: ' || p_subject || UTL_TCP.crlf);
21 UTL_SMTP.write_data(l_mail_conn, 'Reply-To: ' || p_from || UTL_TCP.crlf);
22 UTL_SMTP.write_data(l_mail_conn, 'MIME-Version: 1.0' || UTL_TCP.crlf);
23 UTL_SMTP.write_data(l_mail_conn, 'Content-Type: multipart/alternative; boundary="' || l_boundary || '"' || UTL_TCP.crlf || UTL_TCP.crlf);
24 IF p_text_msg IS NOT NULL THEN
25 UTL_SMTP.write_data(l_mail_conn, '--' || l_boundary || UTL_TCP.crlf);
26 UTL_SMTP.write_data(l_mail_conn, 'Content-Type: text/plain; charset="utf-8"' || UTL_TCP.crlf || UTL_TCP.crlf);
27 UTL_SMTP.write_data(l_mail_conn, p_text_msg);
28 UTL_SMTP.write_data(l_mail_conn, UTL_TCP.crlf || UTL_TCP.crlf);
29 END IF;
30 IF p_html_msg IS NOT NULL THEN
31 UTL_SMTP.write_data(l_mail_conn, '--' || l_boundary || UTL_TCP.crlf);
32 UTL_SMTP.write_data(l_mail_conn, 'Content-Type: text/html; charset="utf-8"' || UTL_TCP.crlf || UTL_TCP.crlf);
33 UTL_SMTP.write_data(l_mail_conn, p_html_msg);
34 UTL_SMTP.write_data(l_mail_conn, UTL_TCP.crlf || UTL_TCP.crlf);
35 END IF;
36 UTL_SMTP.write_data(l_mail_conn, '--' || l_boundary || '--' || UTL_TCP.crlf);
37 UTL_SMTP.close_data(l_mail_conn);
38 UTL_SMTP.quit(l_mail_conn);
39* END;
SQL> /
Procedure created.
SQL> ed
Wrote file afiedt.buf
1 declare
2 email_text varchar2(2000);
3 contract_end_date_v date := sysdate;
4 name_v varchar2(200) := 'Riaz';
5 begin
6 email_text :='<br/><div align="right"><font size="4"><b>السيد '||name_v||' المحترم</b><br/><br/> يرجى التكرم بالعلم أن العقد الخاص بكم سينتهي بتاريخ ' || to_char(contract_end_date_v,'dd-mm-yyyy')||'<br/>. وعليه يرجـى التكـرم بإفادة إدارة الموارد البشرية في حال عدم رغبتكم بتجديد العقد خلال مدة أقصها أسبوعين من اليوم وذلك للأهمية القصوى <br/>.ولكم جزيل الشكر والتقدير </font></div>';
7 send_mail_test1('<email@domain>',
8 '<email@domain>',
9 'Hello',
10 'msg',
11 email_text,
12 '<smtp Server>',
13 25);
14* end;
SQL> /
PL/SQL procedure successfully completed.
Result*
????? Riaz ???????
???? ?????? ?????? ?? ????? ????? ??? ?????? ?????? 12-07-2011
.???? ???? ????? ????????I worked with Oracle support and was able to find solution. The helping document ids were: 752309.1 & 404389.1
-
Send BW query results as HTML email from ABAP program
I have published a code sample for sending BW query results as HTML email from ABAP program. if you have any questions or clarification, please post them here.
the same can be accessed from this link.
http://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/b7658119-0a01-0010-39a9-b600c816f370
Regards
Raja
Message was edited by: Durairaj Athavan RajaOK forget about my earlier post.
do the following changes.
declare the following variables:
data: xtext type standard table of solix .
DATA: atta_sub TYPE sood-objdes .
after the call of FM SCMS_STRING_TO_FTEXT add the following code.
CALL FUNCTION 'SO_SOLITAB_TO_SOLIXTAB'
EXPORTING
ip_solitab = text
IMPORTING
EP_SOLIXTAB = xtext .
and after the following statement
document = cl_document_bcs=>create_document(
i_type = 'HTM'
i_text = text
i_length = conlengths
i_subject = subject ).
add the following code
CALL METHOD document->add_attachment
EXPORTING
i_attachment_type = 'htm'
i_attachment_subject = atta_sub
i_att_content_hex = xtext.
now you will have results both in the body as well as attachment. (this is for test you can remove one of them )
Regards
Raja -
How do i send a html email from office outlook web access?
how do i send a html email from office outlook web access?
glenholmes,
You've come to the right place for help. Sorry to hear that you have had hard time with your Gmail app lately. What steps have you tried to get this to work? We want to ensure that you are able to start sending those messages right away.
ErinW_VZW
Follow us on Twitter @VZWSupport -
Sending an email from a servlet
Hi Guys,
Im trying to send an email from a servlet. I am using the following code:
IMPORTING LIBRARIES
import java.util.*;
import java.io.*;
import javax.servlet.http.*;
import javax.servlet.*;
//importing JDBC
import java.sql.*;
//email
import java.net.*;
import java.text.*; // Used for date formatting.
BEGIN CLASS
public class Email3 extends HttpServlet
private Socket smtpSocket = null;
private DataOutputStream os = null;
private DataInputStream is = null;
public void doPost (HttpServletRequest req, HttpServletResponse res)
throws ServletException, IOException
PrintWriter out = res.getWriter();
OUTPUT TAGS FOR WEBPAGE
out.println("<html>");
out.println("<head>");
out.println("<title>FYP</title>");
out.println("</head>");
out.println("<body>");
out.println("<center>");
send email
//Date dDate = new Date();
//DateFormat dFormat = _
//DateFormat.getDateInstance(DateFormat.FULL,Locale.US);
String m_sHostName="localhost";
int m_iPort=25;
try
{ // Open port to server
smtpSocket = new Socket(m_sHostName, m_iPort);
os = new DataOutputStream(smtpSocket.getOutputStream());
is = new DataInputStream(smtpSocket.getInputStream());
if(smtpSocket != null && os != null && is != null)
{ // Connection was made. Socket is ready for use.
out.println("Connection was made. Socket is ready for use.");
//[ Code to send email will be placed in here. ]
try
{ os.writeBytes("HELLO\r\n");
// You will add the email address that the server
// you are using know you as.
os.writeBytes("MAIL From: <[email protected]>\r\n");
// Who the email is going to.
os.writeBytes("RCPT To: <[email protected]>\r\n");
//IF you want to send a CC then you will have to add this
os.writeBytes("RCPT Cc: <[email protected]>\r\n");
// Now we are ready to add the message and the
// header of the email to be sent out.
os.writeBytes("DATA\r\n");
os.writeBytes("X-Mailer: Via Java\r\n");
//os.writeBytes("DATE: " + dFormat.format(dDate) + "\r\n");
os.writeBytes("From: Me <[email protected]>\r\n");
os.writeBytes("To: YOU <[email protected]>\r\n");
//Again if you want to send a CC then add this.
os.writeBytes("Cc: CCDUDE <[email protected]>\r\n");
//Here you can now add a BCC to the message as well
//os.writeBytes("RCPT Bcc: BCCDude<[email protected]>\r\n");
String sMessage = "Your subjectline.";
os.writeBytes("Subject: Your subjectline here\r\n");
os.writeBytes(sMessage + "\r\n");
os.writeBytes("\r\n.\r\n");
os.writeBytes("QUIT\r\n");
// Now send the email off and check the server reply.
// Was an OK is reached you are complete.
String responseline;
while((responseline = is.readLine())!=null)
{ // System.out.println(responseline);
out.println("responseline= "+responseline+"<br>");
if(responseline.indexOf("Ok") != -1)
//out.println("responseline"+responseline);
break;
catch(Exception e)
{ System.out.println("Cannot send email as an error occurred.");
out.println("Cannot send email as an error occurred.");
catch(Exception e)
{ System.out.println("Host " + m_sHostName + "unknown"); }
out.println("</center>");
out.println("</body>");
out.println("</html>");
out.close();
}//end class
it compiles fine, the connection was made ok but im not receiving the email. When the email is sent off the server reply does not seem to be Ok, as the print statement i tried there is not being executed. When i print the content of my responseline= variable before the if statement i get the following:
Connection was made. Socket is ready for use. responseline= 220 centaur.elec.qmul.ac.uk ESMTP Exim 3.16 #2 Thu, 09 Jan 2003 15:54:34 +0000
responseline= 500 Command unrecognized
responseline= 250 is syntactically correct
responseline= 550 relaying to prohibited by administrator
responseline= 500 Command unrecognized
responseline= 503 No recipient(s).
responseline= 500 Command unrecognized
responseline= 500 Command unrecognized
responseline= 500 Command unrecognized
responseline= 500 Command unrecognized
responseline= 500 Command unrecognized
responseline= 500 Command unrecognized
responseline= 500 Command unrecognized
responseline= 500 Command unrecognized
responseline= 221 Closing connection. Good bye.
Can anyone help?
Is there an easier way to send an email from a servlet?
Thanks
tzafIt's not a matter of "easier way" to send mail from servlet...you are missing a crucial element in your code: authorization to send mail. You need something like this (some of which you have already so note what is different):
Properties properties = new Properties();
properties.put("mail.smtp.host", String3 );
properties.put("mail.smtp.dsn.notify", "SUCCESS" );
properties.put("mail.smtp.host", "mailservernamegoeshere");
properties.put("mail.smtp.auth", "true");
MyAuthenticator auth = new MyAuthenticator();
auth.setUser("user whos account you want to use goes here");
auth.setPassword("user password goes here");
Session session = Session.getDefaultInstance( properties,auth );Here is the auth class:
class MyAuthenticator extends Authenticator {
protected String m_strUser = null;
protected String m_strPassword = null;
protected PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication(m_strUser,m_strPassword);
public void setUser(String strUser) {
m_strUser = strUser;
public void setPassword(String strPassword) {
m_strPassword = strPassword; -
How to send HTML email to End User using OOTB email processs?
Hi,
We are using OOTB Send email process to send email to end user.
Templates has been created inside /etc/workflow/ProjectName/email folder.
Its working properly for plain text email.but for html template ,It send the email with html tags.
Any pointer on how to write html template for OOTB email process and activate email type as html ?
Thanks
DeepikaThanks Sham..
I am able to send HTML email following above link.
The problem i am facing is,When i am deploying the code through crxde.Code is working fine.
But using maven deploy..Bundle get activated ..But at line:
messageGateway = this.messageGatewayService.getGateway(HtmlEmail.class);
,it gives null Pointer exception.
Any pointer,why its not working from maven deployment.
Regards
Deepika -
How to send html email notification in bpel
hi gurus,
i want to send html email notification from bpel.
before, i already successful send html email with attachment, but when i send an email without attachment, then the body message will turn into a plain text.
as i check from the email accepted, email with attachment will have a mime type "text/html" but if no attachment then it will be "text/plain"
from the bpel configuration, by default the mime type already set to "text/html; charset=UTF-8", below is the sample configuration in my bpel process
[quote]
<copy>
<from>string('text/html; charset=UTF-8')</from>
<to variable="varNotificationReq"
part="EmailPayload">
<query>ns10:Content/ns10:MimeType</query>
</to>
</copy>
[/quote]
i think this suppose to be a easy configuration, but i'm not sure whether i miss something in configuration the email process or this is a bugs in bpel.
environment:
linux
jdev 11.1.1.6
do u guys ever facing a same problem or have a solution to this ? please throw some light.
thanks
===
update, i found a temporary solutions.
so i add a attachment from the process design, and then i change it from the source.
[quote]
<copy>
<from>
<literal>
<Content xmlns="http://xmlns.oracle.com/ias/pcbpel/NotificationService">
<MimeType xmlns="http://xmlns.oracle.com/ias/pcbpel/NotificationService">multipart/alternative</MimeType>
<ContentBody xmlns="http://xmlns.oracle.com/ias/pcbpel/NotificationService">
<MultiPart xmlns="http://xmlns.oracle.com/ias/pcbpel/NotificationService">
<BodyPart xmlns="http://xmlns.oracle.com/ias/pcbpel/NotificationService">
<MimeType xmlns="http://xmlns.oracle.com/ias/pcbpel/NotificationService"/>
<ContentBody xmlns="http://xmlns.oracle.com/ias/pcbpel/NotificationService"/>
<BodyPartName xmlns="http://xmlns.oracle.com/ias/pcbpel/NotificationService"/>
</BodyPart>
</MultiPart>
</ContentBody>
</Content>
</literal>
</from>
<to variable="varNotificationReq"
part="EmailPayload">
<query>ns10:Content</query>
</to>
</copy>
<copy>
<from>string('text/html; charset=UTF-8')</from>
<to variable="varNotificationReq"
part="EmailPayload">
<query>ns10:Content/ns10:ContentBody/ns10:MultiPart/ns10:BodyPart[1]/ns10:MimeType</query>
</to>
</copy>
<copy>
<from>string('your message')</from>
<to variable="varNotificationReq"
part="EmailPayload">
<query>ns10:Content/ns10:ContentBody/ns10:MultiPart/ns10:BodyPart[1]/ns10:ContentBody</query>
</to>
</copy>
[/quote]
make sure you put the mime type multipart/alternative into the email payload content. by default, when you add attachment, it will generate mime type multipart mixed automatically.
if you don't change it to multipart/alternative, your email will show a attachment, but actually your email doesn't contain any attachment.
and then for the message and mimetype make sure you have that ns10:bodypart, because this email already been set as a multipart email.
when you add attachment, by default it will generate 2 body part, first one is for the body message and the second one is for the attachment. since i only want to use the body message only, then i have to erase the second bodypart
with this workaround, i can send a html email without attachment perfectly.
but i have to take note, when i updating the email process from process design, then the source will be generated again automatically, and the edited one will be replaced.
thanks.Make sure you upload all of the images used in your email to a server you control. Then, change your image paths to point to those uploaded images with absolute links.
You will get marked as spam if you attempt to send images as attachments to a large list of recipients and most email clients won't download images to begin with, so make sure your html email makes sense with broken pictures.
CSS support is spotty across email clients, if you use css, make sure it's inline, not embedded in the <head> or externally linked in the <head>. Some email clients strip out the <head> section entirely.
Basically, you need to design your html email as if you haven't moved out of the 90's yet, as far as web design is concerned, in order to get maximum cross client compatibility.
Then, when you're ready, I would suggest using a service like www.icontact.com or www.constantcontact.com if your subscriber list is anywhere over 100 or so recipients. -
Cgiemail and sending html emails
Anyone out there know how to send an html email
using cgiemail? From what I have found on web there needs to be
something special in the header???? I know how to send just .txt
emails but client wants to send html email regardless how much I
warned them on spam and html emails. Any help would be greatly
appreciated. I have exhausted my search for the answer on the web
other than it can be done.
Thanks bunches! skhYou will need to do your homework.
Look at the properties (headers) of an html email you
received.
Read the SMTP RFCs.
Test your email through programs like Spam Assassin.
Test your email in various email programs.
Good luck.
-Rb
Maybe you are looking for
-
Using XML to generate site structure
Well. I'll describe my problem in brief. I want to generate XML in my servlets and then perform XSL-transformation. This allows me to separate data from the representation. For example: <menu> <item name="Home">http://nome.com</item> </menu>and the
-
500 Internal Server Error after deploying several times
Hello everyone. I originally had an issue with SOA not running as a service due to some issue with Windows Server 2003 and custom installation. I'm not entirely sure that problem is fixed, but unsure if it could be related to this issue. The problem
-
Have purchased a new computer but can not install elements 12 since it has been installed on an older laptop. This is a one time user program, is there a code that can be put in or a small fee to pay to be able to use the program again. Never insta
-
1Z0-045: Oracle Database 10g: New Features for Oracle 8i OCPs
Hi, I was looking for right reference book for the 1z0-045 upgrade certification. I could not find any reference book that is related to this certification. Only one book have found out on Amazon site, which is "OCP Oracle Database 10g: New Features
-
Hi all... Am currently in the process of building an online store, the database is a MySQL database, and I originally was going to do the whole thing in PHP... But have started to look into building it in Flex as an option... I have posted on a heap