Dynamisches Auswahlfeld in der neuen NINOX-Version
Das neue "Dynamische Auswahlfeld" in der neuen NINOX-Version klingt sehr interessant. Ich habe leider nur keine Ahnung, wie es zu handeln ist. Hat jemand schon ein Beispiel erstellt?
Danke für eine Antwort.
13 Antworten
-
siehe https://bit.ly/3lDtcfK
Was ich am Anfang nicht kapiert hatte, war, dass man (im Moment?) nur die Nummer des Datensatzes der Tabelle abfrsgen kann, der in dem Auswahlfeld ausgewählt wurde, da das Auswahlfeld selbst keine zugeordente Nummer hat.
Beispiel: du hast eine Tabelle Kunden mit Spalte Name.
DU hast ein dynamisches Auswahlfeld mit dem Namen 'Wahl' in einer anderen Tabelle, nennen wir sie Dashboard.
in "dynamic values" gibst du 'select Kunden' ein, unter "Name des spezifischen Wertes" 'Name'.
Damit hast du eine Auswahl vin Namen der Kudentabelle.
WIllst du jetzt die Auswahl verwerten, schreibst du ins script zB:
let me:=this;
select Kunden where Name=me.Wahl
optional: select Kunden where Name=me.Wahl."deinen gesuchtenen Wert"
-
Ich hätte da auch noch eine Frage, wie kann ich den Text-Wert eines dynamischen Auswahlfeldes ausgeben? Mit text(dAF) bekomme ich nur die ID des Datensatzes.
-
record(TABELLE,number(DYNAUSWAHLFELD)).DATENFELD
-
Danke Euch beiden, das hat mir erst mal auf die Sprünge geholfen.
-
Ich hätte auch noch einmal eine Frage. Ich habe das Auswahlfeld so eingerichtet, wie oben beschrieben. Jedoch wenn ich mir den Text-Wert anzeigen lassen kommt ein ganz anderer Textinhalt, als angewählt. Wie komme ich an die richtigen Werte?
-
Schlies mich mal mit ner Frage an. Für eine praktische umsetzung, bräuchte ich die option das nur Namen angezeit werden die in anderen Dynamischen feldern noch nicht ausgewählt sind. Ist das via skript möglich?
-
Hallo Michi,
in diesem Fall würde ich bei Fahrer2 unter dynamic values folgendes schreiben:
---
let me := this;
(select Name)[number(Nr) != number(me.'Fahrer 1')]
---
Leo
-
Funktioniert
-
Hallo Tanja. Du hast hier ein dynamisches Mehrfachauswahlfeld. Dazu muss man wissen wie die Werte beim Feld aufgebaut sind. im Einfachsten Fall (dynamic values: select Namen und Name des Wertes: Name) wäre die Formel für Textabfrage:
concat(for i in numbers(FELDNAME) do
record(Namen,i).Name
end)
Leo
-
Super, hat geklappt. Tausend Dank
-
Wie bekommt man das denn hin, das nach änderung im Datumsfeld in Tabelle Name, das Dynamische Auswahlfeld Fahrer 1 in Tabelle test auf gleichheit überprüft wird. (Wenn der gleiche Name ausgewählt ist, soll Fahrer 1 auf null gesetzt werden und der Name in das Dynamische Auswahlfeld Urlaub geschrieben werden, wenn er nicht gleich ist soll nur der Name in Urlaub geschrieben werden )
Der vergleich der Namen will nicht
let me := this;
let num := number(me.Nr);
if (select test)[num = number('Fahrer 1')] then
(select test).(
'Fahrer 1' := null;
Urlaub := num
)else
(select test).(Urlaub := num)
end
-
Hallo
imho kannst du keine Werte in ein dynamisches Auswahlfeld per script schreiben, da es eigentlich so was wie eine Verknüpfung "Light" von einer Tabelle ist, dh es spiegelt einfach einen Teil der Tabelle, die du per select ewählt hast.
-
Ich kann das Feld Urlaub über die Nr des datensatzes füllen, jedoch bekomm ich den Vergleich nicht hin ob die Nr von Fahrer 1 schon die Nr vom aktuellen Datensatz ist
Content aside
- vor 3 JahrenZuletzt aktiv
- 13Antworten
- 2000Ansichten