2012-12-05 16 views
7

Sto cercando di ottenere il seguente layout per il mio report basato su una query.Rapporto SSRS formattazione di una tabella per visualizzare dati affiancati

+----+-------+----+-------+ 
| ID | Name | ID | Name | 
+----+-------+----+-------+ 
| 1 | Danny | 2 | Dave | 
| 3 | Sue | 4 | Jack | 
| 5 | Rita | 6 | Sarah | 
+----+-------+----+-------+ 

Quindi fondamentalmente voglio una tabella, la stampa i miei dati da sinistra a destra per risparmiare spazio sulla mia pagina, piuttosto che si stampa una riga e di sprecare tutto lo spazio sul lato destro della carta, forse anche andare 3 volte attraverso la larghezza.

Questo è il mio dati: http://sqlfiddle.com/#!3/5c911/1

avevo forse pensando un tavolo con 4 colonne. I Col 1 e 2 contengono i numeri di fila dispari, i Col 3 e 4 contengono i numeri di fila pari.

Come ho potuto ottenere questo, ho provato qualcosa con la funzione MOD ma non sembra funzionare correttamente, o ho frainteso quello che stava accadendo.

correlati: How can I display two rows worth of data on one line side-by-side in Report Designer?

Grazie,

+0

Puoi modificare la domanda e aggiungere dettagli sul set di dati, quello che ho provato finora, e in particolare (oltre al * * Campione) quello che stai cercando di raggiungere? – Jeroen

+0

Siamo spiacenti, ho aggiunto ulteriori dettagli ora. –

+0

Hai considerato l'utilizzo del report * Columns * property: http://stackoverflow.com/questions/6269808/ssrs-am-i-hallucinating Questo utilizzerà più colonne per l'output .pdf ma non per il web e Excel, che potrebbe essere esattamente quello che vuoi –

risposta

7

Per stampare i dati da sinistra a destra in un formato a più colonne, è necessario fingere utilizzando più tabelle. Per implementare questo trucco, crea lo stesso numero di tabelle delle colonne che vuoi affiancare che puntino tutte al tuo set di dati. Sulla fila Particolare della prima tabella, per la proprietà visibilità-Hidden utilizzare la seguente formula:

=IIF((RowNumber(Nothing) Mod 4) = 1, False, True) 

dove 4 è il numero di tabelle (colonne) avete.

Fare lo stesso per ogni tabella, incrementando a cosa corrisponde la formula (quindi per la seconda colonna (RowNumber(Nothing) Mod 4) = 2 e così via). Nell'ultima tabella (colonna) la formula è uguale a 0.

Questo alternativamente nasconde la riga di dettaglio, visualizzando solo le righe appropriate per quel numero di colonna.

0

È possibile ottenere tale aspetto con query.

SELECT std1.id AS Student_Id, 
     std1.NAME AS Student_Name, 
     std2.id AS Student_Id, 
     std2.NAME AS Student_Name 
FROM students std1, students std2 
WHERE (std2.id - std1.id = 1 
     AND std1.id %2 = 1); 
Problemi correlati