0

Select in Ansicht mit mehreren logisch verknüpften Abfrageparametern

Hallo Zusammen, 

ich möchte in einer Ansicht mit der der Selectanweisung in der Tabelle Medikamente alle  Datensätze anzeigen lassen, die zu einem Patienten gehören  und eines der weiteren Felder z.B: Anmerkung oder Medikament mit dem Suchbergriff übereinstimmt.

let myPat := text(Patienten.'Welcher Patient');
let mysearch:= Suchtext;
select Medikamente where contains(Patienten.'Welcher Patient', myPat) and (contains(Medikament, mysearch) or contains(Anmerkung, mysearch))

So bleibt die Ansicht leider leer!

Git es da eine Lösung, wie and mit or da zusemmenarbeitet?

Herlichen Dank für Unterstützung.

Jürgen

2 Antworten

null
    • Leonid_Semik
    • vor 3 Jahren
    • Gemeldet - anzeigen

    Hallo Jürgen,
    In diesem Fall solltest du die beide or-Bedingungen umklammern und eventuell eine Bedingung für den Fall, wenn Suchtext leer ist, hinzufügen:

    ---
    let myPat := text(Patienten.'Welcher Patient');
    let mysearch:= Suchtext;
    if mysearch then
    select Medikamente where contains(Patienten.'Welcher Patient', myPat) and (contains(Medikament, mysearch) or contains(Anmerkung, mysearch)) else select Medikamente where contains(Patienten.'Welcher Patient', myPat) end

    ---

     

    Was mich in deiner Formel nachdenklich macht, ist die erste Zeile. let myPat := text(Patienten.'Welcher Patient'). In welcher Tabelle befindet sich dein Suchfeld?. Ist es eine n:m Beziehung?
    wie sieht das Datenmodell aus?

     

    Leo

    • melisano2009
    • vor 3 Jahren
    • Gemeldet - anzeigen

    Hallo Leo,

    vielen Dank - das hat nun Prima funktioniert - ich habe ein Dashboard eingerichtet in dem verschiedene Ansichten Suchfunktionen  über verschiedene Tabellen ermöglicht. 

    Das Datenmodell kann ich hier leider nicht als Bild hochladen- das Bildschirmfoto wird nicht ins Forum übernommen. Anyway. 

     

    Herzlichen Gruss 

    Jürgen