Framework

Änderungen für Report Scripts

BY JOHANN HONIGSCHNABL

Mit dem Update auf DevExpress Version 20.2.4 ist das Error Handling der Skripte in Reports geändert worden. Dadurch werden mögliche Exceptions in diesen nicht mehr ignoriert und müssen nun manuell abgefangen werden.
Dies macht es notwendig Reports mit Custom Skripts zu prüfen und mögliche null-Values abzufangen.

Beispiele dazu:

1. Leere Datensätze oder Parameter

Liefert der Select keinen Datensatz, prüfen ob die Row existiert.

if ((DataRowView)GetCurrentRow() == null)
return;

Liefert ein Feld eines Datensatzes oder ein Parameter einen null-Wert, vorher prüfen bevor eine Methode (wie z.B.: ToString) darauf angewendet wird.

if (Report.GetCurrentColumnValue("FELDNAME") == null)
return;
str = Report.GetCurrentColumnValue("FELDNAME ").ToString();

Oder wenn erforderlich einen Default-Wert setzen.

2. Fehlende Controls

Wenn Events zu Controls vorhanden sind, die nicht mehr existieren, führt dies zu Fehlern. Der Sender ist in diesem Fall null. Hier ist die Lösung den Event-Namen anzupassen oder, wenn nicht mehr benötigt, den Code zu entfernen.
Wenn nur der Eventname im Script geändert wurde, ist der Event in der „.repx“ Datei noch immer mit dem ursprünglichen Namen eingehängt.
Daher:
  • Report lokal speichern u. sichern
  • in einem Editor (z.B.; Notepad++) öffnen
  • Nach ursprünglichen Namen suchen
  • Neuen Namen vergeben
  • Report laden

Tags: Reports

Kommentare 0

Kommentar schreiben