leere Parameter

Sabine Lux

Hallo zusammen,

ich habe aktuell ein kleines Problem mit der Auswertung bzw. von leeren Parametern. Auch wenn es kein coresuite speziefisches Problem ist, hoffe ich, hier doch vllt. einen Tipp zu bekommen.

Wenn ich meine Parametereingabe nach Aufruf des Report mache und einen oder mehrer Parameter leer lasse, erhalte ich keine Daten. Das ist ja auch soweit i.O. und auch richtig. Ich frage mich nun aber wie ich meine WHERE-Klausel aufbauen muss das eben die Bedingung zu diesem Parameter quasi nicht beachtet wird.

Auch ein Platzhalter würde das Problem nicht lösen denn damit würden alle Zeilen mit Wert NULL ausgeklammert.

Hat jemand eine Idee?

LG

Philipp Knecht

Hallo Sabine

....WHERE (Feld = '[%MyParam]' OR '[%MyParam]' = '') dürfte passen.

hth

Sabine Lux

Hallo Philipp,

wenn ich beim Parameter '[%MyParam]' z.B. ein A eingebe würde zwar der 1. teil funktionieren aber nach dem OR käme A = ''. das wird also nicht funktionieren.

Hätte ich denn die Möglichkeit meine SQL Abfrage erst im Report via Script zusammenzustellen? Klar programmatisch schon aber kann ich dann meine SQL Abfrage ausführen und so auf die ergebnissmenge zugreifen als wenn ich die Abfrage bereits in der layoutdefinition hinterlegt hätte?

Philipp Knecht

Hallo Sabine


>OR käme A = ''
-> Deshalb ists ja auch ein OR :)

Aus den FAQ:

How to use ChooseFromList Parameters {} correctly in the Query?
If you have an selection like all or some ItemCodes for example formulate your WHERE Clause like this:
....WHERE ( T1.ItemCode IN ('[%ItemCode]') OR '[%ItemCode]' = '' )


Dies hat den Vorteil dass auch der Fall wenn du mehrere Parameter auswählst deine Query dann richtig (intern von cld) umgestellt wird.

hth

Sabine Lux

Hallo Philipp,

ich habe es nun mit COLESCE gelöst. So habe ich keine NULL Werte in der DB und kann mit Platzhaltern suchen.

Dennoch danke für deine Hilfe.

LG
Sabine
0

Comments

0 comments

Please sign in to leave a comment.

Didn't find what you were looking for?

New post