2016-04-13 42 views
0

Benim MSSQL sql sorgusuSSRS'de birden çok satırı tek satırda nasıl dönüştürürüm? SSRS raporu <strong>parametre = Tim</strong>, sonuç yalnızca gösterir Sadece haberi seçerken, sonuçlar aşağıda listelenmiştir gösterir 

ManagerName  EmployeeName AuthCode 
Tim    Peter   csr2 
Tim    Peter   sup 
Tim    Peter   itil 
Tim    Colt   csr2 
Tim    Colt   sup 

aşağıda authcodes ile Çalışan Hiyerarşi verileri gösterir

: üst hat ve sorguda oysa değil müteakip authCodes Ben (bu çalışanlar için authcodes bitiştirmek olmalı) gibi veri göstermek istiyorum  tüm

EmployeeName AuthCode 
Peter   csr2 
Colt   csr2 

gösterir

EmployeeName AuthCode 
Peter   csr2, sup, itil 
Colt   csr2, sup 

SSRS'de ne yapmam gerektiğini öneren herhangi biri, verilerin tüm virgülden ayrılmış değerler içeren tüm kimlik bilgilerini göstermesini sağlayabilir misiniz?

+0

Olası yinelenen [SQL Server MySQL fonksiyonu _concat grup \ Simülasyon?] (http://stackoverflow.com/questions/451415/simulating-group-concat-mysql-function-in-sql-server) –

+0

@GeetanjaliSachdeva , kontrol edin [this] (http://stackoverflow.com/questions/27047483/ssrs-distinct-lookupset-function) –

cevap

2

Bu çalışması gerekir: EmployeeName dayalı

=JOIN(LOOKUPSET(Fields!EmployeeName.Value, Fields!EmployeeName.Value, Fields!AuthCode.Value, "DataSet1"), ", ") 

LookupSet olsun bütün AuthCodes.

JOIN diziyi, virgülle ayırıcı kullanarak bir dizeye dönüştürür. arasında

+0

+ Hannover Fist Teşekkürler! Bu çalışır ancak hala aynı çalışan için bir hücrede çoğaltılan bazı kodekleri görüyorum. Yinelenenlerden nasıl kurtulabilirim? –

+0

Ne yazık ki, ne ** JOIN ** hem de ** LookupSet ** çiftleri kaldıramaz. Verilerinizi DISTINCT yapabilir misiniz? Aksi takdirde, kopyaları ayrıştırmak için bazı özel VB kodlarına ihtiyacınız olacaktır. –

İlgili konular