簡體   English   中英

在Tablix單元格(SSRS)中顯示集合

[英]Display a collection in a tablix cell (SSRS)

我有一個帶有子集合的對象:

class Person
{
    public string Name { get; set; }
    public ICollection<PhoneNumber> PhoneNumbers { get; set; }
}

class PhoneNumber
{
    public string Name { get; set; }
    public string Number { get; set; }
}

這些電話號碼的數量可能相差很大。 最后我需要得到一張桌子:

---------------------------------
| John Doe | Home:   +1-800-666 |
|          | Work:   +1-800-777 |
---------------------------------
| Homer Si | Home:   +1-800-111 |
|          | Work:   +1-800-222 |
|          | Mobile: +1-800-333 |
---------------------------------

(我希望顯而易見的是,在上圖中,哪個字段是哪個字段)我可以根據需要重新處理數據類。 我需要保留格式(我的意思是電話號碼必須如上所述對齊在一行上)。

問題是-最好的方法是什么? 我的主要限制是我無法在報告中編寫任何代碼。 我只能使用報告XML(如果需要,可以使用子報告,但是請記住-沒有任何代碼隱藏)。

有可能嗎?

PS我正在使用2008年本地報告

好吧,我們沒有找到確切的解決方案,但是我只能這樣說:我們基本上最終提供了類似SQL的結構作為數據查詢的結果。 因為這就是報告服務希望的方式。

相信我-只是放棄嘗試在報表中實現某些自定義功能。 只需停止掙扎並使用默認方法即可。

如前所述,我們使用了類似SQL的JOIN來獲取所需的格式。 從out提供程序返回的數據現在采用以下格式:

______________________________________
|PersonName | PhoneType | PhoneNumber|
|___________|___________|____________|
|John Doe   | Home      | +123456    |
|John Doe   | Work      | +098765    |
|___________|___________|____________|
|Homer S.   | Mobile    | +654432    |
|Homer S.   | Home      | +654431    |
|Homer S.   | Work      | +654433    |
|___________|___________|____________|

我們只是將Tablix分組在PersonName上,以便在報告中如下所示:

______________________________________
|PersonName | PhoneType | PhoneNumber|
|___________|___________|____________|
|John Doe   | Home      | +123456    |
|           | Work      | +098765    |
|___________|___________|____________|
|Homer S.   | Mobile    | +654432    |
|           | Home      | +654431    |
|           | Work      | +654433    |
|___________|___________|____________|

這就對了。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM