[英]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.