0

Ansicht nur einblenden wenn Positionen vorhanden

Ich habe ein Dashboard mit offenen Rechnungen gemacht mit mehreren Ansichten. Nun wenn es zb. wie im Bild keine Rechnungen in Arbeit gibt, dann wäre es schön wenn das Ausgeblendet wäre und zb. ein Textfeld erscheint mit zb. "Aktuell sind keine Rechnungen in Arbeit". 

 

Jemand eine Idee?

20 Antworten

null
    • UweG
    • vor 2 Jahren
    • Gemeldet - anzeigen

    Über die cnt()-Funktion lösen.
    1, Ansicht:
    'Sichtbar wenn' cnt(Deine Ansichtsabfrage)>0
    2. Funktionsfeld:
    Funktion: "Es sind keine Rechnungen vorhanden"
    Kann man noch farblich aufpeppen oder mit styled() anpassen
    'Sichtbar wenn' cnt(Deine Ansichtsabfrage)<1

    • GrischaMedia.ch
    • grischabock
    • vor 2 Jahren
    • Gemeldet - anzeigen

    Hallo Uwe, ich stehe gerade echt auf dem Schlauch. 

     

    Wie ist es gemeint mit "Deine Ansichtsabfrage" ? Anbei mal meine Ansicht.

    Bildschirmfoto 2022-01-20 um 21.44.06

     

    ()styled muss ich mir mal ansehen, habe ich noch nie genutzt. 

    • Ninox-Professional
    • planoxpro
    • vor 2 Jahren
    • Gemeldet - anzeigen

    Hallo Sandro, ich bin zwar nicht Uwe, aber ziemlich sicher, dass er mit "Deine Ansichtsabfrage" die select-Abfrage meint, die du auch für die Ansicht nutzt. Wenn du also bspw. alle Rechnungen haben willst, deren Status auf "Neu" steht, könnte der Code für die Ansicht lauten

     

    select Rechnungen where text(Status) = "Neu"

     

    Und wenn du zählen willst, wieviele Datensätze es gibt, die dieser Bedingung entsprechen, dann kannst du dafür die Funktion cnt() nutzen und den numerischen Rückgabewert abfragen, z. B, darauf, ob er größer 0 ist (also mindestens ein Satensatz):

     

    cnt(select Rechnungen where text(Status) = "Neu") > 0

    • Ninox-Professional
    • planoxpro
    • vor 2 Jahren
    • Gemeldet - anzeigen

    Herrjeh, "Datensatz" muss es heißen, "Datensatz"! Nicht "Satensatz".

    • GrischaMedia.ch
    • grischabock
    • vor 2 Jahren
    • Gemeldet - anzeigen

    Klappt hier nicht so ganz, Auch wenn keine Rechnungen vorhanden sind wird die Ansicht noch angezeigt. In dem Fall sollte diese aber ausgeblendet werden komplett

    • Ninox Solution Partner
    • derdatenoptimierer
    • vor 2 Jahren
    • Gemeldet - anzeigen

    Wie sieht denn Deine select Abfrage bei der Ansicht aus? 

    • GrischaMedia.ch
    • grischabock
    • vor 2 Jahren
    • Gemeldet - anzeigen

    Das wäre die aktuelle 

    select Rechnungen where text(Status) = "Neu"

    • UweG
    • vor 2 Jahren
    • Gemeldet - anzeigen

    Wenn diese Abfrage in der Ansicht die von dir gewünschten Ergebnisse liefert, dann wird die Ansicht mit 
    cnt(select Rechnungen where text(Status) = "Neu")!=0 ausgeblendet, wenn kein Datensatz mit dieser Bedingung gefunden wird.

    • Ninox Solution Partner
    • derdatenoptimierer
    • vor 2 Jahren
    • Gemeldet - anzeigen

    Wenn Du in die Eigenschaft der Ansicht reingehst und bei "Feld nur anzeigen wenn" die Formel von planox.pro nimmst, müsste es aber funktionieren. Probiere es also mit folgendem Code in "Feld nur anzeigen wenn":  cnt(select Rechnungen where text(Status) = "Neu) > 0

    • GrischaMedia.ch
    • grischabock
    • vor 2 Jahren
    • Gemeldet - anzeigen

    Okay ja das war eigene Dummheit :-) Es klappt wenn man es am richtigen Ort einfügt.

     

    Nur der Freitext wird nicht angezeigt wenn ich sage Nur anzeigen wenn und dann diesen Teil eifüge

    cnt('Rechnungen in Arbeit') < 1

     

    Die Ansicht heisst Rechnungen in Arbeit

    Bildschirmfoto 2022-01-21 um 11.18.35

    • Torsten_Stang.1
    • vor 2 Jahren
    • Gemeldet - anzeigen

    versuch mal

     

    cnt('Rechnungen in Arbeit'.number(Nr)) < 1

    • UweG
    • vor 2 Jahren
    • Gemeldet - anzeigen

    4 Leute am Start.
    Wenn Leo noch dazu kommt, das kannst du garnicht bezahlen.;-)

    • GrischaMedia.ch
    • grischabock
    • vor 2 Jahren
    • Gemeldet - anzeigen

    @Torsten, Nein leider nicht.

     

    @Uwe, das könnte noch hinkommen ;-)

    • UweG
    • vor 2 Jahren
    • Gemeldet - anzeigen

    So langsam verstehe ich nicht mehr was du möchtest.
    Ich gebe mal ein Beispiel wie ich es verstehe.
    Du hast eine Ansicht mit Namen ''Rechnungen in Arbeit'
    Diese wird befüllt mit: select Rechnungen where text(Status)="Neu"
    Du möchtest die Anzeige nur sehen, wenn sie einen Inhalt hat.
    Dann sollte bei 'Anzeigen wenn' in dieser Ansicht folgendes funktionieren. cnt(select Rechnungen where text(Status)="Neu")>0

    • GrischaMedia.ch
    • grischabock
    • vor 2 Jahren
    • Gemeldet - anzeigen

    Der Teil ist korrekt ja das passt soweit,  Die Ansicht ist da wenn diese Inhalt hat und ist weg wenn diese kein Inhalt hat.

     

    Nun weiter, ist die Ansicht nicht da also greift cnt(select Rechnungen where text(Status)="Neu")>0 dann soll ein Feld (Freitext) eingeblendet werden weclhes den Inhalt hat "Aktuell keine Rechnungen vorhanden". 

    • UweG
    • vor 2 Jahren
    • Gemeldet - anzeigen

    Mach ein Berechnungsfeld.
    Bei Funktion schreibst du: "Aktuell keine Rechnung"
    Das Kannst du mit styled() noch pimpen.
    Bei 'Anzeigen wenn' : cnt(select Rechnungen where text(Status)="Neu")<1

    • GrischaMedia.ch
    • grischabock
    • vor 2 Jahren
    • Gemeldet - anzeigen

    Perfekt, Vielen Dank

     

    Hast du mir für die unteren auch noch eine Lösung?

    Ich kann da nicht nur im dem Status arbeiten, kann ich irgendwie den Ansichtsnamen noch mit rein nehmen? Also wenn nichts offen ist in Jahresbeiträge dann soll er auch ein Feld anzeigen und Ausblenden. Ich weiss nur nicht wie ich offen und Ansichtsname vereinen kann zu einer abfrage.

     

    Bildschirmfoto 2022-01-21 um 13.03.13

    • UweG
    • vor 2 Jahren
    • Gemeldet - anzeigen

    Was soll denn da genau passieren?

    • GrischaMedia.ch
    • grischabock
    • vor 2 Jahren
    • Gemeldet - anzeigen

    Das selbe auch ein Text wenn Status nicht offen bzw. dann Ansicht leer da kein Inhalt. 

     

    Es gibt da einfach zwei Kategorien pro Ansicht. Mitgliedsbestellung linke ansicht und Jahresbeiträge rechte Ansicht. 

     

    ich müsste nun sagen wenn status nicht offen in kategorie jahresbeiträge (welches ein auswahlfeld ist) ist dann soll auch ein Berechnungsfeld angezeigt werden. Wie oben wo es nur den Status neu gibt.

    • UweG
    • vor 2 Jahren
    • Gemeldet - anzeigen

    Kannst du bitte mal die select-Abfragen für die jeweiligen Ansichten zeigen, wo du dazuschreibst für welche Ansicht welcher select gilt.

Content aside

  • vor 2 JahrenZuletzt aktiv
  • 20Antworten
  • 784Ansichten