APEX : Посылка по почте отчета (Динамическая акция)
DECLARE
l_id NUMBER;
l_document BLOB;
dat date;
numb varchar2(30);
sm number(36,6);
usl number(1);
n number(18);
stroka varchar2(256);
mail varchar2(256);
BEGIN
select doc_number,date_doc,summa into numb,dat,sm from t_document where id=:P14_ID;
usl:=1;
stroka:=:P14_EMAIL;
--stroka := 'trusandr@mail.ru';
while usl=1 loop
n:=instr(stroka,';',1,1);
if n=0 then
mail:=stroka;
usl:=0;
else
mail:=substr(stroka,1,n-1);
stroka:=substr(stroka,n+1,length(stroka)-n);
end if;
l_document := APEX_UTIL.GET_PRINT_DOCUMENT (
p_application_id => :APP_ID,
p_report_query_name =>'SchetN_EMAIL',
p_report_layout_name =>'SchetN_EMAIL',
p_report_layout_type => 'rtf',
p_document_format => 'rtf',
p_print_server => null);
l_id := APEX_MAIL.SEND(
p_to => '<'||MAIL||'>',
p_from => '
p_subj => 'ООО Автокар43 Счёт №'||numb||' от '||to_char(dat,'dd-mm-yyyy')||
' на сумму '||to_char(sm,'9999999.99')||' руб.',
p_body => 'Пожалуйста, посмотрите счет во вложении ',
p_body_html => 'Пожалуйста, посмотрите счет во вложении
Письмо сформировано автоматически.
На него отвечать не нужно.');
APEX_MAIL.ADD_ATTACHMENT (
p_mail_id => l_id,
p_attachment => l_document,
p_filename => 'счёт'||numb||'.rtf',
p_mime_type => 'application/rtf');
end loop;
apex_mail.push_queue;
END;