SQL SERVER REPORTING SERVICES Bölüm 1

SQL SERVER REPORTING SERVICES

    

    Birçok işletmede kullanılan Erp ve muhasebe programlarının kendilerine özgü raporlama araçları vardır. Çoğu Erp programlarında kendi raporumuzu yapacak araçlar mevcuttur. Programa özgü olan bu araçların izin verdiği sınırlar içerisinde raporlar yapılır. Farklı programların farklı veritabanları ile rapor yapmak istediğimizde ise bu araçların yetersiz kaldığını, sadece kendi veritabanlarındaki veriler ile rapor yapmamıza müsade ettiğini görmekteyiz. Bu konuyla ilgili farklı firmaların çözümleri mevcuttur. Bu makalemizde Sql Server ile beraber gelen, ek bir maliyet gerektirmeyen Reporting Services konusunu işleyeceğiz.

    Bu makaleyi okumadan önce , ufak birkaç açıklama yapmak istiyorum. İşletmelerde raporlama ile ilgili kapsayıcı bir platform yok ise, genelde bu iş Excel programı ile halledilmeye çalışılır. Excel programının da belli bir kapasitesi olduğundan, çoğu zaman bizlere sıkıntılar çıkartmaktadır. Benim gibi Sistem kökenli veya Bilgi İşlemci arkadaşlar da Sql Server’da rapor hazırlamaya ön yargı ile bakmaktadır. Makaleyi bir sistemcinin T-Sql (Sql sorgulama dili) bilgisi olmadan anlayabileceği bir dilde anlatacağım. Daha konunun başında gözünüz korkmasın diye bu açıklamayı yapma ihtiyacı hissettim. Reporting Services konusu genelde yazılım ağırlıklı olduğu düşünülerek, çoğu sistemcinin göz ardı ettiği bir konudur. İşletmenize ait raporları kendiniz yaparak, önce bölümünüze ve sonra da diğer bölümlere katma değer katabilirsiniz. Reporting Services raporlarındaki sorgular kısmında, başlangıç seviyesindeki arkadaşlar için Sql içindeki viewleri kullanacağız, bu sayede yazılım bilgisini minimum seviyede tutarak, Reporting Services ta bir başlangıç yapmış olacağız. Bu makaleyi yazmaktaki amacım, sistemci olup raporlama konusunda kendisini geliştirmek isteyen arkadaşlar içindir. Bu konuda ilerlemek isteyen arkadaşlar, ilerki aşamada Transact Sql dilini öğrenmelerinde fayda vardır. Raporlara gelen veriler birer sorgu olduğu için T-Sql ile karmaşık sorgulara ihtiyaç duyabilirsiniz.

    Makaleyi, Vmware üzerine kurulu Server 2012 R2 işletim sistemde ve bu konuda bir bilgisi olmayan birine anlatır gibi anlatacağım. İlk önce Reporting Service’in kurulum aşamalarına, daha sonra da yapılandırma ayarlarına bakacağız. Ardında rapor oluşturma işlemlerine geçerek ilerleyeceğiz. Sizler de ilk önce test ortamında denemeler yapıp, daha sonra gerçek sisteminiz üzerinde uygulamanızda fayda var.

    Reporting Service’i adım adım anlatarak, yapılması gerekenleri test ederek makaleyi anlatmaya çalışacağım. Sıfırdan bir rapor oluşturmak için hangi aşamalardan geçiliyor, bir rapor örneği yaparak, bu raporu web arayüzüne nasıl yükleneceği konularına değineceğiz.

Makalede kullanılacak kısatlmalar:

  • SSRS: Sql Server Reporting Server
  • SSMS: Sql Server Management Studio
  • RDL: Report Definition Language (Rapor dosya uzantısı)
  • XML: Extensible Markup Language
  • VS: Visual Studio
  • Rep.B.: Report Builder
  • BIDS: Business Intelligence Development Studio

    Microsoft ilk olarak Sql 2000’de Reporting Service’i duyursa da, tam olarak Sql 2005 versiyonunda sunulmaya başlandı. Microsoft’un esas amacı bir raporlama standartı getirmekti. Reporting Service’in genel yapısı XML şeması üzerine kurulu RDL (Report Definition Language) dosyalarıdır. Bu standardizasyon sayesinde RDL dosyaları, Sql kurulu tüm ortamlarda kullanılabilmektedir. Rapor görüntüleme aracı olarakta web tabanlı bir hizmet sunmaktadır. Bu sayede ek bir progama gerek kalmadan web ortamından raporlara erişilebilmektedir.

Reporting Service’in Faydaları:

  • Standart bir platform olması: Visual Studio arayüzü sayesinde raporlama dosyalarında standart bir yapı oluşmaktadır. Farklı bir ortamda rahatlıkla çalışabilinecek esnekliği sunmaktadır.
  • Maliyet: Sql Server ile birlikte entegre olarak gelmektedir. Rep. Service için ekstra bir lisans ödemesi yapılmamaktadır.
  • Web tabanlı yapısı: Web tabanlı raporlama çözümüdür. Tek bir merkezden tüm kullanıcılara web üzerinden (şirket içi lokal ağ) ulaşılabilmektedir. Http ve Https protokollerini desteklemektedir. İstenirse Rep. Service internete açılıp dışardan erişim sağlanabilmektedir.
  • Düzenlenebilir yapıya bir sahip olması: Rep. Service .Net alt yapısına sahip olduğundan, programcılar tarafından düzenlenebilir bir yapıya sahiptir. İstenirse :net tabanlı bir programa rahatlıkla entegre edilebilir.
  • Bildirimler: Rep. Service’te hazırlanan raporlar, kullanıcılara saatlik, günlük, aylık veya yıllık periyodlarda mail veya dosya paylaşımı olarak gönderilebilmektedir. Raporlar kullanıcılara zamanlanmış görev olarak kullanıcılara gönderilebilmektedir.

SSRS Mimarisi:

  • SSRS Veritabanları: Reporting Server kurulurken <ReportServer> ve <ReportServer_TempDB> adında iki tane veritabanı kurar. Bu veritabanlarını farklı bir Sql Server’a mı yoksa Rep. Service’in kurulacağı servera mı kurulacağı seçilebilmektedir. Bu iki veritabanı, SSMS’teki diğer veritabanları gibi yedeklenip geri yüklenebilirler. <ReportServer> veritbanında Rdl dosyaları, klasör yetkileri ve log kayıtları tutulmaktadır. <ReportServer_TempDB> veritabanında ise, raporlara ait önbellek kopyalarının tutulduğu yerdir. TempDB, birden fazla kullanıcının kullandığı raporlarda performans arttırmaktadır. Örnek vermek gerekirse, A raporunu ilk alan X kullanıcısı 2 dakika beklemektedir, daha sonra aynı raporu Y kullanıcısı aldığında 5-10 saniye arasında bekleyecektir. Bu örnek rapordaki verilerin yapısına göre değişiklik göstermektedir. Süreleri fikir vermesi açısından belirttim.
  • SSRS Report Server: SSRS’deki en önemli roldür. Kullanıcı ve Rep. Service’in ortasında çalışır. Gelen kullanıcı isteklerine cevap verir. Raporların zamanlama ve mail ile gönderilme işlerine bakar.
  • SSRS Web Servis Arayüzü: Visual Studio ve Rep. Builder ile hazırlanan raporlar web arayüzüne yüklenir. Raporlara web arayüzünden erişim sağlanır. İlave bir programa gerek duyulmadan, Internet Explorer aracılığı ile raporlar görüntülenir.
  • Kimlik Doğrulama Katmanı: Raporlara kimler, nereye erişsin ve yetkilendirme için kimlik doğrulama katmanı kullanılmaktadır. Active Directory ile uyumlu çalışmaktadır. Yetki verilmek istenen kullanıcının domaindeki adı yazılar, nasıl bir erişim isteniyor ise SSRS içindeki rolü seçilir.
  • Rapor İşlemcisi: Tüm rapor isteklerinden sorumludur. Web arayüzünden talep edilen raporlar ile veritabanı arasındaki işlemleri sağlar.
  • Veri Kaynakları: Rep. Services 12 farklı veri kaynağını desteklemektedir. Sql server dışındaki farklı veri kaynakları bir raporda birleştirilebilir. Rapor işlemcisinden gelen istekler Veri Kaynağı İşlemcisine (Data Processin) gelir. Burada ilgili sorguyu bulduktan sonra Rapor işlemcisine geri gönderilir.

    Desteklenen Veri Kaynakları aşağıdaki gibidir;

  1. Sql Server
  2. Oracle
  3. OLE DB
  4. OLEDB-MD
  5. ODBC
  6. XML
  7. SAP BI Netwever
  8. Hyprion Essbase
  9. Teradata
  10. Microsoft SQL Azure
  11. Microsoft Sql Server Parallel Data Warehouse
  12. Microsoft Share Point List

 

  • Rapor Formatları: Rapor formatlarının genel ismi Report Page Layout (RPL) dur. Desteklenen formatlar aşağıdaki gibidir.
  • HTML: Varsayılan görüntüleme formatıdır. Html 4.0 ve 3.2’yi desteklemektedir. Chrome için özel ayar yapılması gerekmektedir.
  • PDF: Acrobat Reader formatında raporları export edebilir. Bu özellik için Adobe lisansına gerek kalmadan export edebilmektedir.
  • Excel: SSRS 2008 Excel 97-2003 arasında formatları destekler. SSRS 2012 Excel 2007 – 2012 (.xlsx) formatlarını desteklemektedir.
  • XML: Farklı uygulama ve servislerin kullanılabilmesi için Xml desteklenmektedir.
  • MHTML (MIME HTML): Bu format web arşivlemede kullanılabilmek içindir.
  • TIFF: Tiff görüntü formatı, raporun büyüklüğü farketmeden ekran görüntüsü alıyor gibi resmini çekip, aktarılabilecek bir formattır.
  • Microsoft Word: SSRS 2008 Word 97 – 2003 (.doc) formatını, SSRS 2012 hem (.doc) hem de Word 2007 – 2010 (.docx) formatlarını desteklemektedir.

     

  • Zamanlanmış Bildirimler: SSRS’te oluşturduğumuz raporları, kullanıcılara belirlenen zamanlarda mail veya dosya paylaşımı olarak gönderilmesini sağlar. Mail ile bildirimin çalışması için Sql Agent servisinin çalışması gerekmektedir.

Kullanıcı Uygulamaları:

    Reporting Services’te temel olarak 4 farklı kullanıcı uygulaması vardır.

  • Report Manager: Web arayüzünden raporları görebildiğimiz ve yetkiler verdiğimiz ekrandır.
  • Business Intelligence Development Studio (BIDS): Raporları hazırladığımız Visual Studio arayüzlü tasarım ekranıdır. Visual Studio’nun tüm fonksiyonları bu versiyonda mevcut değildir.
  • Report Builder 3.0: BIDS’in alternatifidir, son kullanıcı için tasarlanan, rapor oluşturma programıdır. Web arayüzünden ulaşmak için kısayolu vardır. BIDS’teki neredeyse tm özellikler Report Builder’da mevcuttur.
  • Reporting Services Configuration Manager: Reporting Services ile alakalı konfigürasyon ayarlarının yapıldığı yönetim ekranıdır. Web arayüz erişim adresleri, hesap ayarları gibi ayarlar buradan yapılır.

Bu makale 17 bölümden oluşmaktadır;

  1. Reporting Service Kurulumu
  2. Rapor Oluşturma (İlk Raporum)
  3. Visual Studio Data Tools Bölümleri
  4. Rapor Oluşturma (Sihirbazsız)
  5. Rapor Bileşenleri
  6. Fonksiyonlar
  7. Parametreler
  8. Verileri Sıralama – İnteraktif Sıralama
  9. Bağlantılı Rapor Oluşturma
  10. Report Parts – Paylaşılan Rapor Parçaları
  11. Subreports – Alt Raporlar
  12. Rapor Başlık ve Alt Başlıkları – Headers Footers
  13. Rapor Yazdırma – Sayfa Yapısı – Dışa Aktarma (Export) – Rapor Özellikleri
  14. Shared Data Source – Veri Kaynaklarının Paylaşımı
  15. Shared Data Sets – Veri Setlerinin Paylaşımı
  16. Report Manager Web Site Yönetimi
  17. Bildirimler – Subscriptions

1 – REPORTING SERVICES KURULUMU:

    Reporting Services kurulumu sıfırdan Sql Server ile beraber yapacağız. Mevcut sisteminizde Sql Server kurulu ise, sadece Reporting Services’i seçerek kurulumunuzu yapabilirsiniz. Diğer bir alternatif de, Rep. Services’i farklı bir sunucunuzda da kurabilirsiniz. Farklı bir sunucuya kurmak size, yedekleme ve performans açısından artılar sağlayacaktır.

    Sql Server’ın deneme sürümünü aşağıdaki linkten indirebilirsiniz.

http://www.microsoft.com/en-us/download/details.aspx?id=29066    

    Sql Server 2012 iso dosyamızdaki setup.exe’yi çalıştırarak kuruluma başlıyoruz. Next ile geçilen ekranlarda, iki ekranı tek şekilde göstermeye çalışacağım.

SSRS-1

Setup Support Rule ve güncelleme kontrolünden sonra devam ediyoruz.

SSRS-2

Kurulum kuralları kontrolü ve Serial number ekranları geldi.

SSRS-3

Gelen Lisans Sözleşmesini Accept deyip geçiyoruz.

Sonraki ekranda Setup Role geliyor, bu kurulumda Reporting Service’i tek başına yani Native Mode da kuracağımız için, üstteki seçeneği “Sql Server Feature Installation” seçerek devam ediyoruız.

SSRS-4

Feature Selection’da isterseniz tüm özellikleri seçebilirsiniz, ben sadece Rep. Services’ta kullanacağım seçenekleri seçip devam ediyorum. Yukarda da bahsettiğim gibi, Rep. Services’i farklı bir sunucuya kurmak istediğinizde, sadece bu ekrandan Rep. Services-Native’i seçerek kurulum yapabilirsiniz.

SSRS Native mode’un Sql Books Online’daki Şeması aşağıdaki gibidir;

SSRS-Native Mode

SSRS-5

Instance kısmını ister default isterseniz farklı bir isim yazabilirsiniz.

SSRS-6

Disk alanı kontrolü yapılan bir ekran gelecek, burayı Next ile geçelim.

Server Configuration kısmında, Sql Server Agent hizmetinin otomatik yapılması gerekmektedir. Eğer Agent hizmeti otomatik başlamaz ise, bildirimlerin gönderilmesi (mail) konusunda sıkıntı yaşayabiliriz.

SSRS-7

Database Engine Configuration ekranında, oturum açmayıu Mixed mode yaparak sa kullanıcısına şifre veriyorum.

SSRS-8

Reporting Service Configuration’da Install ve Configure u seçiyoruz. Kurulum ve ayarları yapacağız.

SSRS-9

Distruted Replay Controller ve Client I şimdilik geçebilirsinin, Rep. Service ile pek ilgisi yok.

Installation Conf. Files ekranını Next ile geçiyoruz. Ready to Install ekranında Install ile kuruluma başlıyoruz.

SSRS-10

Installation progress – Kurulum başladı.

Complete ekranında istenen özelliklerin sorunsuzca kurulduğu bilgisini gösteriyor, kurulumumuz tamamlandı.

SSRS-11

Kurulumu tamamladık. Şimdi Reporting Service Configuration Manager ı açarak, gerekli ayarlamaları yapacağız.

1-1 Reporting Services Configuration Manager Yapılandırılması:

Bunun için Microsoft Sql Server 2012 – Configuration Tools – Reporting Service Configuratiıon Manager programını açıyoruz.

SSRS-12

Kurulumdan sonra varsayılan olarak Server name ve Instance nameler otomatik olarak geliyor. Connect ile Configuration Manager’ı açıyoruz.

SSRS-13

Report Server Status – Report Server ile ilgili durum bilgisi ekranıdır. Instance adı, Id’si, edition bilgisi, product versiyonu, Rep. Server veritabanı adı, mode bilgisi ve durumu hakkında bilgi verir. Stop ile Report Service’i buradan durdurabiliriz.

SSRS-14

Report Service’i çalıştıracak kullanıcı hesabını seçtiğimiz bölümdür. Built-in account veya bir domain kullanıcısı seçilebilir.

SSRS-15

Web Service Url – Bu ekranda Report Service’in web dizin adresinin belirlendiği ekrandır. Rapor görüntüleme adresi değildir, karıştırılmaması gerekir. Buradaki url’yi daha sonra Data Tools ve Report Builder’da, raporları Reporting Service’e yüklemek için kullanacağız.

Virtual Directory’deki ismi değiştirebilirsiniz, varsayılan olarak instance adını getirdi, daha da kısaltmak mümkündür.

Ip Address – Ip adresini değiştirmemenizi öneririm, lokal ve network üzerinden erişebilecek tüm ip leri atamış durumda All Assigned ta bırakmakta fayda vardır. Sadece local 127.0.0.1 olarak seçer isek, Rep. Service’in dışındaki farklı bir makinede oluşturduğumuz raporları, Rep. Service’e yüklememizde sıkıntı yaşamış oluruz.

TCP Port – 80 portu varsayılan olarak gelir, değiştirilebilir.

SSL Certificate – SSL Port – Report Sunucunuzu internet ortamına açmak istiyor iseniz, ssl sertifika ve portunu buradan ayarlayabilirsiniz.

URLs – Raporlarını upload edeceğiniz Url linkini veriyor. Bu linki daha sonra nerede kullanacağımızı göreceğiz. Linke tıklarsanız, raporlarınızın bulunduğu ftp dizini açılacaktır.

SSRS – 16

Database – Database kısmında, Report sunucusunun kullanacağı veritabanlarının mevcut hangi sunucu üzerinde olduğu bilgisini verir.

Change Database – Buradan Report veritabanlarının sunucusunu değiştirebilir veya yeni bir Report sunucusu veritabanı oluşturabilirsiniz.

Database Credential – Report Server’a bağlanacak hesabın bilgisini verir.

Change Credential – Report Server’a bağlanacak hesabı değiştirme buradan yapılır.

SSRS-17

Report Manager URL – Web Service Url ile karıştırılmamalıdır, Report Server’ın web arayüzüdür, tüm raporlar buraya yüklenir. Raporlar ile ilgili yönetimsel değişiklikler bu adresten yapılır. Son kullanıcılar bu arayüzü kullanır. Subscription’lar (bildirimler) web arayüzden ayarlanır.

Virtual Directory – Erişim adresinin adı kısaltılabilir, farklı bir isim yazılabilir.

URLs – Rapor arayüzünün web erişim adresidir, linke tıklandığında arayüz açılır.

Advanced – Gelişmiş kısmında, sitenin erişim portu değiştirilebilir, Ssl bağlantı için port eklenebilir.

SSRS-18

E-mail Settings – Raporların mail ile kullanıcılara ulaşması için, Smtp sunucusunun adresini girileceği yerdir. Lokaldeki Exchange sunucusu ile sorunsuz çalışmaktadır. Remote smtp sunucuları için RSReportServer.config dosyasında parametrelerin değiştirilmesi gerekmektedir.

Remote Smtp detaylı bilgi için:
http://technet.microsoft.com/en-us/library/ms345234(v=sql.105).aspx

Sender Address – Gönderici adresi yazılır. Mail adresini başına isteğe bağlı olarak isim de yazılabilir. (Şekil SSRS-19)

SMTP Server – Smtp sunusunun ip adresi yazılır. Exchange sunucusu ise, iç relay’e açık olması gerekmektedir. Görüldüğü gibi, Mail hesabının kullanıcı ve şifresini herhangi bir yere girmedik, bu yüzden relayin açık olması şarttır.

Exchange Server’da relay izin vermek için detaylı bilgi:
http://technet.microsoft.com/en-us/library/bb232021(v=exchg.141).aspx

SSRS-19

Execution Account – Uzak bir sunucudan veri kaynağı kullanılacak ise, bu alana domain kullanıcı adı ve şifresi tanımlanmaktadır.

SSRS-20

 

Encryption Keys – Oturum açma bilgileri, bağlantı cümleleri ve diğer hassas veriler için şifrelenmiş anahtarları bu sekmede, yedekleyebilir, geri yükleyebilir, değiştirebilir veya silebilirsiniz.

SSRS-21

Configuration Manager’da yapacağımız ayarlar bu kadardı. Exit ile bu ekranda çıkıyoruz.

Makalenin başında da belirttiğim gibi adım adım yapılması gerekenleri, kontrol ederek ilerleyeceğız.

Rapor oluşturmaya başlamadan önce, Ftp servisimi ve Web arayüzümüz çalışıyor mu kontrol edelim. Configuration Manager – Web Service URL deki linke tıklıyoruz.

Raporlarımızı upload edeceğimiz ftp dizini geliyor, şu an hiçbir rapor yüklemediğimiz için boş geliyor.

SSRS-22

Raporları görüntüleyeceğimiz Web arayüzümüzü kontrol edelim. Configuration Manager – Report Manager URL’deki linke tıklıyoruz.

Web arayüzümüzde sorunsuz bir şekilde açıldı. Kurulumda IIS kurmamıza rağmen, Reporting Service tüm bu altyapıyı kendisi kurarak bizlere kolaylık sağlamaktadır.

SSRS-23

Kontrollerimizden sonra rapor oluşturma adımlarına geçebiliriz.

Reporting Service de iki farklı program aracılığı ile rapor oluşturabliriz. Visual Studio Data Tools ve Report Builder. Visual Studio ortamına yabancı olan son kullanıcılar için Report Builder aracı da alternatif olarak kullanılabilir. Bu iki yazılımın birbirinden pek farkı yoktur. Report Builder da özellikler Visual Stu. Data Tools’taki çoğu içeriği kapsamaktadır.

 

1-2 Veritabanı ekleme adımları:

Raporlarda, Microsoft’un örnek olarak sunduğu AdventureWork2012 veritabanını kullanacağız. Rapor tasarımlarına geçmeden önce aşağıdaki linkten .zip utanlı olan dosyayı indiriyoruz. Sadece data file’ı indirsek eğer veritabanını attach ederken log dosyası bulunamadı hatası verecektir.

http://msftdbprodsamples.codeplex.com/releases/view/55330
AdventureWorks2012_Data.zip

C dizininde DATA isminde bir klasör açıp, indirdiğim veritabanını ve log dosyasını buraya taşıyorum.

Sql Server Management Studio’yu açıyoruz.

SSRS-24

Object Explorer – Databases üzerinde sağ tıklayarak Attach diyoruz.

SSRS-25

Add butonuna basarak, veritabanını seçeceğimiz ekran açılacak, bu ekranda C:\DATA dizini altındaki AdventureWorks2012 veritabanını seçip bu ekranı kapatıyoruz.

SSRS-26

Data .mdf ve Log .ldf dosyası aşağıdaki gibi gözükecektir. Ok diyerek Attach işlemini tamamlıyoruz.

SSRS-27

Veritabanımızı Sql’e eklemiş olduk. Örnek raporlarımızı bu veritabanı üzerinden oluşturacağız.

2 – 1 VISUAL STUDIO DATA TOOLS İLE RAPOR OLUŞTURMA – İLK RAPORUM:

İlk raporumuzu oluşturmaya başlayalım, yukarda da bahsettiğim gibi, Visual Studio Data Tools ve Report Builder programları ile rapor tasarlayabilmekteyiz. İlk önce VS Data Tools programı ile rapor yapmayı göreceğiz.

Rapor oluşturmanın temelinde 4 ana unsur vardır;

  • Rapor tasarım aracı (VS Data Tools veya Rep. Builder)
  • Data Source (Veri kaynağı)
  • DataSets (Sorgular, Viewler, Stored Procudureler)
  • Rapor görüntüleme araçları (Web arayüzü, mail bildirimleri, pdf, excel aktarımları vb.)

Bu adımları iyi kavramak gerekir, bunları kavradıktan sonra rapor hazırlamak çok kolay olacaktır.

Microsoft Sql Server 2012 – Sql Server Data Tools’u açıyoruz.

Not: Sql server 2012 Reporting Service için bu makalede Visual Studio 2010 Data Tools programını kullanacağız, isterseniz, VS 2012 veya 2013 Data Tools programlarını da kullanıp rapor yapabilirsiniz, aralarında temelde bir fark yoktur.

SSRS-28

Visual Studio 2010 Shell olarak Data Tools programımız açıldı. Şimdi yeni bir rapor nasıl yapılır, adım adım anlatmaya çalışacağız.

New Project’e tıklayarak yeni bir proje oluşturuyoruz.

SSRS-29

Wizard yani sihirbaz ile ilk projemizi oluşturacağımızdan, Soldaki sekmeden Business Intelligence – Reporting Service’i seçiyoruz. Sağ taraftan Report Server Project Wizard’a bir kere tıkladıktan sonra, Name bölümünde raporumuza isim veriyorum. Location, rapor dosyalarının tutulacağı yerdir, burayı kalıcı bir klasör olarak seçmenizde fayda var, masaüstünde bir klasör belirlemeyin. C dizini altında C:\SSRS_Reports adında bir klasör oluşturuyorum. Browse butonunun altındaki Create directory for solution seçili olsun, her rapor için ayrı bir klasör oluşturacak, böylelikle yedekleme açısından daha kolaylık sağlar, aynı zamanda rapor dosyalarımız tek bir klasör altında toplanmış olur. Ok diyerek sihirbazı çalıştırıyorum.

SSRS-30

Bu sihirbaz ile neler yapabileceğinizi kısaca anlatan bir hoşgeldin ekranı geliyor. Next ile devam ediyoruz.

SSRS-31

Datasource, veri kaynağımızı belirtmemiz gereken ekrana geldik. Raporumuz için hangi veri kaynağına, hangi haklar ile bağlantı kuracağımızı ayarlayabileceğimiz ekrandır. Eğer farklı veri kaynaklarından veri alacak iseniz, datasource1 yazan yer anlamlı bir ifade yazmanız, ileride olabilecek karmaşıklığı önleyecektir.

Type – Makalenin başlarında da anlattıldığı gibi 12 farklı veri kaynağından veri çekebiliriz. Varsayılan olarak Microsoft Sql Server gelmektedir. Bizde Sql Server’dan veri çekeceğimiz için burasını aynen bırakıyoruz.

Connection String – Veri kaynağına bağlanırken, bağlantı cümlesini buradan ayarlıyoruz. Edit’e tıklayarak Connection Properties’i açıyoruz. Connection String’i detaylı olarak bir sonraki ekranda detaylı olarak anlatacağız.

SSRS-32

Connection Properties – Connection string’teki Edit butonu ile bağlantı özelliklerini açıyoruz. Bu sayfada, veri alacağımız Sql Server’ı, hangi kullanıcı ile bağlanacağımızı ve hangi veritabanından veri alacağımızı seçeceğimiz ekrandır. Connection properties raporlamanın ilk adımıdır.

Server name – Sql Server’ın adını yazacağımız alandır. Şu an için lokalden veri çekeceğimiz için, mevcut instance adımı yazdım. Farklı Sql sunucularından veri alınacağı zaman, Sql server adı veya ip adresi yazılabilir.

Log on the server – Sql sunucusuna hangi kullanıcı ile bağlanacağımızı yazacağımız alandır. Windows authentication da kullanılabilir. Tercih edilen yöntem; Sql üzerinde raporlamalarda kullanılacak bir kullanıcı açılarak kullanılmasıdır.

Connect to a database – Veri çekilecek veritabanı seçilir, bağlanılan sunucudaki veritabanları burada listelenir.

Attach a database file – Bir veritabanı dosyasını .mdf offline olarak kullanarak, rapor alabileceğiniz bir seçenektir.

Test Connection – Son olarak bağlantıyı test etmek için Test Connection’a tıklayarak kontrol edilmesinde fayda var, kullanıcı adı ve şifre girişlerinde hata var ise düzeltilebilmesi için test edilmelidir.

Advanced – Bu kısımda bağlantı cümlesini metin olarak kopyalacağınız ve gelişmiş ayarları bulabileceğiniz kısımdır.

Dikkat: Log on to the server kısmındaki, “Save my password” şifremi hatırla seçeneğini seçmezsek eğer, raporu her aldığımızda bize sql bağlantısı için şifre soracaktır. Domain yapısında kurulan bir Report Server için istenmeyen bir durumdur, domain yapısında kullanıcı bazında yetki verileceğinden ayrıca bir şifre sorması gereksizdir. Yalnız, domain olmayan bir ortamda kullanılacak ise sql şifresi sorarak güvenliği sağlayabilirsiniz.

SSRS-33

Connection String cümlesi ekrana geldikten sonra Next ile ilerliyoruz.

SSRS-34

Desing the query

    Query Builder

Sorgu Dizayn ekranına geldik, Query Builder’I açıyoruz.

SSRS-35

Query builder ekranına, Sql de hazırladığınız bir sorguyu çekebileceğimiz ekrandır. Rapora gelecek alanlar bu sorgu ile geleceğinden, alanlarla ilgili ayarlamaları buradan da yapabiliriz.

Sql Server’daki view ekranının bir benzeridir.

Query builder de kendi yazdığımız bir sorguyu, view veya bir function’ı ekleyip rapora getirebiliriz. Makalemizin başında bahsettiğimiz gibi, T-Sql bilgisi olmayan birisi için Report Server’I anlatacağız demiştik, bu sebeple raporumuza hazır bir “view” getiriyoruz. AdventureWorks2012 örnek veritabanında daha önceden hazır view’ler olduğundan bu veritabanını kullanmayı tercih etmiştik.

Query Builder’a view eklemek için, üstteki boş alanda sağ tıklayarak “Add table” diyoruz.

SSRS-36

İkinci sekme olan “Views” kısmına gelerek, burada vCompanySales view’ini seçiyoruz. Şirket satışları ile ilgili verileri rapora getireceğiz.

SSRS-37

View’I ekledik fakat daha hiçbir alan seçmedik, bu şekilde Ok’e basarsanız hiçbir alan seçmediğinize dair bir uyarı verecektir.

Rapora gelmesini istediğimiz alanları en üstteki kutudan seçiyoruz. Eğer All Columns dersek, tüm alanları seçer, ama sıralama yapamayız. Raporda görmek istediğim alanları tek tek seçiyorum.

Sıralamayı yıl olarak seçiyorum, büyükten küçüğe yıl olarak satışları getiriyor.

Sorguyu kontrol etmek için yukarıdaki ! işareti ile, sorguyu bir kereliğine çalıştırıyoruz. Sorgu sonuçları geldikten sonar Ok ile devam ediyoruz.

SSRS-38

Sorgu cümlesi aşağıdaki gibi geliyor. Bu sorguyu Sql Man. Studio da bir query yazıp buraya yapıştırsanız da çalışacaktır. Hiç sorgu yazmadan nasıl oluşturduğunu göstermiş olduk. Next ile ilerliyoruz.

SSRS-39

Raporun hangi formatta gösterileceğini seçeceğimiz ekran geldi. Tabular ve Matrix. Tabular bildiğimiz standart tabloların yan yana sıralanması ile oluşan rapor, Matrix ise, birden çok farklı veriyi karşılaştırmalı bir şekilde sunan rapor tipidir. İhtiyaca göre bu iki farklı tip rapor tipi seçilebilir. İlk önce tabular olarak raporumuzu yapacağız.

SSRS-40

Desing The Table

    Bu ekranda rapor tasarımı yapacağız. Hangi alana göre gruplandırma yapmak istiyorsak Group> butonuna basarak ilgili alanı Group’a dahil ediyoruz. Grupladıktan sonar, detayında hangi verileri görmek istiyorsak, ilgili verileri Details> butonuna basarak kutulara dahil ediyoruz. Page> kutusu ise, örnek olarak yıl veya tüm alanları kapsayan bir alan olabilir.

    Group için ProductCategory (Ürün kategorisi) seçiyorum. Details için de diğer görmek istediğim alanları seçtikten sonra Next ile ilerliyoruz.

SSRS-41

Choose the Table Layout

    Raporda verilerin Stepped (adım-adım) veya Block (birleşik) gelmesini buradan ayarlıyoruz.

    Include subtotals – Otomatik olarak gruplama yapılan alanın dahilinde alt toplamları alıyor.

    Enable drilldown – Gruplama yapılan alanları + ile genişletme seçeneği sunuyor.

 

SSRS-42

Choose the Table Style

    Altı farklı tasarım seçebiliyoruz. Bunlar örnek olarak verilmiş, istediğimiz şekilde renk ve font ayarlarını yapabilmekteyiz. Hızlı rapor oluşturmak için zaman kazanmak amacıyla kullanılmasında fayda var.

SSRS-43

Completing Wizard

    Burada raporumuza isim veriyoruz. Aslında önemsiz bir isim de verilebilir, daha sonrada değiştirilebilir. Fakat ilk verilen isim web arayüzüne upload edildiğinde, ardından raporun ismi değiştirilip üzerine upload edilir ise, web arayüzünde aynı raporu 2 farklı isimde görürüz. Bu yüzden isim konusuna dikkat edilmelidir.

SSRS-44

Raporumuz hazırlandı. Tasarım ekranında alanları bize getirdi.

SSRS-45

 

 

Desing sekmesinin yanındaki Preview – Ön izleme yaparak, raporumuzu görüntüleyelim. Alttoplamları almasını istemiştik, yılı da rakam olarak algıladığı için SUM(year) olarak getirmiş, satış tutarlarının toplamını da grupların üstüne getiriyor.

SSRS-46

Hızlı bir düzenleme yaparak, raporumuzu daha okunabilir hale getirelim.

Sales – Tutar kısımlarıdaki virgülden sonraki 4 haneyi kaldırarak, binlik ayraç koyacağız, bunun için [Sales] üzerinde sağ tıklayarak, “Textbox Properties”I açıyoruz.

SSRS-47

Veri alanlarının özellikler penceresine daha sonra detaylıca anlatacağız. Number sekmesine gelerek, Category’den Number’I seçiyoruz. Decimal places’I 0 yapıyoruz. Use 1000 seperator (,) ve Show zero as alanında Boş olanı seçiyoruz. Ardında Ok ile bu sayfayı kapatıyoruz.

SSRS-48

Aynı işlemi SUM(sales) alanı içinde yapıyoruz. Başlıkları da anlayacağımız şekilde düzenledikten sonra bir önizleme yapalım.

Görüldüğü gibi hızlı bir şekilde raporu daha okunaklı hala getirdik.

SSRS-49

Visual Studio Data Tools programı ile ilk raporumuzu bir view kullanarak yaptık. Raporu bu program içerisinde çalıştırdık. Şimdi son kullanıcılara bu raporu nasıl aktaracağız ona bakalım.

Makalenin başlarında bahsedildiği gibi, Reporting Services Configuration Manager’daki “Web Service Url” bölümdeki ftp linkine raporlarımızı yükleyeceğiz. Bu linki Web Service Url’den kopyalayalım.

SSRS-50

http://yavuz2012r2/ReportServer_SSRS2012

VS Data Tools – Project – <Raporadı> Properties veya Solution Explorer – <RaporAdı> Sağ klik – Properties, özellikler sayfasını açıyoruz.

Targer ServerUrl kısmına Web Service Url linkimizi yazıyoruz. Apply – Ok diyerek sayfayı kapatıyoruz.

SSRS-51

Solution Explorer’da Rapor adının üzerinde ilk önce “Build” diyerek raporun yapılandırılmasını sağlıyoruz. Raporu “Deploy” etmeden önce build edilerek kontrol edilmesinde fayda var. Raporda oluşabilecek hataları build ile tespit edebiliriz. Deploydan önce doğabilecek hataların önüne geçmiş oluruz.

Build dedikten sonra, “Deploy” ile raporumuzu web arayüzümüze yüklüyoruz.

SSRS-52

View menüsünden “Output” penceresini açarak, Build ve Deploy’un işlem çıktılarını görebiliriz. Klavye kısayolu: Ctrl+Alt+O

SSRS-53

Deploy ile raporu web arayüzüne gönderdim. Output çıktısını kontrol ediyoruz. Başarılı bir şekilde Deploy edildi.

SSRS-54

Deploy edilen raporumuzu, web ortamında bakalım. Web arayüz adresi, Rep. Serv. Conf. Man. deki “Report Manager Url” bölümdeki Url’dir. Bu Url’ye tıklayarak, web arayüzümüzü açıyoruz. Bu url nin kısayolunu diğer kullanıcılara atayabilirsiniz.

SSRS-55

Hazır bir web portalı karşımıza çıkıyor. Raporumuz IlkRaporum adı altında bir klasörün içinde. Bu da demek oluyor ki, bir klasör altında birden çok rapor yapabiliriz. VS Dat. Tools ile bir proje açıyoruz. Aynı proje içinde birden fazla rapor yapıp deploy edersek, aynı klasör altına gelecektir.

SSRS-56

Klasöre tıklayarak raporumuzu çalıştırıyoruz. Raporumuz web ortamında sorunsuz bir şekilde çalıştı.

SSRS- 57

2 -2 REPORT BUILDER İLE RAPOR OLUŞTURMA:

    Visual Studio Data Tools ile ilk raporumuzu tamamladıktan sonra, şimdi de Report Builder ile nasıl rapor yapılıyor bunu görelim. Report Builder, son kullanıcılar için ideal bir rapor tasarım aracıdır. Kullanıcının bilgisayarına web ortamından kurularak, raporlar oluşturmasını sağlar.

    Web arayüzünden “Report Builder” kısayoluna tıklayarak, programı indiriyoruz. Report Builder kurulmasını istediğiniz tüm kullanıcılarda programı kurmanız gerekiyor. İsterseniz aşağıdaki linkten programı indirebilirsiniz. Türkçe dil seçeneği de mevcut.

http://www.microsoft.com/en-us/download/details.aspx?id=29072

SSRS-58

Güvenlik uyarısı geliyor, Run ile devam ediyoruz.

SSRS-59

Report Builder açıldı. Web arayüzünden Report Builder kısayolu ile açılınca yükleme yapılacak Web adresini girmemize gerek kalmayacak, bu da son kullanıcı açısından kolaylık olacaktır. SSRS-60 şemasının en altında Report Server’ın adresi gözükmektedir.

SSRS-60

Table or Matrix Wizard sihirbazı ile yeni bir rapor oluşturuyoruz. Choose a dataset ekranında Create a new dataset – yeni bir veri seti oluşturmayı seçerek Next ile ilerliyoruz.

SSRS-61

Datasource – Veri kaynağı oluşturmak için New butonuna tıklıyoruz.

SSRS-62

Datasource Properties ekranında “Build”e tıklıyoruz. Connection type varsayılan olarak Sql Server olarak geliyor.

SSRS-63

Connection Properties ekranında, Server name’den Sql sunucumuzu seçiyoruz. Log on the server bölümünde Sql kullanıcı adı ve şifremizi giriyoruz. Save my password’ü işaretlemeyi ve Connect to a Database’den de veri alacağımız veritabanını seçtikten sonra sol alt köşede “Test Connection” ile bağlantımızı test etmeyi unutmayın. Ok ile devam ediyoruz.

SSRS-64

Connection string – bağlantı cümlemiz geldi. Ok ile bu ekranı kapatıyoruz.

SSRS-65

Veri kaynağımız, DataSource1 olarak geldi. Son olarak “Test Connection” ile son bir kontrol yaptıktan sonra Next ile ilerliyoruz.

SSRS-66

Desing a query ekranı geliyor. Bu ekran VS Data Tools’ta olmayan bir ekran, oradaki karşılığı Query Designer diyebiliriz.

Basit anlaşılabilir olması açısından makalenin başında da dediğimiz gibi view seçerek devam edeceğiz. Fakat bu sefer 2 farklı view den veri çekeceğiz. Satınalmaya ait iki view’e ait veriler getireceğiz, bir view’de tedarikçi iletişim bilgileri, diğer view’de ise adres bilgileri var, her iki view’de de BusinessEntityID ortak alan olduğu için iki tablo arasında bir bağlantı kuracağız.

AdventureWorks veritabanımdan, vVendorWithAddresses ve vVendorWithContacts viewlerini query ekranımıza ekliyoruz.

Phurchasing – View – iki view imiz arasında BusinessEntityID lerimiz ortak. Hangi alanları rapora getireceğiz, önce onları seçelim.

İstediğim 7 tane alanı seçtim.

SSRS-67

İki farklı view’den farklı alanları seçtim, bu şekilde sorguyu çalıştırır isek, hata verecek, iki view arasında bir ilişki (relationship) olmadığını belirtecektir. Aynı durum iki farklı table içinde geçerlidir, iki farklı tablodan verileri çekmek istediğimizde, ilişkili en az bir alana ihtiyaç vardır.

İki view arasında ilişki kurmak Için, Relationships kısmındaki aşağıya doğru bakan iki ok şekline tıklayarak bu alanı genişleştiriyoruz.

SSRS-68

Add Relationship butonuna tıklayarak boş bir relationship satırı ekliyoruz.

SSRS-69

Left table – sol tablo dan Right table – sağ tabloyu inner join – içiçe bağlama yöntemi le birbirleri arasın ilişkiyi kuracağız. Join Type’lara şimdilik girmiyoruz, sql sorgulama ile ilgili olduğu için, ilerlemek isteyen arkadaşlar araştırabilir.

Sol tabloyu seçiyoruz. VendorWithAddresses (Tedarikçilerin adresi)

SSRS-70

Sol tablo ile bağlanacak sağ tabloyu seçiyoruz. VendorWithContacs (Tedarikçilerin iletişim bilgisi)

SSRS-71

 

En sağda bulunan “Join Fileds” alanını çift tıklayarak açıyoruz. View’lerin hangi alanlarını birbirine bağlayacağımızı seçeceğiz.

Açılan pencerede “Add field”e tıklayarak boş bir satır oluşturduk.

SSRS-72

Sol taraf VendorWithAddresses, sağ taraf VendorWithContacs, her iki viewde BusinessEntityID’yi seçip Ok ile bu ekranı kapaptıyoruz.

SSRS-73

Birleştirme işlemi tamamlandı, şimdi Run Query diyerek, sorgumuzun çalışıp çalışmadığına bakalım. Eğer eşleşmede bir sorun var ise hata verir.

Sorgu çalıştı, görüldüğü gibi, her iki farklı view den, farklı alanları bir sorguda birleştirdik. Next ile ilerliyoruz.

 

 

SSRS-74

Arrange Fields – Rapora gelen alanların satırlardamı yoksa sütunlarda mı olacağnı seçeceğimiz ekrandır. Alanları sürükle bırak ile Columns – Rows – Value alanlarına taşıyabiliriz.

Values – Değerler bölümüne eklediğimiz alanların yanında aşağı doğru bakan bir ok işareti çıktı. Bu menüde matematiksel işlemler yapabileceğimiz seçenekler çıkmaktadır. Toplam al, ortalama al gibi.

SSRS-75

Choose the layout – Raporda alttoplamların ayarlanacağı ekrandır. Expand/collapse groups, artı ve eksi ile matrix yapısını istemiyorsak bu seçeneği kaldırıyoruz, raporda tüm alanlar açılmış bir şekilde gelir.

SSRS-76

Choose a style – Rapor alanlarını hazır templateler ile renklendirmemizi sağlayan ekrandır. Daha sonrada bu renkler değiştirilebilir.

SSRS-77

Sihirbaz ile işimiz tamamlandı, raporumuz Report Builder ekranına geldi. Run diyerek raporu çalıştırıyoruz.

SSRS-78

Rapor önizleme ekranında, şirket adı, şehir bazındaki tedarikçilerin iletişim bilgileri, gruplandırılmış şekilde raporumuz geliyor.

SSRS-79

Raporumuz çalıştığına göre, raporu Report Server’a kaydedeceğiz, adı varsayılan olarak Untited olarak geliyor, anlaşılır bir rapor ismi veriyoruz. Menu – Save as

SSRS-80

Raporu kayderkeni save as ekranında en üstte Look in bölümünde Report Server’ın adresini kontrol ediyoruz. Report Builder’I web arayüzünden açtığımız zaman, Report serverın adresi otomatik olarak geliyordu. VS Data Tools da adresi kendimiz girmiştik.

SSRS-81

Raporumuzu Report Servera kaydettik, şimdi web arayüzünü açıp, raporu kontrol edelim. Raporumuz web arayüzüne gelmiş görünüyor. Data Tools da hazırladığımız rapor klasör içinde gözüküyor. Report Builder ile hazırladığımız raporumuz ise tek başına ana dizine gelmiş durumda. Data Tools da yapılan raporlar varsayılan olarak klasör altında birleştirilmektedir. Report Builder da hazırladığımız raporları daha sonra web arayüzünde klasörlere taşıyabiliriz.

SSRS-82

Raporu çalıştıyoruz. Tedarikçi raporumuz sorunsuz bir şekilde çalışıyor.

SSRS-83

3 – VISUAL STUDIO DATA TOOLS BÖLÜMLERİ:

    Temel olarak VS Data Tools ve Rep. Builder ile rapor oluşturmayı gördük. Buraya kadar, hazır bir View ile basit raporları oluşturmayı ve bu raporları Report Server’ın web arayüzüne yüklemeyi gördük. Bu bölümde VS Data Tools’un bölümlerini inceleyeceğiz. VS Data Tool, tam anlamıyla Visual Studio ortamı değildir, shell denilen kabuk anlamına gelen bir versiyonu Rep: Service ile sunmuşlardır. Bu versiyonda sadece rapor yapmak için gerekli olan alanlar kullanıma açıktır.

    Data Tools açıldığında, bir karşılama ekranı gelir. New Project ile yeni bir projeye başlayabilir, Open Project ile de daha önce çalıştığımız projeleri açabiliriz.

SSRS-84

New Project ekranında, Reporting Services, Analysis Services ve Integration Services ile ilgili projeler oluşturacabileceğimiz seçenekler çıkmaktadır. Konumuz Rep. Services olduğu için, Rep. Services ile alakalı iki seçenek mevcuttur, Rep. Server Proj. Wizard ve Rep. Server Project. Wizard ile yukardaki örneklerde olduğu gibi adım adım raporumuuz hazırlayabilriz. Sihirbaz sayesinde datasource ve datasetleri oluşturmayı atlamadan rapora ekleriz. Rep. Server Project ise boş bir rapor sayfası açar, bu boş rapor sayfasında, önce datasource’u ekleyip ardından dataseti ekledikten sonra yeni bir rapor yapmaya başlayabiliriz.

Name: Raporumuzun adı

Location: Rapor dosyalarının tutulacağı klasör yolu

Solution Name: Proje adı, genelde name ile aynı olur

SSRS-85

Bizim sık kullanacağımız menülere göz atalım şimdi, Report Server Project’i seçerek boş bir rapor oluşturalım. Datatoolstanitim isminde boş proje sayfamız açıldı. Şu anda hiçbir veri veya raporla ilgili bir şey yok.

SSRS-86

Menülerde neler var, ne işe yarar bunları tanıtmaya başlayalım. Solution Explorer’da projemizin adı ana başlık olarak yazıyor. Bu başlık altında;

  • Shared Data Sources – Paylaşılan veri kaynakları demek, bir veritabanı ile bağlantımızı paylaştıktan sonra, yeni bir rapor yapmak istediğimizde bu paylaşılmış veri kaynağını kullanabiliriz. Tekrar tekrar aynı veri kaynağını oluşturmak zorunda kalmayız.
  • Shared Dataset – Paylaşılan veri seti, bir veri setini paylaşılan olarak ayarladığımızda, birden çok raporda istediğimiz zaman kullanabiliriz, sürekli aynı sorguyu hazırlamak zorunda kalmayabiliriz. Ya da bir raporda önceden yaptığınız bir rapordaki veri seti gerekiyor olabilir, paylaşılan veri setleri ile önceden hazırlanan raporlardaki verilere ulaşmak mümkündür.
  • Reports – Bu projedeki raporlarımızın bulunduğu klasör. (Not: Rep. Builder’da bu şekilde gözükmemektedir, son kullanıcıya hitap ettiği için, raporları kaydederken ilgili klasörlere atmamız gerekmektedir.)

Shared Data Source ve Shared Dataset şu anda size çok şey ifade etmesede, ileri seviyede raporlar yapmaya başladığınızda çok faydasını göreceğiniz özelliklerden biri olacaktır.

Reports üzerinde sağ tıklayıp Add – New Item diyoruz. (Add New Report, rapor sihirbazını çalıştırır)

SSRS-87

Report u seçip, rapora bir isim veriyoruz. Anlamlı bir isim vermek önemli, web arayüzünde raporun adı olarak bu isimi kullanacağız.

SSRS-88

Kullanım kolaylığı açısından, Toolbox ve Report Data nesnelerimizi IDE ekranımızda sabitleyeceğiz, bunun için en sol kısmına sabit olarak aşağıdaki şekil SSRS-89 daki gibi yapıyoruz.

SSRS-89

Rahat kullanım ve pratiklik açısından, rapor tasarım ekranımız aşağıdaki gibi olması en idealidir.

SSRS-90

Toolbox, Report Data, Solution Explorer, Properties, Output, Design pencereleri nedir, bu pencereler ile neler yapabiliyoruz, sırasıyla açıklamaya çalışalım.

3 – 1 Solution Explorer: Raporlarımız ile ilgili tüm dosyaların bulunduğu proje ekranıdır, SSRS-87’de buradaki bölümleri açıklamıştık. Projemize yeni bir veri seti, veri kaynağı ve rapor eklemek istediğimizde buradan da yapabiliyoruz. Buranın farkı, burada eklenen veri seti ve veri kaynağı paylaşılan yani shared olmaktadır, bu demek oluyor ki, farklı bir rapor projesinde solution explorer da oluşturduğumuz veri seti ve veri kaynağını kullanabilmekteyiz.

3 – 2 Properties: Rapor desing (tasarım) ekranımızdaki her bir obje ile alakalı özellikleri buradan değiştirebiliyoruz. Renk, kenar kalınlığı, font, arka plan renk gibi birçok özelliği bu ekrandan ayarlayabilmekteyiz. Bir nesneye sağ tıklayıp “Text Box Properties” ekranına girdiğimizde, burdaki ayarları biraz daha grafiksel olarak görmekteyiz. Daha çok aşağıdaki şekildeki properties ekranını kullanacağımızdan, bu penceredeki tüm seçenekleri anlatmayacağız.

SSRS-91

3 – 3 Toolbox: Raporlarda kullanacağımız tüm nesneleri bulabileceğimiz bölümdür. Pointer, Text box, Line, Table, Matrix, Rectangle, List, Image, Subreport, Chart, Gauge, Map, Databar, Sparkline, Indicator nesnelerini rapora ekleyebiliyoruz, bu nesneler ile ilgili detayları ilerki bölümlerde yeri geldiğinde anlatcağız.

SSRS-92

3 – 4 Report Data: Rapor verilerinin olduğu bölümdür. 5 alt başlıkta oluşur. Built-in-filds, Parameters, Images, Data Sources, Datasets.

Built-in-fields: Rapor içerisine sabitleyeceğimiz alanlardır. Rapor alınma saati, rapor dili, rapor sayfa numaraları, rapor sunucusunun adı, kullanıcı id si v.b.

Parameters: Raporu çalıştırdığımız zaman, kullanıcıya sorulacak parametreleri buradan ayarlıyoruz. Parametre tanımlamak için iki farklı yol vardır. Birincisi Report Data – Parameters’dan parametre ekleyip, bu eklenen parametreyi datasetteki bir alan ile eşleştirmek. İkincisi de, sorgu tasarım ekranında Where operatörü ile parametre eklemek. Her iki örneği de ilerleyen sayfalarda örneklerle göstereceğiz.

Images: Rapor içerisine eklenecek resimleri buradan ekliyoruz. Rapor dosyalarınızın olduğu dizinde resimleri tutmakta fayda vardır, rapor klasörünü başka bir sunucuda devreye aldığınızda Images’larda beraberinde gelecektir.

Data Sources: Solution Explorer’daki Data Source ile benzerdir, fakat sadece açık olan rapor için veri kaynağı oluşturur, paylaşılan bir veri kaynağı seçilebilir. Bir raporda birden çok veri kaynağı olabilir, farklı sunucular ve farklı sunucu tiplerinden bir rapora veri alınabilir.

Datasets: Veri setlerinin olduğu bölümdür, paylaşılan bir veri seti kullanılabilir. Paylaşılan bir veri setinin avantajı, birden çok raporda rahatlıkla kullanılabilmesidir. Bir raporda birden fazla veriseti kullanılabilir. Farklı veritabanlarındaki verileri bir raporda birleştirebiliriz. Datasets bölümünü bu aşamada kullanmaktayız.

SSRS-93

3 – 5 Output: Output, çıktı ekranı da diyebiliriz. Hazırlanan raporları build veya deploy işlemlerinin çıktılarını görebilceğimiz alandır. Hataları buradan takip edeceğimiz için, önemli bir ekrandır. Rapor içerisinde hesaplama veya veritabanı ile ilgili hatalarda bu ekrana gelmektedir. Data tools ekranının en altında konumlanmıştır.

SSRS-94

Rapor tasarımda kullanacağımız bölümler bunlar. Ekranın üsttünde standart Visual Studio menüleri mevcuttur. Şekil SSRS-51 de de gösterildiği gibi, raporumuzu Deploy etmek için, Web Server Url’imizi raporumuzun properties ekranına girmemiz gerekiyor. Eğer buna dikket etmez isek, rapor web arayüzüne yüklenmeyecektir.

Project – <raporadı> Properties

SSRS-95

Web Server Url’yi Target Server Url kısmına kopyalayıp Apply – Ok ile ekranı kapatıyoruz.

SSRS-96

    Bu aşamaya kadar temel seviyede BIDS ve Rep.B. üzerinden rapor oluşturmayı, bu raporları web arayüzüne yüklemeyi, BIDS arayüzünün temel bileşenlerini inceledik. Makalenin bu bölümünden sonra, ileri seviye raporlama hakkında bilgiler aktaracağız. Rapor içerisindeki parçaların detaylarına girip, ipuçlarını aktarmaya çalışacağız.

Bölüm – 1 Sonu