--exec P_TYAN_SERVICE_SITE_CHECK
تغيير الإجراء [dbo].[P_TYAN_SERVICE_SITE_CHECK]
مثل
يعلن
@عدد int،
@كائن int،
@hr إنت،
@rc كثافة العمليات،
@ الناتج فارشار (400)،
@ الوصف فارتشار (400)،
@ المصدر فارشار (400)،
@المرسل فارتشار (50)،
@ اسم المرسل فارشار (50)،
@serveraddress فارشار (255)،
@المستلم فارتشار (255)،
@recipientName فارشار (255)،
@الموضوع فارتشار (255)،
@mailbody فارشار (8000)
--بدء البريد الإلكتروني التلقائي
حدد @count= count(*) من [dbo].[TYAN_SERVICE_SITE] حيث المنطقة ليست فارغة وcust_name ليس فارغًا وship_location ليس خاليًا والبلد ليس خاليًا وcust_no ليس خاليًا و(CUST_TYPE خاليًا أو SERVICE_SITE خاليًا )
إذا (@ العد! = 0)
يبدأ
تعيين @sender='AutoMail'
تعيين @sendername='AutoMail'
تعيين @serveraddress='10.98.0.211'
--هذا هو عنوان المستلم، يبدو أن هذا المتغير عديم الفائدة، لذا قم بإضافته مباشرة في النهاية. فقط انظر أدناه -------
تعيين @المستلم = ''
--عنوان----------------
تعيين @subject='البريد'
-------هنا البيانات التي تريد عرضهاالبدء---------------------
اضبط @mailbody=N'<html><head>
</الرأس><الجسم>
<p style="margin-bottom:12.0pt"><حجم الخط=1 وجه=Arial><span
lang=EN-US style="font-size:9.0pt;font-family:Arial">سيدي العزيز:<o:p></o:p></span></font></p>
<p style="margin-bottom:12.0pt"><حجم الخط=1 وجه=Arial><span
lang=EN-US style="font-size:9.0pt;font-family:Arial">يرجى الحفاظ على Tyan الجديد هذا
موقع الخدمة:<o:p></o:p></span></font></p>
<نمط الجدول = "font-family:trebuchet ms؛ حجم الخط: 10pt؛ border-collapse:collapse" cellpadding = "2" bordercolor = "black" border=1>
<tr bgcolor=orange align=center>
<td >المنطقة</td>
<td >البلد</td>
<td>رقم العميل</td>
<td >اسم العميل</td>
</tr>'
--<td align=left>اسم القسم</td>
يعلن
@ستر فارتشار (8000)،
@منطقة نفارتشار (50)،
@COUNTRY فارتشار(50)،
@CUST_NO فارتشار(50)،
@CUST_NAME فارتشار(50)،
@vcount كثافة العمليات
يبدأ
تعيين @vcount=1
تعيين @str=''
قم بتعريف c_at المؤشر
ل
حدد منطقة مميزة، بلد، cust_no، cust_name من [dbo].[TYAN_SERVICE_SITE] حيث المنطقة ليست فارغة وcust_name ليس فارغًا وship_location ليس خاليًا والبلد ليس خاليًا وcust_no ليس خاليًا و(CUST_TYPE خاليًا أو SERVICE_SITE كذلك باطل )
فتح ج_at
جلب التالي من c_at إلى @AREA،@COUNTRY،@CUST_NO،@CUST_NAME
بينما (@@FETCH_STATUS = 0)
يبدأ
تعيين @str=@str+'<tr align=center>'
تعيين @str=@str+'<td >'+@AREA+'</td>'
تعيين @str=@str+'<td >'+@COUNTRY+'</td>'
تعيين @str=@str+'<td >'+@CUST_NO+'</td>'
تعيين @str=@str+'<td >'+@CUST_NAME+'</td>'
اضبط @vcount=@vcount+1
جلب التالي من c_at إلى @AREA،@COUNTRY،@CUST_NO،@CUST_NAME
نهاية
-------هنا البيانات التي تريد عرضها نهاية--------------------
إغلاق ج_at
إلغاء تخصيص ج_at
نهاية
اضبط @mailbody = @mailbody+@str+'</table></body></html>'
Exec @hr = sp_OACreate 'jmail.message'، @object OUTPUT
Exec @hr = sp_OASetProperty @object، 'Charset'، 'BIG5'
--@recipient --عنوان البريد الإلكتروني للمستلم ----------------------------------------- ----- ---------------
Exec @hr = sp_OAMethod @object، 'AddRecipient'، NULL، 'عنوان البريد الخاص بك'
--Exec @hr = sp_OAMethod @object, 'AddRecipientBCC',NULL,'عنوان البريد الخاص بك'
Exec @hr = sp_OASetProperty @object, 'Subject',@subject
Exec @hr = sp_OAsetProperty @object, 'HTMLBody' ,@mailbody
Exec @hr = sp_OAsetProperty @object, 'Priority' , 1
إذا لم يكن @sender فارغًا
Exec @hr = sp_OASetProperty @object, 'From', @sender
إذا لم يكن @sendername فارغًا
Exec @hr = sp_OASetProperty @object، 'FromName'، @sendername
--بدء البريد الإلكتروني التلقائي
Exec @hr = sp_OAMethod @object, 'Send', null,@serveraddress
Exec @hr = sp_OAGetErrorInfo @object، @source OUTPUT، @description OUTPUT
إذا (@hr = 0)
يبدأ
اضبط @output='مصدر الخطأ: '+@source
طباعة @ الإخراج
حدد @output = "وصف الخطأ:" + @description
طباعة @ الإخراج
نهاية
آخر
يبدأ
طباعة "فشل الحصول على معلومات الخطأ!" '
يعود
نهاية
--حرر كائن JMail.Message
EXEC @hr = sp_OADestroy @object
--إذا @hr <> 0
--يبدأ
- EXEC sp_OAGetErrorInfo @object
-- يعود
--نهاية
نهاية
تم الانتهاء من الإجراء المخزن أعلاه،
مرفق به فتح إجراءات أتمتة Ole
---فتح إجراءات أتمتة أولي----
sp_configure "إظهار الخيارات المتقدمة"، 1؛
يذهب
إعادة التكوين؛
يذهب
sp_configure "إجراءات أتمتة Ole"، 1؛
يذهب
إعادة التكوين؛
يذهب
يمكنك استخدامه بعد إجراء تعديلات طفيفة بناءً على بياناتك الخاصة. يتم استخدام إرسال رسائل البريد الإلكتروني بشكل عام مع وظيفة وكيل خادم SQL لإرسال رسائل البريد الإلكتروني بانتظام.
هذه المقالة مأخوذة من مدونة CSDN، يرجى الإشارة إلى المصدر عند إعادة الطباعة: http://blog.csdn.net/liaolian9948/archive/2009/12/31/5110313.aspx .
-