2013-07-16 14 views
6

Herhangi bir raporlamada bir sıra noob'um, ancak alt toplamları olan yatay çizgiler. Bir otoparkta arabaların harcadığı zamanları içeren bir veri kümem var. Her bir saat için bir sütun ve her gün için bir satır gösteren, belirli bir günde belirli bir zamandaki giriş sayısını gösteren bir tablo oluşturmalıyım.Visual Studio için Crystal Reports'ta bir pivot raporunu nasıl alabilirim?

Bunu RDLC tasarımcısında, sütun gruplamaları ile daha kolay bulabilirim, ancak Crystal'da böyle bir şey bulamıyorum bile.

Yardım.

+0

Çapraz sekmeyi denediniz mi? – craig

cevap

3

varsayarsak aşağıdaki alanları: {table.car_id} ve {table.census_time}

  • takın seçin | Çapraz ...; Çapraz sekme eklemek rapor-başlık bölüm

Sağ çapraz sekmesini tıklayıp 'çapraz sekme uzmanı' seçti:

  • sütun alan listesine {table.census_time] ekleyin; saate göre gruplandırma
  • Satır alanı listesine {table.census_time} ekleyin; grup gün başına
  • Özet alanı listesine {table.car_id} ekleyin; saymak

** edit **

, tarih/saat alanından saat ayıklamak için özel bir formül oluşturmak için gerek yoktur; çapraz sekme bunu sizin için yapacak.

enter image description here 'Çapraz Sekme' sekmesini seçin, {table.census_time} alanını ekleyin ve 'Grup Seçenekleri ...' düğmesini tıklayın.

enter image description here

'her saat için.' Seç listeden.

+0

nasıl yaparım? sütunları saat olarak gruplamak? 2. sekme mi, Grup Seçenekleri mi, Grup İsmi olarak formül kullan? Orada 'Hour ({table.census_time])' formülünü kullanmaya çalışıyorum ve bana bir hata olduğunu söyler, "Kalan metin formülün bir parçası gibi görünmüyor". – ProfK

1

Sen her saat için bir kayıt içeren bir tablo oluşturmanız gerekir:

Tablo DayHour

Period    StartHour  EndHour 
00:00 - 01:00  0     1 
01:00 - 02:00  1     2 
02:00 - 03:00  2     3 
03:00 - 04:00  3     4 
... 
23:00 - 00:00  23    24 

Sonra Bu, tüm dönecektir

SELECT h.Period, DATEPART(dd,d.EntryTime) as Day, 1 as Value 
FROM DayHour h LEFT JOIN <YourData> d ON h.StartHour <=DATEPART(hh,d.EntryTime) and DATEPART(hh,d.EntryTime)<h.EndHour 

Bu tabloya ile verilerinizi katılmak sol Belirli bir zaman dilimi boyunca park alanına herhangi bir araç girilmezse, zaman dilimi ile kayıt yapar ve bir kayıt bile geri döner. Dönem sütununu, çapraz sekmenin sütun bölümüne ve Gün sütununa Satır bölümlerine sürükleyip bırakın. Değer sütununu özet bölümüne sürükleyin.