Merhaba, Bu yazımda SQL server'de reporting servis kullanarak otomatik raporlar oluşturulduğunda ilgili kişilere mail yoluyla oluşturulan raporların gönderilmesini sağlayacağız. Sql2005 ve 2008 ,r2 yapılarında reporting servislerinden mail göndermek biraz zorlaştırıldı. Basic authantication desteklemediği için mail gönderimi yapılmıyor. Fakat server üzerine iis kurulumu ve smtp server kurulumu yaparsak bu sıkıntıyı aşmış oluyoruz. 1 . Server üzerinde iis kuruyoruz ben bu işi Windows 2008 de yaptım örnek olarak göstereceğim İlk önce server üzerinde iis kurulumu yapıcaz aşağıda görüldüğü gibi 4 modül hariç diğerlerini seçip kuruyoruz. Server manager-ROLES- ADD ROLES ---Web server---- install 1 2  smtp server kuruyoruz. Server Manager---features---Smtp server--- install ediyoruz. 2 Sqlreporting management açtıktan açıyoruz. 3 Yukardaki gibi ayarlama yapıyoruz. Sender adres  : gönderici adres belirtiyoruz Smtp server = buraya bişey yazmıyoruz gerekli bilgileri  biz kodda belirticez. Start -programs-administative tools-İİS manager6  Menüsüne girip --smtp Properties  --delivery--- advanced delivery Smart host kısmına mail gönderen serverin smtp adresini yazıyoruz. 4 Ardından outbound security menüsünden Basic authentication seçip Gönderen mail adresin kullanıcı kimlik bilgilerini giriyoruz. 5 Bu  ayarları yaptıktan sonra  rsreportserver.config dosyasını editlemeliyiz.  bu dosyayı editlemeden önce bir kopyasını güvenilir bir yere kopyalayalımki yanlış bir iş yaptığımızda geri kopyalayabilelim. Bu dosya sqlserver kurulduğu dizindedir.( 'c:\Program Files\Microsoft SQL Server\MSSQL.2\Reporting Services\ReportServer\RSReportServer.config) C:\ dizinine kurduysanız search ederekte bu dosyayı bulabilirsiniz. Aşağıdaki bir çalışan serverden aldığım örnek kodların bir kısmını yani bizim işimize yarayan kısımdır. Ben buraya gerekli bilgileri girdim. Gerekli ayarları Kırmızı ile yazdım sizde burada gerekli bilgileri gireceksiniz. Bu ayarlardan sonra sql reporting te oluşturacağınız raporları istediğiniz mail adresine schedule yazarak yollayabilirsiniz. Eğer ortamınızda bir exchange server olsaydı bu kadar configuration yapmanıza gerek kalmayacaktı aynı ortamda çok güzel replice çalışıyorlar. Sqlreporting management ta mail sunucusunun adını yazmamız ve bir admin acountu girmeniz yeterli olacaktı ama her şirkette maalesef exchange server olmamaktadır.

Rsreportserver.config

Configuration> <RSEmailDPConfiguration> <SMTPServer></SMTPServer> <SMTPServerPort> </SMTPServerPort> <SMTPAccountName>admin.domain.com.tr</SMTPAccountName> <SMTPConnectionTimeout> </SMTPConnectionTimeout> <SMTPServerPickupDirectory>C:\inetpub\mailroot\Pickup</SMTPServerPickupDirectory> <SMTPUseSSL> </SMTPUseSSL> <SendUsing>1</SendUsing> <SMTPAuthenticate> </SMTPAuthenticate> <From>admin@domain.com.tr</From> <EmbeddedRenderFormats> <RenderingExtension>MHTML</RenderingExtension> </EmbeddedRenderFormats> <PrivilegedUserRenderFormats> </PrivilegedUserRenderFormats> <ExcludedRenderFormats> <RenderingExtension>HTMLOWC</RenderingExtension> <RenderingExtension>NULL</RenderingExtension> <RenderingExtension>RGDI</RenderingExtension> </ExcludedRenderFormats> <SendEmailToUserAlias>True</SendEmailToUserAlias> <DefaultHostName> </DefaultHostName> <PermittedHosts>