0

Zwei Combo-Boxes -> 1. Change -> 2. Filtern

Hallo Leute, ich steh als Anfänger schon wieder vor dem nächsten Problem:

Tabellen:

Dokumentation
   Datum
   Kategorie -> Verknüfung zu Doku_Kat als Combobox
   IT -> Verknüpfung zu Doku_IT als Combobox
   Text

Doku_Kat
   Symbol
   Kategrie

 

Doku_IT
   IT
   Kategorie -> Verknüpfung zu Doku_Kat.Kat

 

So soll es werden:

Wenn ich in Dokumentation in der Combobox eine Kategorie auswähle, soll geprüft werden, ob es in der Einträge dazu in der Doku_IT gibt.
Wenn ja, dann wird die Combobox Doku_IT angezeigt. Wenn nein, dann ausgeblendet.

Falls es in Doku_IT Einträge gibt, dann nur diese mit der Kategorie anzeigen / akualiseren.

 

Nochmal als Erklärung:

In der Tabelle Doku_Kategorie hab ich derzeit folgende Einträge: Server, Clients, Netzwerk, Active Directory, Exchange.

In der Tablle Doku_IT steht zum Beispiel: Terminalserver1, Server ; Terminalserver2, Server ; Client1, Clients

Dort trage ich meine IT ein die mit der Doku:Kategorie verknüpft sind.

 

Wenn ich einen neuen Eintrag in Dokumentation machen will, wähle ich das Datum aus, wähle die Kategorie. Dann soll geprüft werden ob es zu dieser Kategorie Einträge in Doku_IT gibt.
Bei ja, dann bitte Combobox IT Anzeigen und nur die Einträge, zur Oberkategorie.

Jetzt ist es so. Wenn ich z. Bsp. auf Server gehe, kommen alle Einträge also auch Clients und Netzwerk. Ich möchte nur die Server haben.
Gibts ne Art refresh() der Combobox? Bei .NET war das einfacher. Da hab ich die Werte in der Combox gelöscht und die Abfrage durchgezogen und flupp waren die Einträge da.

So, nun hoffe ich, das das ganze hier jemand versteht, wie ich das meine =)

8 Antworten

null
    • UweG
    • vor 2 Jahren
    • Gemeldet - anzeigen

    Hallo Madison.
    Kannst du eine Beispieldatenbank mit Testdaten zur Verfügung stellen um sich das Datenmodell mal anzusehen.

    • Madison
    • vor 2 Jahren
    • Gemeldet - anzeigen

    Kein Problem, hier die DB: http://kabuzo.de/IT.zip

    Wie gesagt, sind meine ersten Versuche mit Ninox. Hätte es eventuell anders aufbauen sollen, so wie ich es bei SQL-DB´s mache. Mehr Tabellen und mehr mit ID´s arbeiten.
    Hab schon ne Menge Sachen in .NET programmiert aber das ist 1. die Syntax anders und die SQL-Queries auch. 

    Gibt es in Ninox eigentlich globale Variablen oder kann man nur einzelne Variablen in den Funktionen in den Tabellen zuweisen?

    Danke für die Hilfe.

    • UweG
    • vor 2 Jahren
    • Gemeldet - anzeigen

    Hallo Madison
    Ich schae es mir mal an.
    Globale Variablen gibt es nicht direkt.
    Ich habe mal bei Nioxus gesehen, wie sie über eine Hilfstabelle globale Variablen nachgebaut haben.

    • Madison
    • vor 2 Jahren
    • Gemeldet - anzeigen

    Hab das Problem gelöst =) 

    b.Doku_Kat.Kategorie = a.F_Hauptgruppe als Einschränkung 

    • UweG
    • vor 2 Jahren
    • Gemeldet - anzeigen

    Hallo
    Anbei der Link für die DB.
    https://www.dropbox.com/s/y5rzfzqugy8fij3/IT_Korrektur.ninox?dl=0
    Es macht, was du geschrieben hast.
    Ich denke mal, es ist eine Machbarkeitsstudie, da einige Arbeitsweisen für mich nicht logisch sind. Aber ist deine DB.
    Die Ändrungen haben alle in der Verknüpfung 'IT' stattgefunden.
    Zum einen in 'Einschränkung': damit wird eingestellt, welche Daten abhängig von einer Vorauswahl angezeigt werden sollen.
    Zum anderen im Trigger 'sichtbar wenn', wo eimgestellt wird, wann die Verknüpfung angezeigt werden soll.

    • Madison
    • vor 2 Jahren
    • Gemeldet - anzeigen

    Ich schau mir das gleich mal an. Vielen Dank für deine Hilfe *Daumen hoch*

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

    Hi, kleine Ergänzung: "Globale Variablen" lassen sich über "Globale Funktionsdefinitionen" in den DB-Optionen realisieren:

     

    function myGlobVar() do
       "Trallala"
    end

     

    Der Aufruf an beliebiger Stelle der Datenbank mit

     

    myGlobVar()

     

    gibt dann immer "Trallala" zurück.

    • UweG
    • vor 2 Jahren
    • Gemeldet - anzeigen

    Danke Axel.
    Wieder etwas dazu gelernt.