Operatoren
Lerne, wie du mit Operatoren in Ninox Logik Werte berechnest, vergleichst, zuweist und darauf zugreifst.
Operatoren sind die kleinen Symbole und Schlüsselwörter, die Ninox Logik funktionieren lassen. Du verwendest sie, um Summen zu berechnen, Werte zu vergleichen, Ergebnisse zu speichern und auf Daten zuzugreifen.
Diese Seite zeigt jeden Operator als Symbol und mit Namen.
So erkennst du Operatoren hier leichter und kannst in anderen Kapiteln konsistent darauf verweisen.
In diesem Kapitel lernst du:
Werte Feldern und Variablen zuzuweisen
mit Text, Datensatzfeldern und strukturierten Daten zu arbeiten
Werte mit arithmetischen Operatoren zu berechnen
Werte zu vergleichen und
trueoderfalsezurückzugeben
Den richtigen Operator wählen
Verwende diese Operatorgruppen für unterschiedliche Aufgaben:
Werte und Referenzen schreiben zum Zuweisen von Werten, Schreiben von Text und Zugreifen auf Felder
Arithmetische Operatoren für Summen, Mengen, Rabatte und andere Berechnungen
Vergleichsoperatoren für Prüfungen in
if-Bedingungen und Filtern
Wenn du gerade erst anfängst, konzentriere dich zuerst auf +, -, *, /, =, !=, := und ..
Werte und Referenzen schreiben
Diese Operatoren helfen dir, gültige Logik zu schreiben, Werte zuzuweisen und auf Text, Felder und Datensatzdaten zu verweisen. Du nutzt sie in fast jedem Skript, auch in sehr kurzen.
:= Zuweisung
Weist einer Variable oder einem Feld einen Wert zu.
let myN := 1000;
; Semikolon
Beendet eine Anweisung, besonders wenn danach eine weitere folgt.
let myN := 1000;
"" Doppelte Anführungszeichen
Kennzeichnet Text als String-Wert.
"Hello" + " " + "world!"
. Punkt
Greift auf ein Feld in einem Datensatz oder einen Wert in einem Objekt zu.
(select Customers).Name
Beziehe dich im Ninox Skripting bei Feld- oder Tabellennamen auf den Internen Namen und nicht auf die Bezeichnung. Interne Namen dürfen keine Leerzeichen oder Sonderzeichen enthalten und müssen eindeutig sein. Ninox erzeugt den Internen Namen automatisch, du kannst ihn aber ändern. Wenn die Bezeichnung zum Beispiel "First name" lautet, ist der automatisch erzeugte Interne Name "first_name".
Werte mit := zuweisen
:= zuweisenVerwende :=, um einen Wert in einer Variable zu speichern oder in ein Feld zu schreiben.
Dieses Beispiel zeigt drei verschiedene Zuweisungen.
Die erste Zeile erstellt die Variable
myNund speichert die Zahl1000.Die zweite Zeile aktualisiert
myNund ersetzt den alten Wert durch2.Die dritte Zeile schreibt den Text
Hello world!in das FeldText.
Anweisungen mit ; beenden
; beendenVerwende ;, um Anweisungen zu trennen.
Ninox fügt Semikolons oft automatisch ein, wenn sie nötig sind, besonders nach let-Anweisungen.
Dieses Beispiel trennt Anweisungen und kombiniert zwei Werte.
Ninox speichert
1000inmyX.Ninox speichert
500inmyY.Die letzte Zeile addiert beide Werte und gibt
1500zurück.
Text mit Anführungszeichen kennzeichnen
Verwende doppelte Anführungszeichen für Textwerte.
Dieses Beispiel verbindet drei Textwerte zu einem Ergebnis.
Jeder Teil in Anführungszeichen wird als Text behandelt.
Der Operator
+verbindet die drei Textteile zu einem String.Das Ergebnis ist
Hello world!.
Doppelte Anführungszeichen sind auch nützlich, wenn du kurzen dynamischen Text mit Feldwerten erstellst.
Dieses Beispiel kombiniert festen Text mit einem Feldwert.
"Hello "ist fester Text.first_nameliest den Feldwert."!"ergänzt das abschließende Satzzeichen.Wenn
first_nameden WertSamenthält, ist das ErgebnisHello Sam!.
Dieses Beispiel kombiniert festen Text mit einer Zahl.
choicesgibt den numerischen Index der gewählten Option zurück, der einem Textwert zugeordnet ist.text(...)liest den zugeordneten Text aus.Das Ergebnis wird zu einem Textwert wie
Your choice: Apples.
Mit . auf Werte zugreifen
. auf Werte zugreifenVerwende den Punktoperator, um auf ein Feld in einem Datensatz oder auf einen Wert in einem strukturierten Objekt zuzugreifen.
Dieses Beispiel liest ein Feld aus einem Datensatz.
select customersgibt Datensätze aus der Tabelle "Customers" zurück.first(...)nimmt den ersten Datensatz aus diesem Ergebnis.Der Punktoperator liest den Wert im Feld
namedieses Datensatzes.
Werte berechnen
Verwende arithmetische Operatoren, um Werte direkt in deiner Logik zu berechnen.
Sie sind nützlich für Preise, Mengen, Prozente, Dauern und Zähler.
+ Plus
Addiert Zahlen. Kann auch Text verbinden.
1 + 2 gibt 3 zurück
- Minus
Subtrahiert eine Zahl von einer anderen.
3 - 2 gibt 1 zurück
* Sternchen
Multipliziert Zahlen.
2 * 3 gibt 6 zurück
/ Schrägstrich
Dividiert eine Zahl durch eine andere.
6 / 3 gibt 2 zurück
% Modulo
Gibt den Rest nach einer Division zurück.
13 % 5 gibt 3 zurück
() Klammern
Ändert die Reihenfolge der Berechnung.
(1 + 2) * 3 gibt 9 zurück
Arithmetische Operatoren in alltäglicher Logik verwenden
Das sind typische Anwendungsfälle:
Einen Preis mit einer Menge multiplizieren
Einen Zuschlag oder Rabatt addieren
Eine Summe auf mehrere Datensätze verteilen
Prüfen, ob sich eine Zahl mit
%ohne Rest teilen lässt
Dieses Beispiel berechnet einen Wert in zwei Schritten.
Die erste Zeile multipliziert
pricemitquantity.Ninox speichert das Ergebnis in
myTotal.Die zweite Zeile zieht
discountvonmyTotalab und speichert das neue Ergebnis inmyDiscounted.
Modulo verstehen
Der Modulo-Operator % gibt zurück, was nach einer ganzzahligen Division übrig bleibt.
Dieses Beispiel zeigt, wie Modulo den Rest zurückgibt.
Ninox teilt
13durch5.Das ganzzahlige Ergebnis ist
2, weil5zweimal in13passt.Danach bleibt
3übrig.Deshalb gibt der Ausdruck
3zurück.
Die Reihenfolge der Berechnung steuern
Ninox folgt der üblichen Operatorpriorität. Multiplikation und Division werden vor Addition und Subtraktion ausgeführt.
Vergleiche diese Beispiele:
Dieses Beispiel zeigt die Standardreihenfolge der Berechnung.
Ninox rechnet das nicht von links nach rechts.
Zuerst multipliziert es
2 * 3, das ergibt6.Danach addiert es
1.Das Endergebnis ist
7.
Dieses Beispiel zeigt, wie Klammern die Berechnungsreihenfolge ändern.
Ninox addiert zuerst
1 + 2, das ergibt3.Danach multipliziert es dieses Ergebnis mit
3.Das Endergebnis ist
9.
Ninox formatiert Logik automatisch für bessere Lesbarkeit. Es entfernt unnötige Leerzeichen und Klammern und ergänzt Leerzeichen, wo sie hilfreich sind. Das Berechnungsergebnis ändert sich nicht, solange die Logik gleich bleibt.
Werte vergleichen
Vergleichsoperatoren prüfen, ob zwei Werte eine Bedingung erfüllen. Sie helfen Ninox zu entscheiden, was als Nächstes passieren soll.
Sie geben ein boolesches Ergebnis zurück:
truefalse
In einem Yes/No-Feld zeigt Ninox diese Ergebnisse als Yes und No an.
= Gleich
Prüft, ob zwei Werte gleich sind.
1 + 1 = 3 - 1 gibt true zurück
!= Ungleich
Prüft, ob zwei Werte unterschiedlich sind.
"Apples" != "Pears" gibt true zurück
< Kleiner als
Prüft, ob der linke Wert kleiner ist.
4 * 2 < 10 gibt true zurück
<= Kleiner oder gleich
Prüft, ob der linke Wert kleiner oder gleich ist.
5 * 2 <= 10 gibt true zurück
> Größer als
Prüft, ob der linke Wert größer ist.
10 > 4 * 2 gibt true zurück
>= Größer oder gleich
Prüft, ob der linke Wert größer oder gleich ist.
5 * 2 >= 10 gibt true zurück
like Like
Prüft, ob Text einen Wert enthält.
"Hello" like "el" gibt true zurück
not Nicht
Prüft, ob eine Bedingung false ist
not 1 = 3 gibt true zurück
Vergleichsergebnisse in Logik verwenden
Vergleichsoperatoren werden oft in if-Bedingungen verwendet.
Dieses Beispiel führt eine Aktion nur aus, wenn eine Bedingung true ist.
Ninox prüft, ob das Feld
totalgrößer als100ist.Wenn die Bedingung
trueist, zeigt Ninox die NachrichtHigh valuean.Wenn die Bedingung
falseist, passiert nichts.
Du kannst Feldwerte auch direkt vergleichen:
Dieses Beispiel vergleicht einen Feldwert mit einem festen Textwert.
Ninox vergleicht das Feld
statusmit dem TextOpen.Wenn beide Werte exakt übereinstimmen, zeigt Ninox den Hinweis an.
Dieses Muster ist nützlich für Erinnerungen, Prüfungen und Workflow-Kontrollen.
Text mit like vergleichen
like vergleichenVerwende like, wenn du prüfen willst, ob ein Textwert in einem anderen vorkommt.
Dieses Beispiel prüft, ob ein Text einen anderen Text enthält.
Ninox prüft, ob der Text
elan einer beliebigen Stelle inHellovorkommt.Weil
Helloden Textelenthält, gibt die Bedingungtruezurück.
Dieses Beispiel zeigt, dass like nicht symmetrisch ist.
Ninox prüft, ob der kürzere Text
elden TextHelloenthält.Das ist nicht der Fall.
Die Bedingung gibt
falsezurück.
like prüft, ob ein Text enthalten ist. Es prüft nicht, ob beide Werte identisch sind. Verwende =, wenn du eine exakte Übereinstimmung brauchst.
Operatoren zusammen verwenden
Die meisten echten Skripte kombinieren mehrere Operatoren in einem Block.
Dieses Beispiel kombiniert Zuweisung, Berechnung, Vergleich und Textausgabe.
Die erste Zeile berechnet eine Summe und speichert sie in der Variablen
myTotal.Das
if-Statement prüft, ob diese Summe größer als100ist.Wenn das der Fall ist, erstellt Ninox eine Nachricht aus dem Text
High-value record:und der berechneten Summe.text(myTotal)konvertiert die Zahl in Text, damit sie in der Meldung angezeigt werden kann.
Dieses Beispiel kombiniert Feldzugriff, Textverkettung, Zuweisung und Vergleich.
Die erste Zeile liest die Felder
first_nameundlast_name.Sie verbindet beide Werte mit einem Leerzeichen und speichert das Ergebnis in der Variablen
myFullName.Das
if-Statement prüft, oblast_namenicht leer ist.Wenn das Feld Text enthält, zeigt Ninox den vollständigen Namen in einer Meldung an.
Dieses Beispiel kombiniert Texterstellung, Konvertierung und Zuweisung an ein Feld.
Die erste Zeile erstellt einen neuen Textwert, der mit
INV-beginnt.text(number)konvertiert den numerischen Wert innumberin Text.Ninox speichert das vollständige Ergebnis in der Variablen
myReference.Die zweite Zeile schreibt diesen Wert in das Feld
reference.
An diesen Beispielen siehst du, wie Operatoren dir helfen:
Werte mit
:=zuzuweisenText mit
+zu verbindenErgebnisse mit
*zu berechnenWerte mit
>und!=zu vergleichen
Zuletzt aktualisiert
War das hilfreich?