Pivot Table

Pivot Table Pivot TablePivot table, ilişkili veritabanlarından ve çok boyutlu veri kaynaklarından verileri gösterebilmektedir.  Pivot table kullanarak, çok büyük verilerin analizlerini yönetebilirsiniz. Pivot tables Microsoft Ofis geliştirme deneyimi olmayan bir çok .NET geliştiricisi için yenidir. Bununla birlikte, veri analizi yapmak zorunda olan son kullanıcılar için de son derece önemlidir. Şekil 1"de,  excelde hazırlanmış bir pivot tables bulunmakta. Malzeme alış bilgilerini içeren kaynaktan, aylara göre her malzeme için ödenen fiyat toplamları pivot table sayesinde görüntülenmekte. Tablodaki bilgiler pivot table tool sayesinde değiştirilebilir, daha fazla ayrıntı  içerebilir.Şekil1Çoğu .NET geliştirici, veri analizi sonucunu datagrid kullanarak gösterdiğinden, son kullanıcı kendi istediği analiz yönetimi gerçekleştiremiyor olabilir. VSTO içerisinde Pivot Table yaratmak için iki yöntem bulunmakta. Bunlardan bir tanesi PivotTable sihirbazını kullanmak. Diğer bir yol, çalışma sayfasına pivot table nesnesini eklemek. İlk seçeneği inceleyecek olursak, özel parametre listesi ile koddan sihirbaz çağarılabilir. Sihirbaz kullanımında mutlaka gerekli olan parametre değerleri sağlanmalıdır. Public Overridable Sub PivotTableWizard ( _ SourceType As Object,  _  SourceData As Object,   _  TableDestination As Object,   _  TableName As Object,   _   RowGrand As Object, _    ColumnGrand As Object, _  SaveData As Object, _  HasAutoFormat As Object, _  AutoPage As Object, _  Reserved As Object, _  BackgroundQuery As Object, _  OptimizeCache As Object, _  PageFieldOrder As Object, _  PageFieldWrapCount As Object, _  ReadData As Object, _  Connection As Object _) Parametreler : SourceType : Veri kaynağının nereden alınacağını belirtir. Bir XlPivotTableSourceType  değeridir. SourceData : Veri kaynağının tanımlandığı yerdir. TableDestination : Raporun oluşturulacağı aralığı belirtir. Eğer bu parametre tanımlanmaz ise, aktif olan hücrede rapor oluşturulur. TableName : Yeni raporun ismidir. RowGrand : Eğer satılar için toplam değeri görüntülenecekse, değeri True olmalıdır. ColumnGrand : Eğer sütunlar için toplam değeri görüntülenecekse, değeri True olmalıdır. SaveData : Raporla birlikte veriyi kaydetmek için True, sadece raporun tanımlarını kaydetmek için False değeri atanır. HasAutoFormat : Rapor yenilendiğinde ya da alanları taşındığında, Excelin otomatik formatını alması için True değeri atanır. AutoPage : Sadece kaynak tipi xlConsolidation olanlarlar için geçerlidir.Excel sayfa alanı yaratacak ise True değeri atanır.False değeri atanırsa, sayfa alan(lar)ı mutlaka yaratılmalıdır. Reserved : Excel tarafından kullanılmaz BackgroundQuery : Excel arka planda rapor için sorgu gerçekleştirecekse True değeri atanır. OptimizeCache : pivotTable oluşturulurken önbellek optimize edilecekse True değeri atanır. PageFieldOrder : Sayfa alanlarındaki sıra PivotTable rapor yerleşimine eklenir. XlOrdeR  sabitlerinden biri kullanılabilir. PageFieldWrapCount : PivotTable raporunun içindeki her bir satıda ya da sütundaki sayfa alanlarının sayısıdır. ReadData : Dış veritabanından bütün kayıtları içeren PivotTable ön belleği yaratmak için True değeri atanır,bu ön bellek çok büyük olabilir. Connection : ODBC veri kaynağına bağlanmak için, ODBC ayarlarını içeren metindir.PivotTableWizard metodu, PivotTable nesnesi döndürmektedir. Bu nesneyi kullanarak, PivotTable üzerinde işlemler gerçekleştirilebilir.En gereksinim duyulan, PivotTable a ait, satır, sütun ve veri değerleridir. Satır ve sütun belirlemek için, AddFields metodundan yaralanılır. Dim RowFields As Object Dim ColumnFields As Object Dim PageFields As Object Dim AddToTable As Object Dim returnValue As Object Dim pivotTable1 As PivotTable returnValue = pivotTable1.AddFields(RowFields, ColumnFields, PageFields, AddToTable) RowFields : Rapora eklenecek satır alanını temsil eder. ColumnFields : Rapora eklenecek sütun alanını temsil eder. PageFields : Rapora eklenecek sayfa alanını temsil eder. AddToTable : Sadece PivotTable raporlarında kullanılır. Rapora özel bir alan eklemek için, True değeri, yeni alanı var olan bir alan ile değişmesi için False değeri atanır.PivotTable içerisinde analiz etmek istediğimiz veriyi, AddDataField metodu ile belirtebiliriz. AddDataField metodunda bulunan Function parametresi, veri üzerinde yapılacak işlem belirtilir; Toplama, Ortalama gibi.. Dim Field As Object Dim Caption As Object Dim Function As Object Dim returnValue As PivotField Dim pivotTable1 As PivotTable returnValue = pivotTable1.AddDataField(Field, Caption, Function)Şekil1 "de excelde tasarlanmış olan pivotTable yukarıda belirtilen metodları kullanarak oluşturacak olursak; öncelikle vs.net 2005 de, Project types : Office, Templates: Excel Template seçerek yeni bir proje oluşturalım.Solution Explorer "da oluşturulan  Sheet1.vb tıklandığında, excel tasarım görünümüne pivot table oluşturacağımız kaynağını oluşturalım.(Bu kaynağı, ilerdeki makalelerde uygulamalarımızdan alacağız.)Şekil2Kaynağı oluşturduktan sonra, kodu yazmak için, Shhet1.vb üzerindeki kısa yol menüsünden, View Code komutunu çalıştıralım.Şekil3Kodumuzu çalıştırdığımızda, Şekil1 deki gibi bir görünüm oluşacaktır.

Döküman Arama

Başlık :

Kapat