Forum

SSRS Mail Ayarlama ...
 
Bildirimler
Hepsini Temizle

[Çözüldü] SSRS Mail Ayarlama Sorunu

Atahan Çelik
(@atahancelik)
Üye

Merhabalar, çalıştığım yerde SSRS üzerinden işten çıkan kişiler için otomatik mail atan bir proje oluşturdum.

Mail gönderimi başarıyla sağlanıyor ancak kontrol konusunda bir sıkıntımız var. 

Rapor her gün 17:00'da ilgili tabloları kontrol ediyor ve query içerisinden dönen sonuca göre maili gönderiyor ancak query sonucu boş dönerse raporun gitmemesi gerekiyor.

Bunu kontrol etmek ve engellemek için nasıl bir yol izlemem gerekiyor, yardımlarınız için şimdiden teşekkürler.

 

Not: Veriyi TextBox içerisine çekiyorum ve onun haricinde mail içeriğinde 2 TextBox ve 1 İmage dosyası bulunuyor.  

Alıntı
Konu başlatıcı Gönderildi : 04/03/2021 13:42
Mehmet Sucu
(@mehmetsucu)
Üye

Merhaba @atahancelik

Gönderim yaptığın query de bunu yapabilirsin.

DECLARE @sorgum nvarchar(MAX);

SELECT @sorgum = 'hazırladığın sorgu';

IF @sorgum IS NOT NULL BEGIN

EXEC sp_send_dbmail

Mehmet SUCU
HBYS Yazılım Uzmanı
[email protected]
****************************************************************
Probleminiz Çözüldüğünde Sonucu Burada Paylaşırsanız.
Sizde Aynı Problemi Yaşayanlar İçin Yardım Etmiş Olursunuz.
Eğer sorununuz çözüldü ise lütfen "çözüldü" olarak işaretlerseniz diğer üyeler için çok büyük kolaylık sağlayacaktır.
*****************************************************************

CevapAlıntı
Gönderildi : 06/03/2021 12:25
ESER DEMİR beğendi
servet çayır
(@servetcayir)
Üye

Merhaba,

Ben şu şekilde yapmıştım. Umarım işinize yarar.

SSSR de Subscription oluşturun. Schedule kısmını Once olarak ayarlayın.

Arkasından SQL Server da günlük çalışan bir job ayarlayın.

Job da raporda kullanılan dateset in sorgusunda veri geliyorsa raporu gönder şeklinde bir kontrol ekleyin. Veri gelmiyorsa bir şey yapılmayacak.

Aşağıdaki şekilde. XXXX-XXX yazan yere gelecek SubscriptionID bilgisini [ReportServer].[dbo].[Subscriptions] tablosundan elde edebilirsiniz.

IF EXISTS(SELECT Top 1 * FROM TableName )
BEGIN
     EXEC ReportServer.dbo.AddEvent @EventType='TimedSubscription', @EventData='XXXX-XXX-...';

 

 

Bu ileti 10 ay önce Hakan Uzuner tarafından düzenlendi
CevapAlıntı
Gönderildi : 15/03/2021 13:15
Hakan Uzuner beğendi
ESER DEMİR
(@ESERDEMiR)
Üye

Kayıt dönmüyor ise bunu yapabilirsiniz...

DECLARE @sorgum int;

SELECT @sorgum = (SELECT COUNT(SERI_NO) FROM _ESER_SERI_FARK
WHERE STOK_KODU LIKE 'IK%');

IF @sorgum >= '1' BEGIN

exec HATALI_SERI_MAIL
END;

CevapAlıntı
Gönderildi : 18/03/2021 09:40
Paylaş: