Hallo,
meine C# Anwendung nutzt ein Dataset mit mehreren DataTables. Diese DataTables übergebe ich an List&Label und habe damit auch erfolgreich meinen Bericht im Designer erstellt. Je nachdem welche Auftragsnummer in meine Anwendung übergeben wird, werden die DataTables mit unterschiedlichen Informationen befüllt. Bei manchen Auftragsnummern beinhalten manche dieser DataTables keine Daten. Wenn ich dann also versuche meinen vorherigen Bericht zu öffnen (Designer, Vorschau oder Druck) funktioneirt es nicht. Ich bekomme nur die Meldung
“Eine Ausnahme vom Typ "combit.Reporting.LL_NoData_Exception" wurde ausgelöst.”
Wenn ich versuche die DataTables ohne Daten auszufiltern, dann bekomme ich eine Meldung, dass die verwendeten Tabellen nicht vorhanden sind.
var allTables = new System.Data.DataTable[]
{
ds.BossDoctor,
ds.Customer,
ds.Doctor,
ds.Examination,
ds.ExaminationGroup,
ds.ExaminationName,
ds.ExaminationType,
ds.Institut,
ds.Pathologies,
ds.Patient,
ds.Preparation,
ds.PreparationGroupe,
ds.ResultName
};
IList[] listArray = allTables.Where(x => x != null && x.Rows.Count > 0).Select(x => x.DefaultView as IList).ToArray();
Ich hatte erwartet, dass der Bericht sich trotzdem öffnet und nur den Bereich ausblendet, der keine Daten enthält. Wie müsste ich hier vorgehen? Muss ich im Designer dann immer vorher prüfen, ob das DataTable Daten enthält? Bsp.: Cond(BossDoctor != null, BossDoctor.Text, “”)
