Как отправить результаты SQL-скрипта в виде таблицы в теле письма через Automic

У меня есть рабочий процесс, который выглядит следующим образом.

Первая задача этого рабочего процесса выполняет простую и следующий отправляет электронное письмо. Работают нормально по отдельности. Я хочу отправить вывод задачи SQL в качестве входных данных для задачи электронной почты, чтобы ее можно было прикрепить к отправляемому электронному письму.

Я попытался вручную ввести runId задачи SQL в поле ниже объекта уведомления, и он работает должным образом. Но как заставить это поле принимать динамическое значение от своего предшественника вместо жестко заданного?

Кроме того, есть ли способ, которым я могу включить вывод в теле письма в виде таблицы?

Обновление --1

Мне удалось получить runId предыдущей задачи с помощью приведенного ниже сценария. Теперь нужна помощь только с включением его в тело письма, а не с вложением.

      :SET &NR# = SYS_ACT_PREV_NR()
:PRINT "RunID of the previous task is &NR#."

1 ответ

Во-первых;

Настраивать

Пакет загружается путем запуска следующих скриптов.

      sys/passwordord AS SYSDBA
@$ORACLE_HOME/rdbms/admin/utlmail.sql
@$ORACLE_HOME/rdbms/admin/prvtmail.plb
In addition the SMTP_OUT_SERVER parameter must be set to identify the SMTP server.

CONN sys/password AS SYSDBA
ALTER SYSTEM SET smtp_out_server='smtp.domain.com' SCOPE=SPFILE;

-- Перезапуск экземпляра необходим только в версии 10gR1.

НЕМЕДЛЕННОЕ ВЫКЛЮЧЕНИЕ

ЗАПУСКАТЬ

Я бы посоветовал вам использовать почтовый ретранслятор на сервере базы данных, а не подключаться напрямую к внешнему почтовому серверу. Конфигурация почтового ретранслятора может быть простой, со ссылкой на «localhost» в параметре SMTP_OUT_SERVER. Любые сложности, связанные с подключением к вашему внешнему почтовому серверу, затем скрываются в конфигурации почтового ретранслятора.

Отправка сообщений электронной почты После завершения настройки мы можем отправлять сообщения электронной почты с помощью процедуры SEND. Он принимает следующие параметры.

      SENDER : This should be a valid email address.
RECIPIENTS : A comma-separated list of email addresses.
CC : An optional comma-separated list of email addresses.
BCC : An optional comma-separated list of email addresses.
SUBJECT : The subject line for the email.
MESSAGE : The email body.
MIME_TYPE : Set to 'text/plain; charset=us-ascii' by default.
PRIORITY : (1-5) Set to 3 by default.
REPLYTO : Introduced in 11gR2. A valid email address.

Ниже приведен пример использования.

      BEGIN
  UTL_MAIL.send(sender     => 'me@domain.com',
                recipients => 'person1@domain.com,person2@domain.com',
                cc         => 'person3@domain.com',
                bcc        => 'myboss@domain.com',
                subject    => 'UTL_MAIL Test',
                message    => 'If you get this message it worked!');
END;
/

Отправка писем с вложениями

Пакет также поддерживает отправку писем с вложениями RAW и VARCHAR2 с использованием пакетов SEND_ATTACH_RAW и SEND_ATTACH_VARCHAR2 соответственно. Они работают аналогично процедуре SEND с несколькими дополнительными параметрами.

ПРИЛОЖЕНИЕ: Содержание вложения. Это должен быть VARCHAR2 или RAW в зависимости от того, какую процедуру вы вызываете.

      ATT_INLINE : Indicates if the attachment should be readable inline. Default FALSE.
ATT_MIME_TYPE : The default is 'text/plain; charset=us-ascii'.
ATT_FILENAME : The name for the attachment.

Ниже приведен пример отправки электронного письма с текстовым вложением.

      BEGIN
  UTL_MAIL.send_attach_varchar2 (
    sender       => 'me@domain.com',
    recipients   => 'person1@domain.com,person2@domain.com',
    cc           => 'person3@domain.com',
    bcc          => 'myboss@domain.com',
    subject      => 'UTL_MAIL Test',
    message      => 'If you get this message it worked!',
    attachment   => 'The is the contents of the attachment.',
    att_filename => 'my_attachment.txt'    
  );
END;

/

Другие вопросы по тегам