Home Forum Nuclos Konfiguration Sonstiges QueryProvider – Referenzfelder

Ansicht von 2 Beiträgen - 1 bis 2 (von insgesamt 2)
  • Autor
    Beiträge
  • #26566
    Dieter Mennig
    Teilnehmer

    Hi zusammen,

    ich bin (in der nuclos Version 4.47.2) auf ein Problem beim QueryProvider gestossen, wo ich nicht weiterkomme, vielleicht kann mir da jemand einen Tipp geben.

    Es geht um die Erstellung einer Query über den QueryProvider, speziell um die where Bedingung auf ein Referenzfeld.

    Beispiel: Es gibt ein BO Kunde. Das BO Kunde enthält ein Referenzfeld refLand, das auf das BO Land referenziert. Wenn ich nun einen Kunden anlege, kann ich z.B. über eine Combobox das zutreffende Land auswählen.
    Ich möchte nun in einer Query als Ergebnis alle Kunden von einem bestimmten Land haben, leider schaffe ich es nicht eine Where Bedingung dafür zu definieren. Ich erhalte immer einen Fehler, dass er die Variable nicht kennt???

    Hier mal ein Ansatz (einer von vielen) dazu:

    Query<Kunde> qry = QueryProvider.create(Kunde.class);
    qry.where(Kunde.refLand.eq(land.getId());

    Die Fehlermeldung lautet: … cannot find symbol symbol: variable refLand …

    Die Frage ist nun: Wie muss die where Bedingung aussehen, damit ich einen Filter auf ein Referenzfeld bekomme, mit dem Problem, dass er das Referenzfeld ja gar nicht kennt.

    Eine andere Bedingung im gleichen BO funktioniert dagegen einwandfrei (in dem Fall eine boolean Variable): qry.where(Kunde.blnOrganisation.eq(true));

    Im WIKI und im Forum habe ich dazu nichts passendes gefunden. Es wäre super, wenn jemand helfen könnte.

    Vielen Dank schon mal.

    • Dieses Thema wurde geändert vor 2 Jahren, 5 Monaten von Dieter Mennig.
    #26582
    caf
    Administrator

    Hallo Softwareprofie,

    Sie müssten die ID miteinander vergleichen.

    Z.b. qry.where(Kunde.reLandId.eq(land.getId());

    vg Agni

Ansicht von 2 Beiträgen - 1 bis 2 (von insgesamt 2)