創建PKG並Mail發送數據

--*創建包頭

CREATE OR REPLACE PACKAGE pkg name IS
PROCEDURE procedure name1;
END;

--*創建包體
CREATE OR REPLACE PACKAGE BODY pkg body name AS

   PROCEDURE  procedure name1 IS
             FLAG              BOOLEAN;
             V_ROWS            NUMBER :=1;
             V_MAIL_SUBJECT    VARCHAR2(60);
             V_MAIL_RECEIVER   VARCHAR2(2000);
             V_MAIL_PCC        VARCHAR2(200);
             V_MAIL_BCC        VARCHAR2(100);
             V_MAIL_MESSAGE    VARCHAR2(32767);

             CURSOR C_xx(V_ROWS INTEGER) IS
                   SELECT *
                     FROM DUAL
                    WHERE SEQ >= V_ROWS
                      AND SEQ < V_ROWS + 60;
       BEGIN
       FOR CURSA IN 1..10 LOOP

           FLAG           :=FALSE;
           V_MAIL_SUBJECT := '郵件主題';
           V_MAIL_RECEIVER:= '收件人Mail';
           V_MAIL_PCC     := '抄送';
           V_MAIL_BCC     := '密件發送';
           V_MAIL_MESSAGE := 'Dear Sirs <br>
             發送的內容,TKS~' ||
             '<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF8"><title></title></head><body>' ||
             '<table border="1" width="80%" id="table1" bgcolor="yellow">
                             <tr>
                               <td  align=center><b>SEQ</b></td>
                               <td  align=center><b>text1</b></td>
                               <td  align=center><b>text2 </b></td>
                               <td  align=center><b>text3 </b></td>
                               <td  align=center><b>text4 </b></td>
                               <td  align=center><b>text5 </b></td>
                               <td  align=center><b>text6 </b></td>
                             </tr>';
           FOR CURS_xx  IN C_xx(V_ROWS) LOOP
               FLAG :=TRUE;
               V_MAIL_MESSAGE := V_MAIL_MESSAGE || '<tr>' ||
               '<td align=center><b>' || LTRIM(CURS_xx.SEQ) ||'</b></td>' ||
               '<td align=center><b>' || LTRIM(CURS_xx>text1) || '</b></td>' ||
               '<td align=center><b>' || LTRIM(CURS_xx.>text2) ||'</b></td>' ||
               '<td align=center><b>' || LTRIM(CURS_xx.>text3) || '</b></td>' ||
               '<td align=center><b>' || LTRIM(CURS_xx.>text4) ||'</b></td>' ||
               '<td align=center><b>' || LTRIM(CURS_xx.>text5) || '</b></td>' ||
               '<td align=center><b>' || LTRIM(CURS_xx>text6) ||'</b></td>' ||
               '</tr>';
           END LOOP;
           V_MAIL_MESSAGE := V_MAIL_MESSAGE || '</table><br><font><b style="background-color:#FFFF00">
                     xx
                    </b></font></BODY></HTML>';

           IF FLAG = TRUE THEN
                                SMAIL.SEND_EMAIL(P_SYS_NAME => '',
                                                                    P_PRG_NAME => '',
                                                                    P_FROM     => '',
                                                                    P_TO       => V_MAIL_RECEIVER,
                                                                    P_SUBJECT  => V_MAIL_SUBJECT,
                                                                    P_BODY     => V_MAIL_MESSAGE,
                                                                    P_CC       => V_MAIL_PCC,
                                                                    P_BCC      => V_MAIL_BCC);
           END IF;
           EXIT WHEN FLAG = FALSE;
           V_ROWS := V_ROWS + 60;
       END LOOP;
   END  procedure name1;

END pkg body name;

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章