2013-09-25 72 views
0

我在tablix中有一個tablix和分層分組。SSRS Tablix Row Group

例如:

Gender------%count  
Female------ 10 
Male ------- 0 

我的查詢與女返回所有記錄,因爲有與男性沒有記錄它沒有返回的對象男性。

在報告中,我想顯示男性爲0但我無法......我如何解決此問題?

回答

1

在這種情況下通常有兩種選擇。

報表級別

而是具有動態組頭行或明細行,您創建具有三個表格標題行的表 - 一個用於列標題和每一個爲MaleFemale

然後,您可以用適當的條件表達式填充行值,例如,爲Male行總計使用類似:

=Sum(IIf(Fields!Gender.Value = "Male", 1, 0) 

這會給你0而不是Nothing即使在DataSet中沒有Male值。

數據庫級

另一個選項是改變數據集總是返回一個彙總行鍼對每個性別,也就是說,如果你從T-SQL查詢獲取數據你會使用類似:

select * from 
(
    select Gender = 'Male' 
    union 
    select Gender = 'Female' 
) Gender 

爲基表(通常你不會有一個Gender表,因此,上面的查詢)和LEFT JOIN它所需的所有值數據,即總是返回每個性別行即使沒有值存在。這樣你仍然可以正常的組/明細行來顯示數據。