Links

Eigene Funktionen erstellen

function
Sie können bei Ninox auch eigene Funktionen erstellen, um Arbeitsabläufe nach Ihren Wünschen zu automatisieren.

Vorteile

  • Skript einmal schreiben und in der ganzen Datenbank verwenden
  • übersichtliche Skripte, da Sie lediglich Ihre selbsterstellte Funktion verwenden und nicht das komplette Skript (ggf. mehrfach) einsetzen müssen
Um eine Funktion zu definieren, verwenden Sie function gefolgt von Ihrem gewählten Funktionsnamen. Anschließend geben Sie in Klammern an, welche Parameter verwendet werden sollen. Diese werden durch Kommata getrennt.

Definieren Sie Parameter jeweils wie folgt

parameterName : parameterTyp
Wenn Sie eine Funktion ohne Parameter erstellen möchten, dann fügen Sie einfach eine leere Klammer () ein.
Wie auch bei Skripten ist die letzte Zeile in der Definition der Funktion der Rückgabewert.

Funktionen global definieren

Wenn Sie Ihre Funktion in der Tab-Leiste der Datenbank unter Optionen in Globale Funktionen eingeben, können Sie Ihre Funktionen in der gesamten Datenbank verwenden.
Optionen werden Ihnen nur angezeigt, wenn Sie im Bearbeitungsmodus
sind.

So geht's

  1. 1.
    Aktivieren Sie den Bearbeitungsmodus.
  2. 2.
    Klicken Sie auf Optionen.
  3. 3.
    Geben Sie unter Globale Funktionen Ihre Funktion(en) ein.
Unter „Globale Funktionen“ können Sie eigene Funktionen eingaben
Fügen Sie die Funktion hingegen in einem Formel-Feld einer Tabelle ein, steht Ihre Funktion auch nur in diesem Formel-Feld zur Verfügung. Das kann sinnvoll sein, wenn Sie sich wiederholende Skript-Teile kompakt halten wollen oder Ihre Funktion dabei Bezug auf die jeweils aktuelle Tabelle nimmt.

Hallo Mama. Du bist 100 Jahre alt!

Wir erstellen eine Funktion hallo, die für uns eine Person begrüßt und ihr sagt, wie alt sie ist. Dazu übergeben wir der Funktion einen String für den Namen und eine Zahl für das Alter als Parameter. Diese Parameter werden in einen vorgegebenen Satz an passender Stelle eingesetzt.

Beispiel

1
function hallo(name : text,alter : number) do
2
"Hallo " + name + ". Du bist " + alter + " Jahre alt!"
3
end
Ergebnis: Hallo Mama. Du bist 100 Jahre alt!
Wenn Sie die Funktion wie folgt aufgerufen haben: hallo("Mama", 100)
parameterName
parameterTyp
name
text
alter
number
Zurzeit stehen leider noch nicht alle Datentypen zum Einsatz in einer benutzerdefinierten Funktion zur Verfügung.

Datentypen zur Erstellung benutzerdefinierter Funktionen

Diese folgenden Datentypen stehen für die Erstellung benutzerdefinierter Funktionen bereits zur Verfügung.
Datentyp
Beschreibung
Beispiel
text
entspricht dem Datentyp string und steht für einfachen Text
"Mama"
number
ist eine Zahl
100
boolean
ist entweder wahr oder falsch
"Mama" = "Mama"
"Mama" = "Papa"
date
ist ein Datum
date(1922, 1, 13)
time
ist eine Zeit
time()
datetime
entspricht dem Datentyp timestamp und steht für einen Zeitstempel
datetime(date(1922, 1, 13), time())
Tabellen-Name
entspricht einem Datensatz aus der angegebenen Tabelle
meinDatensatz : 'Tabelle 1'