ITPUB论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

楼主: hphubei

[精华] Package里面发送邮件简单介绍 [复制链接]

精华贴数
0
技术积分
1321
社区积分
12065
注册时间
2007-1-15
论坛徽章:
40
开发板块每日发贴之星
日期:2005-03-24 01:02:092009日食纪念
日期:2009-07-22 09:30:00欧洲冠军杯纪念徽章
日期:2009-05-31 09:59:59NBA常规赛纪念章
日期:2009-04-16 14:28:42指数菠菜纪念章
日期:2009-04-01 10:07:11指数菠菜纪念章
日期:2009-01-06 12:20:54股神
日期:2009-01-06 11:59:192009新春纪念徽章
日期:2009-01-04 14:52:282009新春纪念徽章
日期:2009-01-04 14:52:282009日食纪念
日期:2009-07-22 09:30:002009日食纪念
日期:2009-07-22 09:30:002011新春纪念徽章
日期:2011-02-18 11:42:48
发表于 2007-3-28 15:02:27 |显示全部楼层
一定頂了.

使用道具 举报

注册会员

一般会员

精华贴数
0
技术积分
278
社区积分
14
注册时间
2004-12-7
论坛徽章:
1
2012新春纪念徽章
日期:2012-01-04 11:50:44
发表于 2007-4-26 15:03:21 |显示全部楼层
顶起来,等楼主的后续消息了

使用道具 举报

注册会员

一般会员

精华贴数
0
技术积分
182
社区积分
0
注册时间
2004-8-23
论坛徽章:
0
发表于 2007-7-17 09:45:07 |显示全部楼层
请教楼主两个问题.
1.你的第二个包,能否发送外部邮件,即本域名之外的邮件.
2.我能否在trigger中调用它. 如查能,我应该怎么做.
3.楼主有没有用过,alert发外部邮件,我们的系统设置的是ALERT用UNIX SENDMAIL发送邮件,可是发送不了外部邮件.
请指点,谢谢!

我当前的TRIGGER发邮件是这样写的.

CREATE OR REPLACE TRIGGER OPLK_RCV_TRX20070711 AFTER INSERT OR UPDATE ON RCV_TRANSACTIONS FOR EACH ROW
DECLARE
INVENTORY_ITEM_ID NUMBER;
ONHAND_QTY        NUMBER;
SUBINVENTORY      VARCHAR2(10);
ITEM_ID           NUMBER;
po_number         VARCHAR2(20);
line_num          NUMBER;
item_description  VARCHAR2(240);
item              VARCHAR2(40);
c utl_smtp.connection;
PROCEDURE send_header(name IN VARCHAR2, header IN VARCHAR2) AS
BEGIN
utl_smtp.write_data(c, name || ': ' || header || utl_tcp.CRLF);
END;
BEGIN


IF  
:new.transaction_type = 'RETURN TO VENDOR'

then

begin
       c := utl_smtp.open_connection('172.16.128.59');
       utl_smtp.helo(c, 'oplink.com.cn');
       utl_smtp.mail(c, 'zhanqiangw@oplink.com.cn');
       utl_smtp.rcpt(c, 'zhanqiangw@oplink.com.cn');
       utl_smtp.open_data(c);
       send_header('From',    '"Application Administrator" <applprd@oplink.com.cn>');
       send_header('To',      '"Recipient" <zhanqiangw@msn.com>');
       send_header('Subject', 'Returning Material Notification');
       utl_smtp.write_data(c, utl_tcp.CRLF || 'Dear All:');
       utl_smtp.write_data(c, utl_tcp.CRLF);
       utl_smtp.write_data(c, utl_tcp.CRLF || 'The subinventory have been drived negative, Please have a close check, thanks!');
       utl_smtp.write_data(c, utl_tcp.CRLF);
       utl_smtp.write_data(c, utl_tcp.CRLF);
       utl_smtp.write_data(c, utl_tcp.CRLF);
       utl_smtp.write_data(c, utl_tcp.CRLF);
       utl_smtp.write_data(c, utl_tcp.CRLF);
       utl_smtp.write_data(c, utl_tcp.CRLF);
       utl_smtp.write_data(c, utl_tcp.CRLF);
       utl_smtp.write_data(c, utl_tcp.CRLF);
       utl_smtp.write_data(c, utl_tcp.CRLF);


       utl_smtp.write_data(c, utl_tcp.CRLF || 'Regards/Application Administrator');
       utl_smtp.write_data(c, utl_tcp.CRLF || to_char(sysdate,'dd-Mon-yyyy'));


       utl_smtp.close_data(c);
       utl_smtp.quit(c);
/*  EXCEPTION
       WHEN utl_smtp.transient_error OR utl_smtp.permanent_error THEN
         utl_smtp.quit(c);
         raise_application_error(-20000,
           'Failed to send mail due to the following error11: ' || sqlerrm );
           when others then
         raise_application_error(-20000,
           'Failed to send mail due to the following error31: ' || sqlerrm);*/

    END;

--Dropped Luo Hui on 26-May-2005
/*begin
       c := utl_smtp.open_connection('172.16.128.65');
       utl_smtp.helo(c, 'oplink.com.cn');
       utl_smtp.mail(c, 'applprd@oplink.com.cn');
       utl_smtp.rcpt(c, 'huil@oplink.com.cn');
       utl_smtp.open_data(c);
       send_header('From',    '"Application Administrator" <applprd@oplink.com.cn>');
       send_header('To',      '"Recipient" <huil@oplink.com.cn>');
       send_header('Subject', 'Returning Material Notification');
       utl_smtp.write_data(c, utl_tcp.CRLF || 'Dear All:');
       utl_smtp.write_data(c, utl_tcp.CRLF);
       utl_smtp.write_data(c, utl_tcp.CRLF || 'The following Billed Po has already been returned, Please have a close check, thanks!');
       utl_smtp.write_data(c, utl_tcp.CRLF);
       utl_smtp.write_data(c, utl_tcp.CRLF);
       utl_smtp.write_data(c, utl_tcp.CRLF || 'Invoice Number From: ' || invoice_number_low || ' To: ' ||invoice_number_high );
       utl_smtp.write_data(c, utl_tcp.CRLF || 'Amount Paid:' || to_char(amount));
       utl_smtp.write_data(c, utl_tcp.CRLF || 'PO Number:' || po_number);
       utl_smtp.write_data(c, utl_tcp.CRLF || 'PO Line Num:' || to_char(line_num));
       utl_smtp.write_data(c, utl_tcp.CRLF || 'Item Number:' || item);
       utl_smtp.write_data(c, utl_tcp.CRLF || 'Item Desc:' || item_description);
       utl_smtp.write_data(c, utl_tcp.CRLF || 'Transaction Type:' || :New.transaction_type);
       utl_smtp.write_data(c, utl_tcp.CRLF || 'Quantity Returned:' || to_char(:new.primary_quantity));
       utl_smtp.write_data(c, utl_tcp.CRLF);
       utl_smtp.write_data(c, utl_tcp.CRLF);
       utl_smtp.write_data(c, utl_tcp.CRLF);
       utl_smtp.write_data(c, utl_tcp.CRLF);
       utl_smtp.write_data(c, utl_tcp.CRLF);


       utl_smtp.write_data(c, utl_tcp.CRLF || 'Regards/Application Administrator');
       utl_smtp.write_data(c, utl_tcp.CRLF || to_char(sysdate,'dd-Mon-yyyy'));


       utl_smtp.close_data(c);
       utl_smtp.quit(c); */
/*  EXCEPTION
       WHEN utl_smtp.transient_error OR utl_smtp.permanent_error THEN
         utl_smtp.quit(c);
         raise_application_error(-20000,
           'Failed to send mail due to the following error11: ' || sqlerrm );
           when others then
         raise_application_error(-20000,
           'Failed to send mail due to the following error31: ' || sqlerrm);*/

--    END;


else
        null;
end if;
exception
          when  No_Data_Found then
                                  null;

end;
/

使用道具 举报

注册会员

EBS=饿不死

精华贴数
1
技术积分
1573
社区积分
15
注册时间
2004-9-15
论坛徽章:
2
授权会员
日期:2006-01-10 08:59:592011新春纪念徽章
日期:2011-02-18 11:43:35
发表于 2007-7-17 15:41:13 |显示全部楼层
最初由 hphubei 发布
[B]


好像是用Alert也可以代替,没有试过, [/B]


确定可以实现。这个我们之前就一直用,比较方便。

使用道具 举报

注册会员

初级会员

精华贴数
0
技术积分
1267
社区积分
9
注册时间
2007-8-14
论坛徽章:
17
ERP板块每日发贴之星
日期:2007-12-20 01:05:28生肖徽章2007版:马
日期:2009-03-10 21:35:10生肖徽章2007版:猴
日期:2009-03-10 21:29:55生肖徽章2007版:猪
日期:2009-03-10 21:24:49生肖徽章2007版:鼠
日期:2009-03-10 21:12:512008新春纪念徽章
日期:2008-02-13 12:43:03生肖徽章2007版:鼠
日期:2008-01-02 17:35:53生肖徽章2007版:牛
日期:2008-01-02 17:35:53生肖徽章2007版:虎
日期:2008-01-02 17:35:53生肖徽章2007版:兔
日期:2008-01-02 17:35:53生肖徽章2007版:猴
日期:2008-01-02 17:35:53生肖徽章2007版:鸡
日期:2008-01-02 17:35:53
发表于 2007-12-17 12:35:25 |显示全部楼层
這個我研究好久,
始終悟不出道理,
感謝lz三分享,
我來研究一下,
謝謝。
去它的優雅~低調的奢華~忽略美學作用~~

使用道具 举报

注册会员

假古文

精华贴数
0
技术积分
130
社区积分
0
注册时间
2005-7-26
论坛徽章:
0
发表于 2008-1-14 19:31:15 |显示全部楼层
hphuhei大哥太强了,以后小弟有困难就靠你了。
Oracle DEV

使用道具 举报

精华贴数
0
技术积分
2
社区积分
3
注册时间
2008-5-23
论坛徽章:
0
发表于 2008-5-23 00:26:43 |显示全部楼层
看不明白~~~~~~~

使用道具 举报

注册会员

初级会员

精华贴数
0
技术积分
28
社区积分
1
注册时间
2007-11-7
论坛徽章:
1
2008新春纪念徽章
日期:2008-02-13 12:43:03
发表于 2008-11-24 16:23:56 |显示全部楼层
非常感谢楼主。 ,您的帖子给了我很大的启发。

使用道具 举报

相关内容推荐
您需要登录后才可以回帖 登录 | 注册

TOP技术积分榜 社区积分榜 徽章 电子杂志 团队 统计 邮箱 虎吧 老博客 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档 | IT博客
CopyRight 1999-2011 itpub.net All Right Reserved. 北京皓辰网域网络信息技术有限公司版权所有 联系我们 网站律师 隐私政策 知识产权声明
京ICP证:060528号 北京市公安局海淀分局网监中心备案编号:1101082001 广播电视节目制作经营许可证:编号(京)字第1149号
  
回顶部