tag:blogger.com,1999:blog-6501107854818923929.post-48705746248317159632008-01-14T05:08:00.000-08:002008-01-14T05:27:12.916-08:00Reporting Services (Rapor Servisi) ile Parametrik Rapor Oluşturmak<strong>Reporting Services (Rapor Servisi) ile Parametrik Rapor Oluşturmak</strong><br /><div><div> </div><div>Reporting Services(Raporlama sevisi) ile SQL Sorguları ve Stored Procedure’leri kullanarak parametrik rapor oluşturabiliriz. Bu parametrik raporların parametre değerlerini çalışma zamanında alarak, rapor değerlerinin çalışma zamanında değişmesini sağlayabiliriz.</div><div> </div><div>Bu makalemde AdventureWorks veritabanı içerisindeki personelin, adres bilgilerini şehirlerine göre getireceğim. Rapor içerisindeki City isimli TextBox içerisine girilen şehire göre müsterilerin adres bilgilerini rapor üzerinde göstereceğim.</div><div> </div><div>Şimdi Visual Studio 2005 içerisinden “Report Server Project ” şablonunu seçin.</div><br /><div><a href="http://4.bp.blogspot.com/_ybjaTHsa6dA/R4tfpp20LgI/AAAAAAAAABc/X-ScTLJiNa4/s1600-h/1000000350_image001.jpg"><img id="BLOGGER_PHOTO_ID_5155319367670705666" style="CURSOR: hand" alt="" src="http://4.bp.blogspot.com/_ybjaTHsa6dA/R4tfpp20LgI/AAAAAAAAABc/X-ScTLJiNa4/s400/1000000350_image001.jpg" border="0" /></a><br /></div><br /><div>Oluşturduğumuz projenin “Solution Explorer” penceresi içerisindeki “Shared Data Sources” klasörü üzerinde farenin sağ butonunu tıklayın. Açılan kısayol menüsünden “Add New DataSource” menüsünü tıklayarak yeni bir Connection String oluşturalım. “Shared Data Source” penceresini aşağıdaki gibi ayarlayın. Eğer SQL Server’ default instance olarak kurmuşsanız, Connection string metin kutusuna “Data Source=localhost;Initial Catalog=AdventureWork” ifadesini yazın.</div><div> </div><div><a href="http://3.bp.blogspot.com/_ybjaTHsa6dA/R4tfZZ20LfI/AAAAAAAAABU/Gq8pz8OuNgE/s1600-h/1000000350_image002.jpg"><img id="BLOGGER_PHOTO_ID_5155319088497831410" style="CURSOR: hand" alt="" src="http://3.bp.blogspot.com/_ybjaTHsa6dA/R4tfZZ20LfI/AAAAAAAAABU/Gq8pz8OuNgE/s400/1000000350_image002.jpg" border="0" /></a></div><br /><div>“Ok” butonunu tıklayarak, Shared Data Source penceresini kapatın. Şimdi raporumuzu oluşturalım. Projenin “Solution Explorer” penceresi içerisindeki “Reports” klasörü üzerinde farenin sağ butonunu tıklayın. . Açılan kısayol menüsünden “Add New Report” menüsünü tıklayarak “Report Wizard” sihirbazını kullanarak yeni bir rapor oluşturalım. “Next” butonunu tıklayarak bir sonraki adıma geçin</div><br /><div>Açılan “Select the Data Source” penceresinden, az önce oluşturduğumuz ds isimli “Data Souce” seçerek bir sonraki adıma geçin.</div><br /><div>Açılan “Desing the Query” penceresinin “Query String” penceresine aşağıdaki sorguyu yazın.<br />“SELECT Person.Contact.ContactID, Person.Contact.FirstName, Person.Contact.MiddleName, Person.Contact.LastName, Person.Address.AddressLine1,<br />Person.Address.AddressLine2, Person.Address.City<br />FROM Person.Contact INNER JOIN<br />HumanResources.Employee ON Person.Contact.ContactID = HumanResources.Employee.ContactID INNER JOIN<br />HumanResources.EmployeeAddress ON HumanResources.Employee.EmployeeID = HumanResources.EmployeeAddress.EmployeeID INNER JOIN<br />Person.Address ON HumanResources.EmployeeAddress.AddressID = Person.Address.AddressID<br />Where Person.Address.City = @City”</div><br /><div><a href="http://4.bp.blogspot.com/_ybjaTHsa6dA/R4tgIp20LhI/AAAAAAAAABk/j48UpQUMWz0/s1600-h/1000000350_image005.jpg"><img id="BLOGGER_PHOTO_ID_5155319900246650386" style="CURSOR: hand" alt="" src="http://4.bp.blogspot.com/_ybjaTHsa6dA/R4tgIp20LhI/AAAAAAAAABk/j48UpQUMWz0/s400/1000000350_image005.jpg" border="0" /></a></div><br /><div>“Select the Report Type” penceresinden “Tabular” seçeneğini seçerek, “Next” butonunu tıklayın.</div><div> </div><div>“Design the Table” başlıklı pencere içerisinden, “Available Fields” liste kutusundaki tüm alanları “Details” isimli liste kutusuna sürükleyin ve “Next” butonu tıklayarak bir sonraki adıma geçin.</div><div></div><br /><div>“Choose the Table Style” penceresi içerisinden “Slate” isimli stili seçin ve bir sonraki adıma geçin.</div><br /><div>“Completing the Wizard” penceresinden “Report name” metin kutusuna ReportEmployee ismini girdikten sonra, “Finish” butonunu tıklayarak sihirbazı sonlandıralım.</div><br /><div>“Finish” butonunu tıklayarak “Report Wizard” sihirbazını sonlandıralım.<br />Projenin “Solution Explorer” penceresi içerisindeki Proje ismi üzerinde farenin sağ butonunu tıklayın. . Açılan kısayol menüsünden “Properties” menüsünü tıklayarak “Property Page ” penceresini açın. “Property Page” içerisinde “TargetServerURL” özelliğine (eğer SQL Server’ default instance olarak kurmuşsanız) <a href="http://localhost/ReportServer">http://localhost/ReportServer</a> degerini yazın.<br />Oluşturduğumuz rapora Rapor Yöneticisi(Report Manager) üzerinden erişelim. Bunun için <a href="http://localhost/Reports">http://localhost/Reports</a> adresine gitmeniz yeterli. Rapor Yöneticisi(Report Manager) üzerinden oluşturduğumuz rapora erişmek için “<a href="http://localhost/Reports$yukon/Pages/Folder.aspx?ItemPath=%2fReportParametrik&ViewMode=List">ReportParametrik</a>” klasörünü tıklayın.</div><br /><div><a href="http://3.bp.blogspot.com/_ybjaTHsa6dA/R4thZZ20LiI/AAAAAAAAABs/Ex9RZEUAQ78/s1600-h/1000000350_image010.jpg"><img id="BLOGGER_PHOTO_ID_5155321287521087010" style="CURSOR: hand" alt="" src="http://3.bp.blogspot.com/_ybjaTHsa6dA/R4thZZ20LiI/AAAAAAAAABs/Ex9RZEUAQ78/s400/1000000350_image010.jpg" border="0" /></a></div><div> </div><div>Oluşturduğumuz raporun Rapor Yöneticisi üzerindeki görüntüsü aşağıdaki gibi olacaktır.</div><div><br /></div><a href="http://1.bp.blogspot.com/_ybjaTHsa6dA/R4thn520LjI/AAAAAAAAAB0/f6pe9s78XN0/s1600-h/1000000350_image011.jpg"><img id="BLOGGER_PHOTO_ID_5155321536629190194" style="CURSOR: hand" alt="" src="http://1.bp.blogspot.com/_ybjaTHsa6dA/R4thn520LjI/AAAAAAAAAB0/f6pe9s78XN0/s400/1000000350_image011.jpg" border="0" /></a><br /><br /><div></div><div>Şimdi raporun üzerindeki “City” isimli metin kutusuna “Seattle” degerini yazın ve “View Report” butonu tıklayın. Sonuç aşağıdaki gibi olacaktır.</div><br /><div><a href="http://3.bp.blogspot.com/_ybjaTHsa6dA/R4th0Z20LkI/AAAAAAAAAB8/m4dC1Xdn01o/s1600-h/1000000350_image012.jpg"><img id="BLOGGER_PHOTO_ID_5155321751377555010" style="CURSOR: hand" alt="" src="http://3.bp.blogspot.com/_ybjaTHsa6dA/R4th0Z20LkI/AAAAAAAAAB8/m4dC1Xdn01o/s400/1000000350_image012.jpg" border="0" /></a></div><div> </div><div>Başka bir makalede görüşmek üzere...<br />Tamer ŞAHİNER<br /><a href="mailto:Tamer.sahiner@bilgeadam.com">Tamer.sahiner@bilgeadam.com</a></div><div> </div></div><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6501107854818923929-4870574624831715963?l=tamersahiner.blogspot.com'/></div>tamersahinerhttp://www.blogger.com/profile/00797131681729869275noreply@blogger.com0