powered by simpleCommunicator - 2.0.30     © 2024 Programmizd 02
Map
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Передача письма с вложением. Готовое решение
25 сообщений из 274, страница 10 из 11
Передача письма с вложением. Готовое решение
    #39179455
Ljucius11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
bounce messageLjucius11и я лучше промолчупоздно метаться, уже сказал.

Того требует заказчик
...
Рейтинг: 0 / 0
Передача письма с вложением. Готовое решение
    #39183272
Ljucius11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ljucius11bounce messageпропущено...
поздно метаться, уже сказал.

Того требует заказчик

Тем более что он не умеет настраивать почтовый сервер, приходится делать кастыли
...
Рейтинг: 0 / 0
Передача письма с вложением. Готовое решение
    #39192246
chameleon82
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
6eper,

Добрый день. Пока не реализовал (
...
Рейтинг: 0 / 0
Передача письма с вложением. Готовое решение
    #39246126
fadeevpv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
chameleon82,

День добрый , подскажите , мне нужно просто отправлять почту по срабатыванию процесса !

хочу попробовать ваш скрипт что мне лучше всего забрать а что убрать ? http://www.sql.ru/forum/1216064-a/apex-4-2-i-otpravka-pochty-iz-prilozheniya

спасибо !
...
Рейтинг: 0 / 0
Передача письма с вложением. Готовое решение
    #39247805
chameleon82
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
fadeevpv,
День добрый. Пакет устанавливается и работает независимо. Так что забирайте целиком :)
...
Рейтинг: 0 / 0
Передача письма с вложением. Готовое решение
    #39247838
blkangel
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
chameleon82fadeevpv,
День добрый. Пакет устанавливается и работает независимо. Так что забирайте целиком :)

Ну как же независимо. Зависит от UTL_SMTP, UTL_TCP. на которые надо дать разрешения. :)
...
Рейтинг: 0 / 0
Передача письма с вложением. Готовое решение
    #39294001
ikonst
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Может быть кому-то пригодиться, ну и мне чтобы не забыть.

Для работы через SSL можно использовать утилиту stunnel.org. MAIL_PKG делает коннект к localhost:1925, stunnel оборачивает его в SSL и отправляет на нужный адрес - smtp.yandex.ru:465.

stunnel.conf:
...
[ssmtp]
accept = 1925
connect = smtp.yandex.ru:465

Настройка stunnel зависит от ОС и требует некоторых действий.
...
Рейтинг: 0 / 0
Передача письма с вложением. Готовое решение
    #39327278
A_Karetnikov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем доброго дня!
Сломал себе голову, мне необходимо отправлять результат запроса на соответствующий email с помощью процедуры в pl/sql
Процедура ниже
Код: 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.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
procedure unica_sms_report_forward
as 
  p_to           VARCHAR2(30) := 'vasya@yandex.ru;
  p_from         VARCHAR2(30) := 'oracle@yandex.ru';
  p_subject      VARCHAR2(300) := 'Ежедневный отчет';
  p_text_msg     VARCHAR2(50) := 'Сформирован новый отчет';
  p_attach_name  VARCHAR2(50) := 'Отчет по доставленным смс '|| TO_CHAR(SYSDATE, 'DD-MON-YYYY') ||'.xls';
  p_attach_mime  VARCHAR2(200) := 'application/octet-stream';
  p_attach_clob  CLOB := 'Наименование компании'||chr(9)||'Дата формирования'||chr(9)||'Сформированные смс на'||chr(9)||'Доставлено';
  p_smtp_host    VARCHAR2(30):= 'mail.yandex.ru' ; --'192.168.110.230'; -- local database host
  p_smtp_port    NUMBER DEFAULT 25;
  l_mail_conn   UTL_SMTP.connection;
  l_boundary    VARCHAR2(50) := '----=*#abc1234321cba#*=';
  l_step        PLS_INTEGER  := 12000; -- make sure you set a multiple of 3 not higher than 24573

  BEGIN
    siebel.ts_ops.unica_sms_report_created;
    -- запись выгрузки в переменную p_attach_clob
    for x in (select campaign_name||chr(9)||created_dt||chr(9)|| formed_sms||chr(9)|| delivered as str from siebel.unica_sms_report 
               where created_dt > trunc(sysdate) - 30)
    loop
        p_attach_clob := p_attach_clob || chr(13) || x.str;
    end loop;
    p_attach_clob := p_attach_clob || ' ';
    --Подключение к хосту
    l_mail_conn := UTL_SMTP.open_connection(p_smtp_host, p_smtp_port);

    UTL_SMTP.helo(l_mail_conn, p_smtp_host);
    UTL_SMTP.mail(l_mail_conn, p_from);
    UTL_SMTP.rcpt(l_mail_conn, p_to);

    --Наполнение письма
    UTL_SMTP.open_data(l_mail_conn);
    UTL_SMTP.write_raw_data(l_mail_conn, UTL_RAW.cast_to_raw('Date: ' || TO_CHAR(SYSDATE, 'DD-MON-YYYY HH24:MI:SS') || UTL_TCP.crlf));
    UTL_SMTP.write_raw_data(l_mail_conn, UTL_RAW.cast_to_raw('To: ' || p_to || UTL_TCP.crlf));
    UTL_SMTP.write_raw_data(l_mail_conn, UTL_RAW.cast_to_raw('From: ' || p_from || UTL_TCP.crlf));
    UTL_SMTP.write_raw_data(l_mail_conn, UTL_RAW.cast_to_raw('Subject: ' || p_subject || UTL_TCP.crlf));
    UTL_SMTP.write_raw_data(l_mail_conn, UTL_RAW.cast_to_raw('MIME-Version: 1.0' || UTL_TCP.crlf));
    UTL_SMTP.write_raw_data(l_mail_conn, UTL_RAW.cast_to_raw('Content-Type: multipart/mixed; charset="windows-1251"; boundary="' || l_boundary || '"' || UTL_TCP.crlf || UTL_TCP.crlf));

    IF p_text_msg IS NOT NULL THEN
      UTL_SMTP.write_raw_data(l_mail_conn, UTL_RAW.cast_to_raw('--' || l_boundary || UTL_TCP.crlf));
      UTL_SMTP.write_raw_data(l_mail_conn, UTL_RAW.cast_to_raw('Content-Type: text/plain; charset="windows-1251"' || UTL_TCP.crlf || UTL_TCP.crlf));

      UTL_SMTP.write_raw_data(l_mail_conn, UTL_RAW.cast_to_raw( p_text_msg));
      UTL_SMTP.write_raw_data(l_mail_conn, UTL_RAW.cast_to_raw(UTL_TCP.crlf || UTL_TCP.crlf));
    END IF;

    IF p_attach_name IS NOT NULL THEN
      UTL_SMTP.write_raw_data(l_mail_conn, UTL_RAW.cast_to_raw('--' || l_boundary || UTL_TCP.crlf));
      UTL_SMTP.write_raw_data(l_mail_conn, UTL_RAW.cast_to_raw('Content-Type: ' || p_attach_mime || '; name="' || p_attach_name || '"' || UTL_TCP.crlf));
      UTL_SMTP.write_raw_data(l_mail_conn, UTL_RAW.cast_to_raw('Content-Disposition: attachment; filename="' || p_attach_name || '"' || UTL_TCP.crlf || UTL_TCP.crlf));
      
      
      FOR i IN 0 .. TRUNC((DBMS_LOB.getlength(p_attach_clob) - 1)/l_step) LOOP
        UTL_SMTP.write_raw_data(l_mail_conn, UTL_RAW.cast_to_raw(DBMS_LOB.substr(p_attach_clob, l_step, i * l_step + 1)));
      END LOOP;

      UTL_SMTP.write_raw_data(l_mail_conn, UTL_RAW.cast_to_raw(UTL_TCP.crlf || UTL_TCP.crlf));
    END IF;

    UTL_SMTP.write_raw_data(l_mail_conn,UTL_RAW.cast_to_raw( '--' || l_boundary || '--' || UTL_TCP.crlf));
    UTL_SMTP.close_data(l_mail_conn);

    --Отключение от хоста
    UTL_SMTP.quit(l_mail_conn);
  END;



1)Сама отправка проходит успешно ,файл создается и отсылается, но когда я его пытаюсь открыть в excel 2007, то у меня вылетает ошибка о том, что тип формат открываемого файла не совпадает с расширением файла xls, если нажать да, то файл откроется успешно. Если принудительно выставить в наименование файла расширение xlsx, то файл вообще не открывается(переменная p_attach_name ). Пробовал менять значение переменной p_attach_mime :
-application/vnd.ms-excel
-application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
-NULL
Ничего не помогает

2)Данный отчет необходим "большим людям", а они любят смотреть почту в телефонах и айпадах. У нас в организации мобильным клиентом является IBM Verse(не реклама). Так вот в нем файл с xls вообще открыть нельзя, вероятно из-за ошибки в пункте 1
Помогите пожалуйста.
Всем спасибо!
...
Рейтинг: 0 / 0
Передача письма с вложением. Готовое решение
    #39327406
andreymx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
A_Karetnikov

А оракл тут при чём?
...
Рейтинг: 0 / 0
Передача письма с вложением. Готовое решение
    #39328003
A_Karetnikov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Мне кажется проблема в этом параметре p_attach_mime VARCHAR2(200) := 'application/octet-stream';
Если его правильно подобрать, то можно решить проблему, описанную в пункте 1
...
Рейтинг: 0 / 0
Передача письма с вложением. Готовое решение
    #39328172
Фотография -2-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
A_KaretnikovМне кажется ты преувеличиваешь роль mime_type для твоей ситуации. И в любом случае оракл тут не причем.
...
Рейтинг: 0 / 0
Передача письма с вложением. Готовое решение
    #39328329
A_Karetnikov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Можно ли формировать файл с расширением xlsx?
...
Рейтинг: 0 / 0
Передача письма с вложением. Готовое решение
    #39330686
A_Karetnikov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Помогите пожалуйста, возможно текст процедуры написан неверно
...
Рейтинг: 0 / 0
Передача письма с вложением. Готовое решение
    #39330767
Фотография Fogel
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
A_KaretnikovМожно ли формировать файл с расширением xlsx?
можно
попроси "больших людей" купить вот это
или сам разберись в xml структуре формата xlsx (а у него именно xml структура) и как оракловые данные заворачивать в xml
...
Рейтинг: 0 / 0
Передача письма с вложением. Готовое решение
    #39330794
Фотография orawish
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
A_KaretnikovПомогите пожалуйста, возможно текст процедуры написан неверно
для начала - вас не смущает незакрытый апостроф в первой строке?
...
Рейтинг: 0 / 0
Передача письма с вложением. Готовое решение
    #39330841
A_Karetnikov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
orawish,

Текст процедуры я правил в рамках сокрытия конфиденциальных данных. На бою у меня все это есть
...
Рейтинг: 0 / 0
Передача письма с вложением. Готовое решение
    #39330854
A_Karetnikov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
При этом, если я сохраню сформированный файл на компьютере, а затем его снова открою и нажму "сохранить как", то предлагает сохранить тип файла как "Текстовые файлы (с разделителями табуляции) (*.txt)"
...
Рейтинг: 0 / 0
Передача письма с вложением. Готовое решение
    #39330859
dba123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
A_Karetnikov,

замени '.xls' на '.csv'
...
Рейтинг: 0 / 0
Передача письма с вложением. Готовое решение
    #39331229
A_Karetnikov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
dba123,

Если я так сделаю у меня все столбцы склеются в один.
...
Рейтинг: 0 / 0
Передача письма с вложением. Готовое решение
    #39331243
A_Karetnikovdba123,

Если я так сделаю у меня все столбцы склеются в один.выложи сюда файл, который получился в результате у получателя
...
Рейтинг: 0 / 0
Передача письма с вложением. Готовое решение
    #39331584
A_Karetnikov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Решено.
Если вначале файла csv добавить "sep=,"
То происходит разделение на столбцы
...
Рейтинг: 0 / 0
Передача письма с вложением. Готовое решение
    #39398896
andreymx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
как запросить уведомление о прочтении?
Я сам этого не люблю, но клиент запросил

в CDO+c# как-то так:
Код: c#
1.
oMsg.DSNOptions = CDO.CdoDSNOptions.cdoDSNSuccess; //для получения уведомления о доставке и прочтении



в CDO+EWS как-то так:
Код: c#
1.
mail.IsReadReceiptRequested = is_readReceipt;




Как протолкнуть через в utl_http?
...
Рейтинг: 0 / 0
Передача письма с вложением. Готовое решение
    #39398917
andreymx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
andreymxкак запросить уведомление о прочтении?
Я сам этого не люблю, но клиент запросил

в CDO+c# как-то так:
Код: c#
1.
oMsg.DSNOptions = CDO.CdoDSNOptions.cdoDSNSuccess; //для получения уведомления о доставке и прочтении




в CDO+EWS как-то так:
Код: c#
1.
mail.IsReadReceiptRequested = is_readReceipt;





Как протолкнуть через в utl_http?

вроде такое чего-то накропал, и даже работаетSRC PLSQL] IF Confirm_Reading = '1' THEN

utl_smtp.write_data(v_Mail_Conn, 'Disposition-Notification-To: ' || '4' || crlf );

END IF;
[/SRC]
...
Рейтинг: 0 / 0
Передача письма с вложением. Готовое решение
    #39398918
andreymx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вроде такое чего-то накропал, и даже работает
Код: plsql
1.
2.
3.
4.
5.
    IF Confirm_Reading = '1' THEN
    
       utl_smtp.write_data(v_Mail_Conn, 'Disposition-Notification-To: ' || '4' || crlf );
       
    END IF;
...
Рейтинг: 0 / 0
Передача письма с вложением. Готовое решение
    #39404676
trace.log
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вопрос знактокам:
Как на выходе получить файл с нижним подчеркиванием??
Вот кусок кода:
Код: sql
1.
'REPORT_' || TO_CHAR (date_to + 1, 'rrrrmmdd') || '.html',


Но на почту приходит файл без '_', почему? куда смотреть?
...
Рейтинг: 0 / 0
25 сообщений из 274, страница 10 из 11
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Передача письма с вложением. Готовое решение
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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