2009-04-16 16 views
1

Ich bin in letzter Zeit viel Bericht bereitstellen. Und so habe ich Code und Version klar und verständlich gehalten, Ill gerne eine gespeicherte Prozedur pro Bericht haben. Meistens brauche ich mehr Datensätze für einen Bericht. Gibt es die Möglichkeit, dass ich mehr als einen Datensatz im Bericht SSRS habe, um nur eine gespeicherte Prozedur für diesen Bericht aufzurufen. (Ich verwende Remote-Berichte, die auf Sql Report Server 2008 gehostet werden).Verwenden mehrerer Datensätze in Berichtsserver aus einer gespeicherten Prozedur

Ich verwende vertraute Ausgabe mit Beispiel-Konsolenanwendung zum Erstellen mehrerer CSV-Dateien aus SQL mit einer gespeicherten Prozedur. Schnepfen von Code sieht etwa so aus:

 SqlConnection conn = new SqlConnection(strConn); 
     SqlCommand command = new SqlCommand("sp_ado_pos_data", conn); 
     command.CommandType = CommandType.StoredProcedure; 
     command.Parameters.Add("@skl_id", SqlDbType.Int).Value = 158; 
     SqlDataAdapter adapter = new SqlDataAdapter(command); 
     DataSet ds = new DataSet(); 
     adapter.Fill(ds); 
     for (int i = 0; i < ds.Tables.Count; i++) 
     { 
      string datoteka = (string.Format(@"{0}tablea{1}.csv", direktorij, i)); 
      DataTable tabela = ds.Tables[i]; 
      //Here I fill datasets with multiple results from one stored proc. 
      CreateCSVFile(tabela,datoteka); 
      Console.WriteLine("Generišem tabelu {0}", datoteka); 
     } 

Antwort

1

Es scheint, dass dies mit Standardberichten nicht möglich ist, durch den Standard-Report Viewer dargestellt - SSRS alle bis auf das erste Ergebnis ignoriert von einer Multi Ergebnismenge Quelle eingestellt.

Basierend auf this article scheint es jedoch, dass dies in eigenständigen Berichten möglich ist (Erweiterung .rdlc). Ich bin mir nicht sicher, ob dies bedeutet, dass mit einem benutzerdefinierten Bericht-Viewer Standard-RDL-Berichte in ähnlicher Weise konfiguriert werden könnten.

Verwandte Themen