Prüfen ob Daten vorhanden

Hallo,
Ich habe ein statisches Formular wo bei jedem Feld ein anderer Datenfilter und eine Datenquelle hinterlegt ist.
Nun möchte ich einen Kommentar drucken wenn das Feld nicht vorhanden ist.

Datenfilter:
In diesem Beispiel gibt es die param_id 20 nicht in der Tabelle. Es soll dann der Text “Nicht zutreffend” angezeigt/gedruckt werden

device_prot_param.device_prot_sysid = val(@MySysID) and device_prot_param.device_prot_basis_param_sysid@device_prot_basis_param.sysid:param_id = “20”

Vielen Dank
Liebe Grüße Hermann

Hallo,

um grundsätzlich auslesen bzw. auswerten zu können ob ein Feld vorhanden ist oder nicht, müssen die betreffenden Felder in diesem Fall mithilfe von Designer-Funktionen überprüft werden. Dafür könnte bspw. die Funktion “Exists” verwendet werden.
(siehe: https://docu.combit.net/designer/de/index.html#!Documents/exists.htm)

Außerdem wird häufig im Zusammenhang damit auch die Funktion “GetValue” genutzt.
(siehe: https://docu.combit.net/designer/de/#!Documents/getvalue.htm)

Auf diesem Weg kann somit dann untersucht werden ob das jeweilige Feld mit dem übergebenen Namen existiert und ebenso ggf. den Wert dieses Feldes ausgeben.

Lieber Herr Richter,

danke für die Antwort.
Was ich in meinem Post nicht geschrieben habe ist dass ich die von Ihnen vorgeschlagenen Varianten bereits versucht habe.
Kann es sein dass “ifexists” in Verbindung mit “getvalue” oder “evaluate” nicht funktioniert wenn das Filterergebnis leer bzw. Null ist?.
Denn es wird in der DB-Tabelle nur ein entsprechender Wert angelegt wenn dieser auch gepflegt wird.
Wie und wo kann ich abfragen ob das Filterergebnis leer ist und dies dann im Bericht entsprechend abfragen?

Vielen Dank nochmal

Hallo Hermann,

danke für die Rückmeldung.

Wenn wir das Anliegen richtig verstanden haben, dann geht es nun vor allem darum herauszufinden ob in deinem Filter auch Datensätze enthalten sind - ist das korrekt?

Der entsprechende Filter könnte bspw. so aussehen:

device_prot_param.device_prot_sysid = val(@MySysID) and [device_prot_param.device_prot_basis_param_sysid@device_prot_basis_param.sysid:param_id](mailto:device_prot_param.device_prot_basis_param_sysid@device_prot_basis_param.sysid:param_id) = “20”

Wenn dort dann kein Ergebnis daraus resultiert (also kein Datensatz die Filterbedingungen erfüllt), dann wäre in diesem Fall eine Möglichkeit dafür einen Kommentar zu hinterlegen. Das könnte evtl. umgesetzt werden, indem vor oder nach der Tabelle eine weitere Tabelle mit freiem Inhalt angelegt wird und darin etwas in dieser Art ausgegeben wird:

Cond(NativeCount(device_prot_basis_param.sysid.param_id, device_prot_basis_param="20")=0, "Kein Eintrag für ID 20 vorhanden", "")

Dies ist jedoch abhängig von der Datenquelle, die in deinem Fall verwendet wird.