Behandeln von Warnungen und Fällen, die keine Ausnahmen verursachen
Reporting Services löst keine Ausnahmen für Warnungen und bestimmte Fehler aus. Wenn Sie z. B. die Methode CreateCatalogItem verwenden, um einen neuen Bericht auf dem Berichtsserver zu veröffentlichen, werden alle auftretenden Warnungen als Array der Warning-Objekte zurückgegeben. Diese Warnungen sollten so behandelt und angezeigt werden, dass eine entsprechende Maßnahme getroffen werden kann.
Try
rs.CreateCatalogItem(name, parentFolder, False, definition, Nothing, warnings)
If Not (warnings.Length = 0) Then
Dim warning As Warning
For Each warning In warnings
Console.WriteLine(warning.Message)
Next warning
Else
Console.WriteLine("Report {0} created successfully with no warnings", name)
End If
Catch ex As SoapException
Console.WriteLine(ex.Detail("Message").InnerXml)
End Try
try
{
rs.CreateCatalogItem("Report", name, parentFolder, false, definition, null, out warnings);
if (warnings.Length != 0)
{
foreach (Warning warning in warnings)
{
Console.WriteLine(warning.Message);
}
}
else
Console.WriteLine("Report {0} created successfully with no warnings", name);
}
catch (SoapException ex)
{
Console.WriteLine(ex.Detail["Message"].InnerXml);
}
Eine andere Möglichkeit der Fehlerbehandlung liegt in der Auswertung der Rückgabewerte bestimmter Methoden. Beispiel: Mithilfe der Methode FindItems können bestimmte Elemente in der Berichtsserver-Datenbank gesucht werden. Wenn keine Elemente gefunden werden, die den Suchkriterien entsprechen, wird ein NULL-Array von CatalogItem-Objekten zurückgegeben. Sie sollten dieses Array auswerten, nach null suchen und den Benutzer wissen lassen, dass keine Elemente gefunden wurden.
Siehe auch