Lektion 3: Abrufen einer Liste von Feldern für die Berichtsdefinition
Da jede Berichtsdefinition über eine Liste von Feldern verfügen sollte, die die Daten im Bericht darstellen, müssen Sie eine Felderliste aus Ihrer Abfrage generieren.
So erstellen Sie eine Felderliste
- Ersetzen Sie den Code für die GenerateFieldsList()-Methode im Projekt durch den folgenden Code:
Public Sub GenerateFieldsList()
Dim command As SqlCommand
Dim reader As SqlDataReader
' Executing a query to retrieve a fields list for the report
command = m_connection.CreateCommand()
m_commandText = "SELECT Person.CountryRegion.Name AS CountryName, Person.StateProvince.Name AS StateProvince " + "FROM Person.StateProvince " + "INNER JOIN Person.CountryRegion ON Person.StateProvince.CountryRegionCode = Person.CountryRegion.CountryRegionCode " + "ORDER BY Person.CountryRegion.Name"
command.CommandText = m_commandText
' Execute and create a reader for the current command
reader = command.ExecuteReader(CommandBehavior.SchemaOnly)
' For each field in the resultset, add the name to an array list
m_fields = New ArrayList()
Dim i As Integer
For i = 0 To reader.FieldCount - 1
m_fields.Add(reader.GetName(i))
Next i
End Sub 'GenerateFieldsList
public void GenerateFieldsList()
{
SqlCommand command;
SqlDataReader reader;
// Executing a query to retrieve a fields list for the report
command = m_connection.CreateCommand();
m_commandText =
"SELECT Person.CountryRegion.Name AS CountryName, Person.StateProvince.Name AS StateProvince " +
"FROM Person.StateProvince " +
"INNER JOIN Person.CountryRegion ON Person.StateProvince.CountryRegionCode = Person.CountryRegion.CountryRegionCode " +
"ORDER BY Person.CountryRegion.Name";
command.CommandText = m_commandText;
// Execute and create a reader for the current command
reader = command.ExecuteReader(CommandBehavior.SchemaOnly);
// For each field in the resultset, add the name to an array list
m_fields = new ArrayList();
for (int i = 0; i <= reader.FieldCount - 1; i++)
{
m_fields.Add(reader.GetName(i));
}
}
Siehe auch
Aufgaben
Lektion 4: Erstellen von Code zum Generieren der Berichtsdefinitionsdatei
Lernprogramm: Generieren von RDL mithilfe von .NET Framework