Änderung eines Reportparameters zu Mehrfachauswahl bringt Fehlermeldung "Allgemeiner Fehler"

Liebes LL-Team,

ich habe zwei Reportparameter in Mehrfachauswahl geändert. Beim ersten funktioniert trotzdem alles, beim 2. kommt “allgemeiner Fehler”. Es handelt sich dabei um zwei numerische Werte: Quartal und Monat. Den Monat hatte ich im Filter schon hinzugefügt und dort scheint der Fehler zu liegen. In der Doku steht, dass LL das normalerweise verwendetet (WHERE v_xyz.monat IN (@Monat)) aus (WHERE xyz.monat = @Monat) umwandelt, aber das scheint nicht der Fall zu sein. Denn wenn ich diesen Teil des Filters auskommentiere, funktioniert es fehlerfrei, aber eben ohne Anwendung der ausgewählten Monate. An anderer Stelle wo ich die Vorauswahl im Header anzeige, funktioniert Join() wunderbar. Ich hatte den Verdacht dass der Datentyp den Fehler verursacht, aber wenn ich den Monat als Text in der View ändere, kommt der Fehler trotzdem. Damit weiß ich echt nicht was ich noch probieren könnte.

Verwendete Version: combit Report Server 30.0

image

Hi Eva, kannst mal die Einstellungen vom Parameter zeigen.

Ich würde mal versuchen, die Reihenfolge zu vertauschen.
anstatt: @Parameter = feld mal: feld = @Parameter.

Ich könnte mir vorstellen, dass der Ausdruck zwar syntaktisch korrekt ist, aber ggf. SQL liefert, das nicht verwendet werden kann. Eventuell kommt sowas dabei raus IN(….) = feld. Das ist aber nur eine Vermutung …

Hallo Thomas,

vielen Dank. Das hat geholfen. Leider nur für den @Monat. Sobald ich das @Quartal in den Filter einbaue, bekomme ich einen Fehler. Sehe ihn beim Debuggen aber leider nicht. Kann es sein dass der Parameter nicht NULL wird wenn er als mehrdimensional gekennzeichnet ist?

So sieht die Filterklausel aus:

Das sind die Eigenschaften der beiden Parameter:

Mir ist klar, dass die Daten von unterschiedlichen Views kommen, das sollte aber keine Rolle spielen, da die Datenbasis dieselbe ist. Deshalb habe ich den Filter als Select ausgeführt und es kommt das was ich erwarte:

Vielen Dank für die Hilfe! :folded_hands:

LG!

Eva…

Hallo Eva,

was das Problem ist weiß ich auch nicht. Ich würde das vermutlich mit nur einem Parameter lösen.
Wenn man Quarter und Monat hat, kann man Unsinn eingeben wie z.B. Q=1, Monate=10,11,12 und dann kommt nix dabei raus.
Nur den Monat nehmen, Mehrfachauswahl, Kann nicht null werden, Vorbelegung “Alle”. Dann kann der Anwender wählen was er will. Jeder sollte so schlau sein, dass er wenn der Q1 möchte die Monate 1,2,3 markiert. Bei “Alle” kommt dann allerdings ein Select mit IN “1…12”, da man “Alle” nicht erkennen kann. Dieses Select tut aber der Datenbank normalerweise nicht weh.
WHERE year = 2025 and month=@month. Fertig!

Viele Grüße, Thomas

1 Like

Hallo Thomas,

da hast du vollkommen Recht. Ich hatte eben diese Anforderung bekommen und versucht umzusetzen, werde es aber so ändern dass es funktioniert.

Nochmal vielen Dank für deine Zeit und Hilfe.

LG!

Eva…