8

. Raporun bir veri grubundaki tüm dizeleri toplamasını istiyorum. Concatenate (Fields! CompanyName.Value, ",") veya Join veya eşdeğeri satırlarında bir şey arıyordum. Ama verilen kapsamdaki tüm kayıtlar üzerinde yinelemek zorunda kalacaktı.SSRS 2005'te dize toplama rdl raporları oluşturmak için BIDS 2005'i kullanarak

Kullanıcıların etkinliklerini bir takvim biçiminde (google'ın ay görünümü takvimine benzeyen) bir raporunu oluşturuyorum. Ancak, bir kullanıcı bir günde birden çok etkinliğe sahipse, hepsinin aynı günde görünmesini istiyorum. Kutu'. Bu bir birikime ihtiyaç duyan bir sorun mu yoksa bunu yapmak için bir SSRS raporu almak için başka bir yol var mı, matrisi benim için yapmanın bir yolunu bulmaya çalıştım ama duvarlara çarpıyorum.

+0

Etiket düzeltmeleri için teşekkürler Joel, bir dahaki sefere kullanmaya devam edeceğim. – David

cevap

8

SSRS'de toplu birleştirme yapmanın olağan yolu, özel bir koddur. Örnek için buraya bakınız: gruplama düzeyinde bu ifadenin Ardından

Private CurrGroupBy As String = String.Empty 
Private ConcatVal As String = String.Empty 
Public Function AggConcat(GroupBy as String, ElementVal as String) as String 
    If CurrGroupBy = GroupBy Then 
     ConcatVal = ConcatVal & ", " & ElementVal 
    Else 
     CurrGroupBy = GroupBy 
     ConcatVal = ElementVal 
    End If 
    Return ConcatVal 
End Function 

görüntülemek istediğiniz: Burada

http://blogs.msdn.com/suryaj/archive/2007/08/11/string-aggregation.aspx

temel formda özel kod var

=RunningValue(
    Code.AggConcat(
     Fields!YourFieldToGroupBy.Value 
     , Fields!YourFieldToConcat.Value 
     ) 
    , Last 
    , "YourGroupName" 
    ) 

Raporunuzda oluşturduğunuz ilk tablo ve ilk grupsa ve farklı bir ad belirtmemişseniz, "GrubunuzName" genellikle "table1_Group1" dir.

+1

Bu kadar çalıştım teşekkür ederim! Bu benim okuduğum bir yaklaşımdı, ancak paylaşılan değişkenleri (CurrGroupBy ve ConcatVal) kullanmanın raporun tüm örnekleri arasında paylaşıldığını söyleyerek kötü bir fikir olduğunu da okumuştum. Bir web sunucusunda yapmak için kötü bir şey. Bunun doğru olup olmadığını biliyor musun? – David

+0

Bu doğru olabilir, bilmiyorum. Eğer öğrenirseniz, lütfen burada bir şey yayınlayın ve cevabı tekrar edeceğim. –

+0

Bu harika bir yardımcıdır. Dokümanlardaki örneklerin hiçbiri, RunningValue için özel bir işlevi çağırmıyor gibi görünüyor. –