powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle [игнор отключен] [закрыт для гостей] / присылать сообщение на почту с результатом в случае если 'not ok'
1 сообщений из 26, страница 2 из 2
присылать сообщение на почту с результатом в случае если 'not ok'
    #39459562
veep_in_office
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
yellowillow1989,

Если вам нужен механизм как слать сообщения на почту из Оракла то приблизительно вот так:

Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
   PROCEDURE send_message(subject in varchar2,mess in clob,to_address in varchar2,to_cc in varchar default null)
   IS
      header VARCHAR2 (1000);
      cc varchar2(128 Char);
      mail_conn UTL_SMTP.connection;
      len     INTEGER;
      ind   INTEGER;
      mess_len integer:=32767;
      m_mailhost varchar2(128 byte);
      m_sender varchar2(128 byte);
      m_from_mail_disp_name varchar2(128 byte);
   BEGIN
      m_mailhost:=get_sys_parameter('mailhost');
      m_sender:=get_sys_parameter('mail_sender');
      m_from_mail_disp_name:=get_sys_parameter('mail_disp_name');
      mail_conn := UTL_SMTP.open_connection (m_mailhost, 25);
      mail_conn.tx_timeout := 600;

      if to_cc is not null then
        cc:='Cc: '|| ' <'|| to_cc|| '>'|| CHR(13)||CHR(10);
      else
        cc:='';
      end if;
      UTL_SMTP.helo (mail_conn, m_mailhost);

      UTL_SMTP.mail (mail_conn, m_sender);
      UTL_SMTP.rcpt (mail_conn, to_address);
       header := 'From: '|| m_from_mail_disp_name ||' <'|| m_sender || '>' || CHR(13)||CHR(10)
         || 'To: '|| ' <'|| to_address|| '>'|| CHR(13)||CHR(10)||cc
         || 'Subject: '|| subject|| CHR(13)||CHR(10);
      UTL_SMTP.open_data (mail_conn);
      UTL_SMTP.write_data (mail_conn,'MIME-Version: ' || '1.0' || UTL_TCP.crlf);
      UTL_SMTP.write_data (mail_conn,'Content-Type: '||'text/html; charset=utf-8'||UTL_TCP.crlf);
      UTL_SMTP.write_data (mail_conn,'Content-Transfer-Encoding: '||'8bit'||UTL_TCP.crlf);
      UTL_SMTP.write_data (mail_conn, header);


        UTL_SMTP.write_data (mail_conn, UTL_TCP.crlf);
        len := DBMS_LOB.getlength(mess);
        ind := 1;

        WHILE ind <= len
        LOOP
            UTL_SMTP.write_data(mail_conn, DBMS_LOB.SUBSTR(mess, mess_len, ind));
            ind := ind + mess_len;
        END LOOP;


      UTL_SMTP.close_data (mail_conn);
      UTL_SMTP.quit (mail_conn);
   EXCEPTION
      when others then
          UTL_SMTP.quit(mail_conn);
          --log_error();
      raise;
   END;
...
Рейтинг: 0 / 0
1 сообщений из 26, страница 2 из 2
Форумы / Oracle [игнор отключен] [закрыт для гостей] / присылать сообщение на почту с результатом в случае если 'not ok'
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]