Forum
Merhaba, tablodan view'den mail adreslerini okuyorum fakat bir mail adresi tekrar ediyorsa tekrar ettiği kadar mail gönderiyor. Yapmak istediğim mail adresi view'da 5 kere tekrar etse bile bir mail gitmesi. Yardımcı olabilecek birileri var mıdır?
Teşekkürler.
USE [NB_DB] GO /*** Object: StoredProcedure [dbo].[UnCompletedWorks_SP1] Script Date: 14.10.2016 09:41:28 ***/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ============================================= -- Author: <ÜA> -- Create date: <26.09.2016> -- Description: <Description,,> -- ============================================= ALTER PROCEDURE [dbo].[UnCompletedWorks_SP1] AS BEGIN -- SET NOCOUNT ON added to prevent extra result sets from -- interfering with SELECT statements. SET NOCOUNT ON; DECLARE @tableHTML NVARCHAR(MAX) DECLARE @Email NVARCHAR(200) DECLARE @EmployerID NVARCHAR(200) DECLARE @Store NVARCHAR(200) DECLARE @WorkType NVARCHAR(50) DECLARE @VehiclePlate NVARCHAR(50) DECLARE @WorkDate nvarchar(200) DECLARE @CustomerName NVARCHAR(200) DECLARE @CustomerPhone NVARCHAR(50) DECLARE @CustomerAddress NVARCHAR(250) DECLARE @Title NVARCHAR(200) DECLARE Cur CURSOR FOR SELECT * FROM [dbo].[VW_UnCompletedWorks] OPEN Cur FETCH NEXT FROM Cur INTO @EmployerID,@Store,@WorkType,@VehiclePlate,@WorkDate,@CustomerName,@CustomerPhone,@CustomerAddress,@Title,@Email WHILE @@FETCH_STATUS=0 BEGIN SET @tableHTML = N'<h3 colspan="10" bgcolor="#FF6600" scope="colgroup">Kapatılmayan İşler Listesi</h3></th>'+ N'<table border=1" bordercolor="green" cellspacing="3">' + N'<tr><th bgcolor="#FF6600">İş Emri No</th>' + N'<th bgcolor="#FF6600">Mağaza</th>' + N'<th bgcolor="#FF6600">İş Türü</th>'+ N'<th bgcolor="#FF6600">Plaka</th> '+ N'<th bgcolor="#FF6600">Taşeron Adı</th>'+ N'<th bgcolor="#FF6600">Çalışma Günü</th>' + N'<th bgcolor="#FF6600">Müşteri Adı</th>' + N'<th bgcolor="#FF6600">Müşteri Tel.</th>' + N'<th bgcolor="#FF6600">Müşteri Adresi</th>' + --N'<th bgcolor="#FF6600">E-Mail</th>' + CAST ( ( SELECT td=@EmployerID ,'', td=@Store , '', td=@WorkType,'', td=@VehiclePlate, '', td=@Title ,'', td=@WorkDate, '', td=@CustomerName, '', td='', td=@CustomerPhone, '', td='', td=@CustomerAddress ,'' -- td=Mail ,'' FROM [dbo].[VW_UnCompletedWorks] FOR XML PATH('tr'), TYPE ) AS NVARCHAR(MAX) ) + N'</table>' + N'<H5><font face= "calibri" > Eğer bir hata olduğunu düşünüyorsanız [email protected] adresine yazın! </font></H5>' EXEC [msdb].[dbo].[sp_send_dbmail] @profile_name = 'Otomatik Mail', --MAİL BAŞLIĞI @recipients = @Email,-- KİME @subject = 'NN - Kapatılmayan İşler Listesi', --MAİL KONUSU @body = @tableHTML, @body_format = 'HTML'; FETCH NEXT FROM Cur INTO @EmployerID,@Store,@WorkType,@VehiclePlate,@WorkDate,@CustomerName,@CustomerPhone,@CustomerAddress,@Title,@Email END CLOSE Cur DEALLOCATE Cur END |
Merhaba
Bu işlem için ayrı bir tabloya kayıt ederseniz eğer, o tablodan sorgulayıo 5 kere gitmesini sağlayabilirsiniz.
Anlamadım ne demek istediğinizi? Sorun sadece 5 kere gitmesi değil ilgili satırda mevcut olan kadar gitmesiyle alakalı. Ayrı bir tablo dediğiniz View'den geliyor SELECT sonucu.
Merhaba,
Bazı kayıtların çift olduğunumu söylüyorsunuz yoksa farklı kişiler aynı mailleri kullandığı içinmi tablonuzda mailler tekrar etti?
Aynı mailleri sildirebilirsiniz ufak bir kod yardımıyla. --->