Send mail from PL/SQL with an attachment
Hi,
Can any body help me on how to send a mail from PL/SQL with an attachment which is located on a unix system path.
This is an urgent requirement in my current project. Any quick reply would be greatly appreciated.
Thanks
Kumar.
Quick reply (too bad you didn't mention your DB-version):
Check the docs @ http://tahiti.oracle.com regarding packages UTL_SMTP and UTL_MAIL
Check http://asktom.oracle.com/pls/asktom/asktom.search?p_string=%22mail+attachment%22
Check http://www.oracle.com/technology/sample_code/tech/pl_sql/htdocs/Utl_Smtp_Sample.html
Check http://www.oracle-base.com/articles/10g/PlsqlEnhancements10g.php#UTL_MAIL
Similar Messages
-
Sending Mail from PL/SQL.
Hi folks,
I'm trying to send mail from PL/SQL (Database) with the help of UTL_SMTP.
The pre-requisites for doing this are
1) TCP/IP network.
2) SMTP installation and accesibilty
3) Oracle JServer installation.
How do I check whether my database is having these three pre-requisites.
Please bail me out from this problem.
Your favour will be deeply appreciated.
Cheers, PCZ.Hi,
There nothing such prerequites, just u contact ur net admin team to relase your
SMTP port in association with your empid id. and chk the port no 25 is also relased.
And creating the procedure for sending mails. Refer the following link.
http://asktom.oracle.com/pls/ask/f?p=4950:8:::::F4950_P8_DISPLAYID:1739411218448
Cheers , Hope this will do
Nirmal Kumar -
Reg : Sending mails from PL/SQL
Hello,
I've written the following code for sending mails from PL/SQL.
But the application gets hanged during compilation itself. Could
any of u please tell me why it's happening and what is wrong in
this and suggest me how to do it ??????
CREATE OR REPLACE PROCEDURE SEND_MAIL
IS
msg_from varchar2(50) := '[email protected]';
msg_to varchar2(50) := '[email protected]';
msg_subject varchar2(100) := 'E-Mail message from your database';
msg_text varchar2(1000) := '';
c utl_tcp.connection;
rc integer;
BEGIN
c := utl_tcp.open_connection('172.16.48.1', 80); -- open the
SMTP
dbms_output.put_line(utl_tcp.get_line(c, TRUE));
rc := utl_tcp.write_line(c, 'HELO localhost');
dbms_output.put_line(utl_tcp.get_line(c, TRUE));
rc := utl_tcp.write_line(c, 'MAIL FROM: '||msg_from);
dbms_output.put_line(utl_tcp.get_line(c, TRUE));
rc := utl_tcp.write_line(c, 'RCPT TO: '||msg_to);
dbms_output.put_line(utl_tcp.get_line(c, TRUE));
rc := utl_tcp.write_line(c, 'DATA'); -- Start message body
dbms_output.put_line(utl_tcp.get_line(c, TRUE));
rc := utl_tcp.write_line(c, 'Subject: '||msg_subject);
rc := utl_tcp.write_line(c, '');
rc := utl_tcp.write_line(c, msg_text);
rc := utl_tcp.write_line(c, '.'); -- End of message body
dbms_output.put_line(utl_tcp.get_line(c, TRUE));
rc := utl_tcp.write_line(c, 'QUIT');
dbms_output.put_line(utl_tcp.get_line(c, TRUE));
utl_tcp.close_connection(c); -- Close the connection
EXCEPTION
when others then
raise_application_error(-20000,'Unable to send e-mail message
from pl/sql');
END;
Awaiting for ur reply,
Thanks in Advance...
SrinivasFUNCTION Send_Mail ( sender IN VARCHAR2
, recipient IN VARCHAR2
, subject IN VARCHAR2
, message IN VARCHAR2)
RETURN BOOLEAN IS
lv_mailhost VARCHAR2(30) := 'mailserver';
l_mail_conn utl_smtp.connection;
lv_crlf VARCHAR2(2):= CHR( 13 ) || CHR( 10 );
BEGIN
l_mail_conn := utl_smtp.open_connection ( lv_mailhost
, 25);
utl_smtp.helo ( l_mail_conn
, lv_mailhost);
utl_smtp.mail ( l_mail_conn
, sender);
utl_smtp.rcpt ( l_mail_conn
, recipient);
utl_smtp.open_data (l_mail_conn);
utl_smtp.write_data ( l_mail_conn
, 'From: '
|| sender
|| lv_crlf);
utl_smtp.write_data ( l_mail_conn
, 'To: '
|| recipient
|| lv_crlf);
utl_smtp.write_raw_data ( l_mail_conn
utl_raw.cast_to_raw ( 'Subject:'
|| subject
|| lv_crlf));
utl_smtp.write_raw_data ( l_mail_conn
utl_raw.cast_to_raw ( lv_crlf
|| message));
utl_smtp.close_data(l_mail_conn);
utl_smtp.quit(l_mail_conn);
RETURN TRUE;
EXCEPTION
WHEN OTHERS
THEN
RETURN FALSE;
END; -
Sending mail from JSP page with attachment
I have a requirement to send mail with attachment from my jsp pages, which should come to a particular mail box. Can any one help me by sending sample codes. Thankx in advance.
hi,
When request is posted you have to save file data from request to a file. you can not access the data using request.getParameter("file"). -
Why i can't send "MAIL FROM:"?
i wonder why i failed to send "MAIL FROM:" while commnunicating with the server using SMTP protocol?
my code is:
socket = new java.net.Socket(strServer, 25);
dis = new java.io.DataInputStream(socket.getInputStream());
dos = new java.io.DataOutputStream(socket.getOutputStream());
//send Mail from command to the server
dos.writeBytes("MAIL FROM: " + "[email protected]" + "\r\n");
response = readLastLine(dis); //get the last line of the reply
if (!response.startsWith("250")) { //if ok, response should starts with
//250, otherwise, wrong
destroyResource(socket, dis, dos);
return;
when i debug the program, i found the response starts with "500"
i don't know why?
can somebody give me the answer?Wouldn't it be easier to just use the JavaMail API rather than
writing your own SMTP protocol support?
What message does the server include with its response? -
How we send email from pl/sql
i want 2 send mail from pl/sql??
plz tell me bout d coding related to this.
i really appreciated ur help.Try the pl/sql code below.
create or replace PROCEDURE send_test_message
IS
mailhost VARCHAR2(64) := '191.168.251.207'; -- ip address of the mail server.
sender VARCHAR2(64) := '[email protected]';
recipient VARCHAR2(64) := '[email protected]';
mail_conn utl_smtp.connection;
BEGIN
mail_conn := utl_smtp.open_connection(mailhost, 25);
utl_smtp.helo(mail_conn, mailhost);
utl_smtp.mail(mail_conn, sender);
utl_smtp.rcpt(mail_conn, recipient);
utl_smtp.open_data(mail_conn);
utl_smtp.write_data(mail_conn, 'Your leave is Cancelled due to xyz...reason ' || chr(13));
utl_smtp.write_data(mail_conn, 'This is line 2.' || chr(13));
utl_smtp.close_data(mail_conn);
utl_smtp.quit(mail_conn);
EXCEPTION
WHEN OTHERS THEN
-- Insert error-handling code here
NULL;
END; -
Problem in sending mail from database with attachment
Hi All,
I amd using forms10g,oracle10g
I am facing a error while running a procedure to send mail from db
procedure is:
declare
ErrorMessage VARCHAR2(4000);
ErrorStatus NUMBER;
-- enable SQL*PLUS output;
--SET SERVEROUTPUT ON
-- redirect java output into SQL*PLUS buffer;
--exec dbms_java.set_output(5000);
BEGIN
ErrorStatus := SendMailJPkg.SendMail(
SMTPServerName => '192.168.4.2',
Sender => '[email protected]',
Recipient => '[email protected]',
CcRecipient => '',
BccRecipient => '',
Subject => 'hth106: Test JavaMail',
Body => 'This is the body: Hello, this is a test that spans 2 lines',
AuthReqdYNNum => 1,
UserID => 'jagan',
Password => 'songbirds',
ErrorMessage => ErrorMessage,
Attachments => SendMailJPkg.ATTACHMENTS_LIST('C:\oramail\MHTHSO_GEN45.html')
END;
while running this procedure i am receiving following error
"ORA-29532: Java call terminated by uncaught Java exception:
java.lang.IncompatibleClassChangeError"
but the same procedure sending mail from all other user in the same database
I am very myuch confused.i have given the all rights
below mentioned rights are given .it is working in all other user on the same db except this user "hth106". And all the othere things are compared between working user and this hth106 user every things are same.But i am receiving error when i sending mail with attachment if the mail is sending without attachement it is working fine
below rights are given to this user
1.exec dbms_java.grant_permission('HTH106','java.util.PropertyPermission','*','read');
2.exec dbms_java.grant_permission('HTH106','java.util.PropertyPermission','*','write');
3.exec dbms_java.grant_permission('HTH106','java.net.SocketPermission','*','connect');
4.exec dbms_java.grant_permission('HTH106','java.net.SocketPermission','*','resolve');
5.exec dbms_java.grant_permission('HTH106','java.io.FilePermission','C:\oramail\*','read');
exec dbms_java.grant_permission('HTH106','java.io.FilePermission','C:\oramail\*','write');
6.call dbms_java.grant_permission('HTH106','java.net.SocketPermission','HTHDS01','resolve');
7.call dbms_java.grant_permission('HTH106','java.util.PropertyPermission','*','read,write');
7.call dbms_java.grant_permission('HTH106', 'java.io.FilePermission','C:\oramail\*','read');
please advise me to proceed further
Thanks in advance
Thanks ,
AntonyWith respects to the following:
The bit you'll have most diffulty with is the attachment, because you can't be sure that
the directory path specified is one that the database can read from. You can probably
resolve this by using some java to move the file to a directory which utl_file can see.Another alternative is to specify a location on then database server where all file attachments MUST be copied to and the define and Oracle DIRECTORY (CREATE OR REPLACE DIRECTORY [dir_name] AS '/dir/name/on/files/system';) that references this location. When you attach a file to an email, then you only have to refer to the DIRECTORY for the file location.
Just my 2 cents on the topic. :-)
Craig... -
Sending mail from servers with non-ASCII names
As part of an effort to internationalize our product we're testing on machines with host names that include non-ASCII characters (accented e's and whatnot). When trying to send mail from these machines we're getting:
javax.mail.MessagingException: 501 5.5.4 Invalid Address
at com.sun.mail.smtp.SMTPTransport.issueCommand(SMTPTransport.java:1634)
at com.sun.mail.smtp.SMTPTransport.helo(SMTPTransport.java:1068)
at com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:458)
at javax.mail.Service.connect(Service.java:291)
at javax.mail.Service.connect(Service.java:172)
at javax.mail.Service.connect(Service.java:121)
at javax.mail.Transport.send0(Transport.java:190)
at javax.mail.Transport.send(Transport.java:120)
at msgsendsample.main(msgsendsample.java:86)
Looking at a network trace I see the EHLO command being sent as
EHLO test[0xe9][0xdf]\r\n
where the machine name is testéß. From a Unicode table 0xe9 0xdf = é ß.
I found a reference from RFC 5336 (SMTP Extension for Internationalized Email Addresses) that says the hostname in the EHLO must be in the form of ACE (ASCII-compatible encoding) labels:
3.7.1. The Initial SMTP Exchange
When an SMTP connection is opened, the server normally sends a
"greeting" response consisting of the 220 response code and some
information. The client then sends the EHLO command. Since the
client cannot know whether the server supports UTF8SMTP until after
it receives the response from EHLO, any domain names that appear in
this dialogue, or in responses to EHLO, MUST be in the hostname form,
i.e., internationalized ones MUST be in the form of ACE labels.
ACE encoding for my machine would be: java.net.IDN.toASCII("test4éß") --> "xn--testss-eva".
I'm not sure if this RFC applies in this case - I didn't know anything about the guts of SMTP until yesterday - but it makes sense that you'd need to escape the hostname in the EHLO until you can negotiate capabilities.
Looking at the JavaMail API it seems that if I were to call SMTPTransport.helo(String domain) myself without going through the higher-level Transport class that maybe I could work around the issue, but I haven't looked into it enough to know if that's feasible.
Is anyone familiar with this problem? I'm using JavaMail 1.4.2 on Windows 2003 and Exchange as my SMTP server.
thanks,
EricSame problem here (or at least in part). Some .mac folders did no longer show any messages, while they were there and could be seen online and with Thunderbird. After your remark I changed the name of a folder which contained a "´" and now it works. It is really strange because there is another folder with a "¨" in it which does not work (I will test if the name change works with this folder as well in a minute) whilst there is another one with such name which works fine. The update really messed up Mail and in Dutch we just use such characters so Mail without supporting them will be rather useless for me...
-
Cant send mail from i phone 3s, with a tiscali account
I can no longer send mail from my tiscali mail account on my i phone 3s, or my ipad without going through web mail account. please can anyone advise
Isn't mail.virgin.net the name of the Incoming Server -- the incoming server, which you say is working is set up at Mail Preferences/Accounts/Account Information as to name of the server, Username, and password, along with entries in Mail Preferences/Accounts/Advanced for Port select for the Incoming.
However, if that is working for you, you must have it correct. For the Outgoing server, isn't the proper name for Virgin services smtp.virgin.net? In Mail Preferences/Accounts/Account Information, click on the arrows beside the name of the SMTP, and choose Edit Server List. Remove all, or all but one of any references to the smtp.virgin.net. Enter anew, or with the remaining server, click on the Advanced Tab there, and choose Use Custom Ports. Then enter the Custom Port to be Port 25, and set the Authentication to None, and have no entries in Username or Password. This is consistent with those specs I can online saying the SMTP does not require Authentication.
Also click Use this server only. Now if the smtp.virgin.net server is online, it should work.
Ernie -
Sending E-Mail from PL/SQL
I have used Oracle 9i (9.2.0.1) on windows Xp machine. I want to send e-mail
from PL/SQL procedure.
I execuete the procedure as follows friom SQL prompt in SCOTT user..
execute prc_send_mail('[email protected]','[email protected]','Test message');
before that I create the procedure in scott user and it is created successfully in scott user..
Procedue is as follows...
CREATE OR REPLACE PROCEDURE prc_send_mail (p_sender IN VARCHAR2,
p_recipient IN VARCHAR2,
p_message IN VARCHAR2)
as
l_mailhost VARCHAR2(255) := 'mail.yahoo.com';
l_mail_conn utl_smtp.connection;
BEGIN
l_mail_conn := utl_smtp.open_connection(l_mailhost, 25);
utl_smtp.helo(l_mail_conn, l_mailhost);
utl_smtp.mail(l_mail_conn, p_sender);
utl_smtp.rcpt(l_mail_conn, p_recipient);
utl_smtp.open_data(l_mail_conn );
utl_smtp.write_data(l_mail_conn, p_message);
utl_smtp.close_data(l_mail_conn );
utl_smtp.quit(l_mail_conn);
end;
unfortunately i have receiveed some error which I mentioned below...
ERROR at line 1:
ORA-29278: SMTP transient error: 421 Service not available
ORA-06512: at "SYS.UTL_SMTP", line 17
ORA-06512: at "SYS.UTL_SMTP", line 96
ORA-06512: at "SYS.UTL_SMTP", line 138
ORA-06512: at "SCOTT.PRC_SEND_MAIL", line 9
ORA-06512: at line 1.
Please anyone giove me the solution..> ORA-29278: SMTP transient error: 421 Service not available
Not an Oracle error. This is the SMTP server telling you to go and get stuffed. It does not want to talk to you.
See http://www.faqs.org/rfcs/rfc821.html.
The RFC says that this type of response code can be for example when the SMTP server is about to shutdown - thus informing the client that it cannot be serviced.
But seeing that you're trying to hijack mail.yahoo.com as your SMTP server.. I'm not surprise that the server is giving you the bird. -
Send mail to list group with PL/SQL
I have a source code for sending mails using PL/SQL, but when I tried to put a group list name it doesn't work.
For example I have a group list called "several" this is the name of the group which mail addres is [email protected]
When I send a mail to [email protected] also the message must be sent to this directions [email protected], [email protected], [email protected], which are the email adresses that belong to the group calle "several", when I try to send to this group the message is not sent.
As you know when you are try to send with outlook, firebird, etc and you write the name of the contact or group, because is most easier than write the email address.
Do you have some source code for sending mail?
This source code must send mails when in the TO parameter contains the name of the contact o name of group contacts without have to write the email address. I have do it in Java but I need to know if is posible in PL/SQL.
Best Regards
Edited by: Erik Dguez. Ant. on Mar 25, 2009 8:57 AMHello Erik Dguez,
for example...
Create OR Replace Procedure PRC_SEND_MAIL( pSender IN Varchar2
, pRecipients IN Varchar2
, pSubject IN Varchar2
, pBody IN Varchar2 ) Is
vConn Utl_Smtp.connection;
vReply Utl_Smtp.reply;
vRcpt Varchar2(128);
vRcpts Varchar2(2000);
Begin
vReply := Utl_Smtp.Open_Connection( 'smtp.domain.com', 25, vConn, 60 );
vReply := Utl_Smtp.Helo( vConn, 'domain.com' );
vReply := Utl_Smtp.Mail( vConn, pSender || '@domain.com', Null);
vRcpts := pRecipients;
If Substr(vRcpts,Length(vRcpts),1) <> ';' Then
vRcpts := vRcpts || ';';
End If;
Loop
vRcpt := Trim(Substr(vRcpts,1,InStr(vRcpts,';') - 1));
vRcpts := Trim(Substr(vRcpts ,InStr(vRcpts,';') + 1));
vReply := Utl_Smtp.Rcpt( vConn,vRcpt,Null );
If vRcpts Is Null Then
Exit;
End If;
End Loop;
vReply := Utl_Smtp.Data(vConn,'Subject: ' || pSubject || chr(13) || chr(10) || pBody);
Utl_Smtp.Quit(vConn);
End;Hope this helps
Christian Balz -
Sending a mail from Orale APEX with File Attachments
Hi All,
I want one solution, i need to send a mail from my application with HTMLDB_MAIL.SEND package and i need to know wheather we can send a mail with file attachments in APEX,if it is possible then how can i send,Can any body please help me with this.
Thanksdil84 wrote:
Hi All,
I want one solution, i need to send a mail from my application with HTMLDB_MAIL.SEND package and i need to know wheather we can send a mail with file attachments in APEX,if it is possible then how can i send,Can any body please help me with this.
ThanksEmail attachments arrived with Apex version 3.1. -
Function module to send mail from SAP
Can any one please tell the Function module to send mail from SAP. The scenario is like this,I have a file in local system that i have to send to a particular mail address like [email protected] through a report program.
Hi shafiq,
1. There is some trick involved
in the binary files.
2. I have made a program (and it works fantastic)
ONLY 6 LINES FOR EMAILING
BELIEVE ME
ITS A FANTASTIC PROGRAM.
IT WILL WORK LIKE OUTLOOK EXPRESS !
3. The user is provided with
a) file name
b) email address to send mail
and it sends ANY FILE (.xls,.pdf .xyz..)
Instantaneously !
4. Make two things first :
1. Include with the name : ZAMI_INCLFOR_MAIL
2. Report with the name : ZAM_TEMP147 (any name will do)
3. Activate both and execute (2)
4. After providing filename, email adress
5. Code for Include :
10.08.2005 Amit M - Created
Include For Mail (First Req F16)
Modification Log
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
CODE FOR PROGRAM
5.
REPORT zam_temp147 .
INCLUDE zami_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
regards,
amit m. -
Sending mail from using utl_smtp error......
Hi
When i try to send mail like as follows
DECLARE
v_connection UTL_SMTP.CONNECTION;
BEGIN
v_connection := UTL_SMTP.OPEN_CONNECTION('xxx.xxx.xxx.xxx',25);
UTL_SMTP.HELO(v_connection,'xxx.xxx.xxx.xxx');
UTL_SMTP.MAIL(v_connection,'[email protected]');
UTL_SMTP.RCPT(v_connection,'[email protected]');
UTL_SMTP.DATA(v_connection,'Sent From PL/SQL');
UTL_SMTP.QUIT(v_connection);
END;
I get the following error..
ERROR at line 1:
ORA-29278: SMTP transient error: 421 Service not available
ORA-06512: at "SYS.UTL_SMTP", line 17
ORA-06512: at "SYS.UTL_SMTP", line 96
ORA-06512: at "SYS.UTL_SMTP", line 138
ORA-06512: at line 4
if i send mail from outlook it goes...the configuration is like this
in mail properties general tab
email address : [email protected]
and i have to tick mark the "include this account when receiving mail or synchro" option
in servers tab
POP3 : xxx.xxx.xxx.xxx
smtp : xxx.xxx.xxx.xxx
and i have to tick the "My server requires authentication" option
and have to give the setting for that also
ie. log on using account : [email protected]
password: xxxxxx
How to Correct it ?
Krisi am on the same platform and in same account..... and PL/SQL UTL_SMTP gets a connection plus SMTP error, while telnet cannot even get a connection. A very weird one. Not sure what the problem can be.
Worse case, forget telnet and do all your troubleshooting using UTL_SMTP.. with liberal usage of DBMS_OUTPUT. :-)
regd. the connection from my xp client it is
connecting to the telnet server on server, but when i
tri to connect to the ISP's smtp address it throws
the errorNot that strange. You're likely going through a proxy of sorts of to reach the ISP mail server. Besides, to send mail you should be able to use your company's SMTP server as it should route Internet e-mail out to the net automatically.
In fact, many SMTP servers will not allow you to relay via them. E.g. if you connect from domain 1 to SMTP server on domain 2, and you submit an e-mail to be delivered to domain 3, the domain 2 server will tell you to take a hike. It will only accept mail that is destined for its own domain or originating from its own domain.
Reason for this is spam. Open relays are one of the prime reasons for having billions of spam mails being transmitted.
The correct method will be for you on domain 1 to connect to domain 1's SMTP server and submit an e-mail to be delivered to domain 3. That will be accepted and delivered. Using domain 2 as an intermediate agent to act as a relay, is/should not be accepted by all SMTP servers. (your SMTP server should get blacklisted/blackholed if it has an open relay) -
Sending mail from one Sap system to another
Hi all,
plz explain me how can i send mail from one SAP system to other SAP system.
Thanks in advance
VenkatHai Venkat
Go through the following Code
DATA: OBJPACK LIKE SOPCKLSTI1 OCCURS 2 WITH HEADER LINE.
DATA: OBJHEAD LIKE SOLISTI1 OCCURS 1 WITH HEADER LINE.
DATA: OBJBIN LIKE SOLISTI1 OCCURS 10 WITH HEADER LINE.
DATA: OBJTXT LIKE SOLISTI1 OCCURS 10 WITH HEADER LINE.
DATA: RECLIST LIKE SOMLRECI1 OCCURS 5 WITH HEADER LINE.
DATA: DOC_CHNG LIKE SODOCCHGI1.
DATA: TAB_LINES LIKE SY-TABIX.
DATA L_NUM(3).
Creation of the document to be sent
File Name
DOC_CHNG-OBJ_NAME = 'SENDFILE'.
Mail Subject
DOC_CHNG-OBJ_DESCR = 'Delivered Mail'.
Mail Contents
OBJTXT = 'Object text'.
APPEND OBJTXT.
DESCRIBE TABLE OBJTXT LINES TAB_LINES.
READ TABLE OBJTXT INDEX TAB_LINES.
DOC_CHNG-DOC_SIZE = ( TAB_LINES - 1 ) * 255 + STRLEN( OBJTXT ).
Creation of the entry for the compressed document
CLEAR OBJPACK-TRANSF_BIN.
OBJPACK-HEAD_START = 1.
OBJPACK-HEAD_NUM = 0.
OBJPACK-BODY_START = 1.
OBJPACK-BODY_NUM = TAB_LINES.
OBJPACK-DOC_TYPE = 'RAW'.
APPEND OBJPACK.
Creation of the document attachment
LOOP AT ITAB_DATA.
CONCATENATE ITAB_DATA-PRODUCTOR
ITAB_DATA-VBELN
ITAB_DATA-POSNR
ITAB_DATA-MATNR INTO OBJBIN.
APPEND OBJBIN.
ENDLOOP.
DESCRIBE TABLE OBJBIN LINES TAB_LINES.
OBJHEAD = 'ORDERS'.
APPEND OBJHEAD.
Creation of the entry for the compressed attachment
OBJPACK-TRANSF_BIN = 'X'.
OBJPACK-HEAD_START = 1.
OBJPACK-HEAD_NUM = 1.
OBJPACK-BODY_START = 1.
OBJPACK-BODY_NUM = TAB_LINES.
OBJPACK-DOC_TYPE = 'TXT'.
OBJPACK-OBJ_NAME = 'WEBSITE'.
OBJPACK-OBJ_DESCR = 'ORDERS.TXT'.
OBJPACK-DOC_SIZE = TAB_LINES * 255.
APPEND OBJPACK.
Completing the recipient list
target recipent
clear RECLIST.
RECLIST-RECEIVER = '[email protected]'.
RECLIST-EXPRESS = 'X'.
RECLIST-REC_TYPE = 'U'.
APPEND RECLIST.
copy recipents
clear RECLIST.
RECLIST-RECEIVER = '[email protected]'.
RECLIST-EXPRESS = 'X'.
RECLIST-REC_TYPE = 'U'.
RECLIST-COPY = 'X'.
APPEND RECLIST.
Sending the document
CALL FUNCTION 'SO_NEW_DOCUMENT_ATT_SEND_API1'
EXPORTING
DOCUMENT_DATA = DOC_CHNG
TABLES
PACKING_LIST = OBJPACK
OBJECT_HEADER = OBJHEAD
CONTENTS_BIN = OBJBIN
CONTENTS_TXT = OBJTXT
RECEIVERS = RECLIST
EXCEPTIONS
TOO_MANY_RECEIVERS = 1
DOCUMENT_NOT_SENT = 2
OPERATION_NO_AUTHORIZATION = 4
OTHERS = 99.
Thanks & regards
Sreenivasulu P
Maybe you are looking for
-
Hierarchy where a single Child has been assigned to multiple Parents
Hi BPC guru, I encountered error "Dimension members 30000010 has multiple parents in PARENTH1" when loading GL hierarchy from BW to BPC. This GL account 30000010 is configured to display in both asset(debit) and liabilities(credit) side in ECC. There
-
I have two Apple Ids. My first iphone was set with the icloud id that I don't use anymore. I cannot delete that account because I cannot remember the password. I tried to reset and the security questions come back incorrect, which they are not, and
-
Why don't colours display correctly in the viewer
why don't colours display correctly in the viewer
-
Hide the submit button programatically
Hi Friends, i have standard page , in that, submit button is rendering programatically,i want to hide that submit button. do i need to extend standard controller to hide the submit button? here below code i have to hide the Activate button. can any o
-
Hi We are having a Sun Ultra 2 workstation loaded with Sun os 10 06/06. We keep getting this error message : the file just loaded does not seem to be executable. Previously, we reload the os to resolve this error, but it is time comsuming. Does anyon