Makale Özeti

Microsoft ofis dökümanlarından fazlasıyla alıştığımız, kullanımımızı fazlasıyla kolaylaştıran ve hızlandıran, aynı zamanda da bir standart katan templateleri report designerda da kullanabilsek nasıl olurdu?

Makale

Template Rapor Oluşturma

    Microsoft ofis dökümanlarından fazlasıyla alıştığımız, kullanımımızı fazlasıyla kolaylaştıran ve hızlandıran, aynı zamanda da bir standart katan templateleri report designerda da kullanabilsek nasıl olurdu?  Örneğin, Powerpoint'i düşünün. Bir kez background-color tanımladığınızda, butün slaytlarınızda kullanabilirsiniz, aynı şekilde, şirketinizde yaptığınız tüm raporların görsel formatlarının aynı olması isteniyorsa bunu nasıl yapacaksınız?

    Eğer bir template (şablon) oluşturamıyorsak bir temel rapor yaparak diger tüm raporları bundan kopyalayarak yapabiliriz. Bu en basit çözümümüzdür. Fakat VS.NET IDE'si bize daha kolay çalışabileceğimiz bir yapı sunuyor. Template Reports.

    Adım adım neler yapabileceğimizi inceleyelim:

    1) Template raporumuzu oluşturacağımız yeni bir Report Project açın ve yeni bir rapor ekleyin. (bu işlemi yaparken wizard kullanmayın, sadece boş bir rapor ekleyin. Örneğimizde herghangi bir database bağlantısı olmayacağı için wizard'ın adımları ile zaman kaybetmeyin.)

    2) Eklediğiniz rapora menuden Report > Page Header bölümünden başlık kısmını aktive edin.

    3) Tüm raporlarınızda görüntülenecek başlık kısmında olmasını istediğiniz, şirket kimliğini yansıtan açıklama, resim vb. içeriği girin. Resim ekleyecekseniz bunu bir embedded resource olarak eklemelisiniz.  

    Ben yukarıda, yazgelistir.com logosunu, sloganını ve raporun kac sayfadan oluştupu ve hangi tarihte olusturulduğu bilgilerini başlık için yeterli buldum. Sayfa sayısını göstermek için textbox'ın expressionına
="Sayfa : " & Globals!PageNumber & " / " & Globals!TotalPages 
yazdım. Bugünün tarihini almak için ise, diğer textbox'ın expressionına
=DateTime.Now.ToShortDateString
yazdım. Bu sayede başlığımızın çalışma esnasındaki görüntüsü şu şekilde olacak:

    4) Tüm raporlarda görüntülenecek Footer kısmını menuden Report > Page Footer'ı seçerek aktive edin ve gerekli içeriği bu alana da girin. Örneğim şu şekilde oluştu

    5)  Şablon raporumuz son halini aldığında Preview diyerek inceleyin ve bir hata içermediğinden emin olun. Raporunuzu kaydedin ve Visual studio'yu kapatın.

    6) Şimdi şablon olarak dizayn ettiğimiz bu raporu Visual Studio için bir şablona dönüştürelim. Rapor projenizi oluşturduğunuz folder'a gidin ve raporunuzu bulun. Genel olarak My Documents / Visual Studio Projects / Report Project1 gibi bir path te bulunur. Raporunuzun rdl dosyasını (bu raporun kendisidir.Diger dosyalar proje ve solution yapıları ile ilgili dosyalardır.) kopyalayın. Ben rapor ismine YazGelistirTemplate.rdl vermiştim.

    7) Kopyaladığınız bu dosyayı C:\Program Files\Microsoft SQL Server\80\Tools\Report Designer\ProjectItems\ReportProject pathine kopyalayın.

    8) Artık templatimiz oluştu. Şimdi yeni bir Visul Studio üzerinden yeni bir rapor projesi açın. Ve ekleyeceğiniz itemları Solution Explorer üzerinde, reports a sağ tıklayarak Add New Item üzerinden ekleyin.

 9) Açılan pencerede az önce yaratmış olduğunuz templati göreceksiniz. Artık tüm raporlarınızı onun üzerinden oluşturabilirsiniz.

Bu sayede, yeni raporlarınızda header / footer ile uğraşmayacak, tüm raporlarınızı standart bir görsel rapor üzerinden daha hızlı bir şekilde yapabileceksiniz. Çok önemli bir noktaya dikkat çekmek istiyorum: bu şekilde bir template oluşturmak yalnızca raporu kopyala yapıştır gibi bir işlemden bizi kurtarır. Yani bir miras (inheritance) içermez. Daha açık bir şekilde, bir kaç rapor yaptıktan sonra, template te yaptığınız bir değişiklik, daha önce yaptığınız raporlara yansımayacaktır.

İyi çalışmalar.

Kivanc OZUOLMEZ