Makale Özeti

Bu yazımızda Crystal Reports raporlama aracının genel özellikleri üzerinde durarak , raporlama aracını temel özellikleri ile tanıyacağız. Sonrasında basit bir rapor oluşturarak önemli noktalar üzerinde duracağız.

Makale




Crystal Reports'a Giriş ve Temel Bir Rapor Oluşturma

Tüm dünyada kurumsal uygulamaların en önemli özelliklerinden biri raporlamadır. Çünkü bütün sistemler, kullanıcılarından bilgi toplar ve sonunda bütün bu bilgileri tek tek işleyerek bir bütün halinde geriye döndürür. Raporlar bu noktada kullanıcılara yorum yaparak , mevcut yazılıma karar destek sistemi olma özelliği kazandırır.

Crystal Reports tüm dünyada kurumsal uygulamalarda en çok kullanılan raporlama araçlarından biridir. Bu bağlamda Crystal Reports ile rapor almak ve sorgular yazabilmek bir çok kurumsal yazılımcı için çok önemlidir.

Biz de Crystal Reports ile basit bir rapor oluşturulurken hangi süreçlerden geçildiğini ve bir rapor çıktısı almak için hangi kritik noktalara dikkat edilmesi gerektiğini inceleyerek işe başlayacağız.

Öncelikle Crystal Reports’u çalıştırarak başlayalım. Başlat –> Tüm Programlar -> Crystal Reports 10 veya Başlat –> Tüm Programlar -> Crystal Reports 10 Tools -> Crystal Reports 10 ile Crystal Reports uygulamasını başlatalım.

Karşımıza ilk çıkacak pencerede yeni rapor oluştururken wizard yani sihirbazdan mı yararlanacağımız yoksa boş bir rapor mu oluşturacağımız belirlenir. Biz kendi örneğimizde boş rapor üzerinden giderek kendimiz rapor oluşturacağız. Bu sebeple As a Blank Report seçiyoruz.



Bir sonraki adımda hangi veri kaynağından yararlanacağımızı belirtmeliyiz. Veri kaynakları Access, Excel , MS SQL Server, Oracle gibi aklınıza gelebilecek herhangibir veritabanı şeklinde olabilir.

Create New Connection ‘a tıklayıp, OLE DB(ADO) ‘ya tıklıyoruz. Biz örneğimizde MS SQL Server üzerinde Northwind veritabanından faydalanacağımız için bu seçeneği seçiyoruz.Şekilde görüldüğü gibi diğer veritabanı tipleri için farklı sunucu seçimi şansı da vardır.


OLE DB Provider seçeneğinden sonra aşağıdaki şekilde görüldüğü gibi Microsoft OLE DB Provider for SQL Server seçerek ilerliyoruz.



Bir sonraki adımda bize hangi veritabanı sunucusundan (database server name), hangi kullanıcı adı ve şifresiyle hangi veritabanına bağlanacağımızı soruyor.




Bu bilgileri verdikten sonra hangi tabloları raporumuzda kullanacağımızı belirtiyoruz. Bu tabloları belirtmemizin sebebi, raporda hangi tablolar kullanılacaksa sadece onların menude çıkmasını sağlamaktır. Yüzlerce tablosu olan bir veritabanı düşünürseniz, sadece ihtiyacınız olan tabloları görüntülemenin önemi daha rahat anlaşılacaktır.




Bu şekilde Crystal Reports üzerinde temel bileşenler görüntülenmiştir. İstediğimiz tabloları ekledikten hemen sonra bu ekran açılır. Kısaca özetlemek gerekirse, ana ekran Design penceresi olarak nitelendirdiğimiz bölümdür. Her rapor Report Header, Page Header, Details, Report Footer ve Page Footer ana bölümlerine sahiptir. Report Header, rapor başlığı anlamına gelip her raporun sadece en başında bir kez görüntülenir. Firma veya ürün adı, logosu altına raporun konusu örneğin “Sektörlere Göre Firma Listesi” gibi istediğiniz şeklinde yazılabilir. Page Header her sayfa başında çıkar. Raporun çok fazla sayıda veri içermesi durumunda sayfa sayfa gösterileceğini düşünürsek, her sayfa başında görüntülenmesini istediğimiz bilgileri bu bölüme ekleriz. Details bölümü ise, ana veri taşıyıcı bölümdür. Raporun içindeki tüm dinamik veriler bu bölümde saklanır. Page Footer her sayfanın sonunda çıkan bir bilgi bölümüdür. Sayfa numarası 1 / 50 Sayfa gibi .. Report Footer raporun sadece sonunda bir kez çıkar. Ürün bilgisi, copyright, yıl ; örneğin Intergity CRM © 2005 gibi bir bilgiyi de buraya yazabiliriz.




Report Sections yani rapor bölümlerini tanıdıktan sonra basit bir rapor oluşturabiliriz. Yukardaki resimde gördüğümüz gibi ekranın sağ tarafında Field Explorer adında bir pencere açık durumda ( Bu pencere siz raporu dizayn ederken otomatik olarak açık gelir. Görüntüleyemediğiniz zaman ise Menu üzerinde View -> Field Explorer’a tıklayarak açabilirsiniz). Field Explorer üzerindeki alanlar, raporumuzda kullanılabilecek tüm bilgileri içerir. Database Fields altında az önce seçmiş olduğumuz tablolar ve alanları yer alır. Onun altındaki Formula Fields , bu tablolardan ve alanlardan yararlanarak özel hesaplanan alanlar yaratmaya yarar. Parameter Fields, dışardan kriter vererek rapordan dönen satırları , kullanıcının istediği filtreye göre dinamik olarak sınırlandırmaya yarar. Running Total Fields , satır satır toplayarak (kümülatif) giden bir özelliğe sahiptir. Örneğin 4. satır 1,2,3 ve 4. satırların; 5 .satır 1,2,3,4 ve 5. satırların toplamıdır şeklinde gider. Bir çok kurumsal uygulamada bizden istenen sayfa toplamı gibi bir özelliği bu şekilde sağlayabiliriz.

Şimdi adım adım basit bir rapor oluşturalım. Sağ tarafta Field Explorer üzerinde Customers tablosuna tıklarsak ilgili alanları açılacaktır. Buradan önce CompanyName alanına tıklayalım. Sürükle bırak yöntemi ile ; CompanyName alanını seçip Details bölümünün içine en sola bırakalım. Aynı işlemi Address, City ve Country alanları için de yapmalıyız. Biz bu alanları Details bölümüne sürükleyip bırakmakla, tablonun içindeki bu sütunlara ait tüm satırları raporumuza koymuş oluyoruz. Bu alanların başlık bilgisi de otomatik olarak Crystal Reports tarafından aynı isimle Page Header bölümüne eklenir. Genelde kullanıcıların yanıldığı bir bölümdür, Page Header’daki sadece başlıktır. Details’takiler ise sayfalarca bile sürebilecek verilerdir. Aynı isimle yaratıldıkları için kullanıcılar tarafından karıştırılırlar.




Çok basit bir raporun dizaynını bitirmiş durumdayız. Tek bir tablodan Customers (Müşteriler) tablosundan CompanyName, Address, City ve Country isimli alanları aldık. Raporumuzun çıktısını görelim. Bunun için yapmamız gereken şey ; Menu üzerinde Report - > RefreshReportData’yı seçmek veya basitçe F5’e basmak! Çıktıyı aşağıdaki resimde görebiliyoruz :




Gördüğümüz gibi raporu oluşturduğumuz bölüm Design, çıktısını görüntülediğimiz bölüm ise Preview penceresi olarak adlandırılıyor. Önemli bir tavsiye, yapmak istediğiniz değişiklik ve eklemeleri Design penceresi içinde yapın. Preview penceresi içinde yapabilecekleriniz zaten sınırlıdır. Tüm işlemlerinizi Design içinde yaparsanız standart bir çalışma şekliniz olur ve hata riskini en aza indirmiş olursunuz.

Bir sonraki yazımızda bir raporu formatlamak yani istediğimiz görselliğe kavuşmasını sağlamak, bir rapor oluştururken birden fazla tablodan rapor yararlanmak, grouping ve sum (gruplama ve grup toplamı) gibi özellikler üzerinde duracağız.



Onur Kulabaş
Yazılım Danışmanı


Sorularınız için onur.kulabas@bilgeadam.com