0

Funktions- und Sprachreferenz

Hallo, ich habe zwei Frage:

1) Ich würde gerne zu einer bestehenden Uhrzeit eine gewisse Anzahl Stunden und Minuten addieren. Leider schaffe ich das nur indem ich zwei Datenfelder von Typ Uhrzeit addiere, aber ich hätte erwartet, dass man auch z.B. Begin := Begin + "07:00" oder wie auch immer angeben kann. Ich habe schon alle möglichen Varianten probiert, komme aber nicht auf eine Lösung. Ist es überhaupt möglich Zeiten auf diese Weise zu addieren?

2) es gibt bei Rechnen die Funktion Prozent %, allerdings finde ich dazu keine Beschreibung und bekomme auch keine sinnvollen Werte raus. Wo finde ich dazu eine Erklärung/Beispiel?

Noch zwei Anregungen:
- generell fände ich es gut, wenn einzelnen Funktionen durchgehend mit ein oder zwei aussagekräftigen Beispielen beschrieben wären, das würde viel Zeit ersparen.

- will man eine Funktion als Text eingeben, werden im Editor zwar Zeilennummern angezeigt, aber leider keine Spaltennummern. Die Fehlerhinweise erscheinen aber mit Spaltennummer! Dann beginnt das fleissige Zählen....

Besten Dank Klaus

493 Antworten

null
                        • mspirig_educationch
                        • vor 7 JahrenTue, October 10, 2017 at 6:05 AM UTC
                        • Gemeldet - anzeigen
                        Hallo

                        Gibt es eine Funktion, die (wie "icon(choice)") das Icon aus einer Mehrfachauswahl zurückgibt?

                        Besten Dank
                        Marco
                        • Birger_H
                        • vor 7 JahrenTue, October 10, 2017 at 7:19 AM UTC
                        • Gemeldet - anzeigen
                        In der Vorlage "Rechnungen" ist dies bereits realisiert. Dort wird ein Feld automatisch beim Erstellen eines neuen Datensatz' befüllt. Die Formel dafür:
                        –––
                        let y := year(Datum);
                        let c := cnt(select Rechnung where year(Datum) = y);
                        Rechnungsnummer := y + "-" + format(c, "000")
                        –––


                        Birger - Ninox Support
                        • Birger_H
                        • vor 7 JahrenTue, October 10, 2017 at 7:52 AM UTC
                        • Gemeldet - anzeigen
                        Die Formel lautet genau so:
                        –––
                        icon('Name des Auswahlfelds')
                        –––


                        Birger - Ninox Support
                        • Birger_H
                        • vor 7 JahrenTue, October 10, 2017 at 10:33 AM UTC
                        • Gemeldet - anzeigen
                        Mehrdimensionale Arrays werden derzeit noch nicht unterstützt.

                        Birger - Ninox Support
                        • FML
                        • vor 7 JahrenTue, October 10, 2017 at 1:31 PM UTC
                        • Gemeldet - anzeigen
                        Danke für die Antwort Birger :-)

                        Das ist auch eine Idee, aber ich denke das ist etwas für eine komplette Neueinrichtung.

                        Mir geht es darum ein Feld auszuwählen auf Basis seines Wertes um im nächsten Schritt eine Rechnungsnummer höher zu gehen. Deine Lösung funktioniert leider nicht wenn Datensätze übernommen werden und der erste Datensatz in der RechnungsDB dann zum Beispiel lautet „02323“.

                        Grüße
                        • mspirig_educationch
                        • vor 7 JahrenTue, October 10, 2017 at 3:45 PM UTC
                        • Gemeldet - anzeigen
                        Besten Dank für die Antwort.
                        Klappt leider nicht: Ich erhalte einen Error: Die Funktion icon(multi) ist nicht definiert.
                        • Birger_H
                        • vor 7 JahrenWed, October 11, 2017 at 6:56 AM UTC
                        • Gemeldet - anzeigen
                        Die Formel muss lauten
                        –––
                        icon("multi")
                        –––


                        Birger - Ninox Support
                        • Birger_H
                        • vor 7 JahrenWed, October 11, 2017 at 9:58 AM UTC
                        • Gemeldet - anzeigen
                        Das Handbuch der Scriptsprachen finden Die hier - insbesondere auf dieser Seite. Ninoc importiert und exportiert Daten als csv-Datei. Ob Ihr System Daten bereit stellt, die Ninox importieren kann, kann ich von hier aus nicht beurteilen. Eine Anwendung als Deportverwaltung ist jedoch eine der vielen häufig genutzten Anwendungsfälle für Ninox.

                        Birger - Ninox Support
                        • schocki
                        • vor 7 JahrenWed, October 11, 2017 at 3:08 PM UTC
                        • Gemeldet - anzeigen
                        Hallo.

                        Wann wird das überarbeitete PDF Handbuch zur Verfügung stehen?

                        Vielen Dank im Voraus.
                        MfG schocki
                        • Birger_H
                        • vor 7 JahrenThu, October 12, 2017 at 5:35 AM UTC
                        • Gemeldet - anzeigen
                        Innerhalb der nächsten Wochen.

                        Birger - Ninox Support
                        • Birger_H
                        • vor 7 JahrenThu, October 12, 2017 at 7:18 AM UTC
                        • Gemeldet - anzeigen
                        Können Sie mir (support@ninoxdb.de) die Datenbank, an der Sie arbeiten einmal also Kopie zuschicken (Hauptmenü -> "Archiv sichern unter...")? Ich schaue dann gerne einmal hinein.

                        Birger - Ninox Support
                        • bernd
                        • vor 7 JahrenFri, October 13, 2017 at 2:51 PM UTC
                        • Gemeldet - anzeigen
                        danke
                        • Ninox Premiumpartner
                        • Bastian_Vorholt
                        • vor 7 JahrenSun, October 15, 2017 at 8:57 AM UTC
                        • Gemeldet - anzeigen
                        Ich habe ein Script geschrieben um mir ein Jahr generieren zu lassen also in einer Verknpfüten Tabelle Days wird ein Jahr erzeugt. Jetzt habe ich ein zweites Formular gebaut mit dem Namen Tourplan und dort habe ich einmal ein Startdatum und ein Enddatum und ein Funktionsfeld welches mir die Tage errechnet die zwischen den beiden Datumsfeldern liegen. Jetzt würde ich gerne einen Button einbauen mit einem Script welches mir aus der Tabelle Days anhand des Startdatums und des Enddatums die felder mittels Variable und einer for schleife übergibt und die Daten in einen neuen Datensatz Tourplan schreibt um diese wiederum später drucken zu können.
                        Habe Testweise in der Days Tabelle ein Textfeld mit der Bezeichnung Name erstellt und dort etwas eingetragen.

                        Hier mein Ansatz

                        let myID := number(Nr);
                        let myDay := 'Start Datum';
                        for p in range(0, Tagezaehler) do
                        select Days;
                        (let myName := Days.Name + p + 1;
                        let myTourplan := (create 'Tourplan neu');
                        myTourplan.(Day := p + 1);
                        myTourplan.(Datum := myDay + p + 1);
                        myTourplan.(Name := myName);
                        myTourplan.(Years := myID))
                        end

                        Vereinfacht gesagt wie wähle ich vorhandene Datensätze mittels for schleife und vom Nutzer vorher eingegebenen Suchkreterien aus und setze diese in eine Variable und schreibe zeitgleich die Daten mittels for schleife wiederum in eine neue Tabelle. Leider übergibt er in meinem Ansatz zu viel.
                        • mspirig_educationch
                        • vor 7 JahrenMon, October 16, 2017 at 8:17 AM UTC
                        • Gemeldet - anzeigen
                        Ich möchte bei einer Mehrfachauswahl das Icon abfragen und es im Drucklayout ausgeben.

                        Besten Dank
                        Marco
                        • Birger_H
                        • vor 7 JahrenMon, October 16, 2017 at 8:39 AM UTC
                        • Gemeldet - anzeigen
                        Dies ist derzeit leider noch nicht möglich.

                        Birger - Ninox Support
                        • Birger_H
                        • vor 7 JahrenTue, October 17, 2017 at 6:41 AM UTC
                        • Gemeldet - anzeigen
                        Können Sie mir (support@ninoxdb.de) die Datenbank, an der Sie arbeiten einmal also Kopie zuschicken (Hauptmenü -> "Archiv sichern unter...")? Ich schaue dann gerne einmal hinein.

                        Birger - Ninox Support
                        • mistrlistr
                        • vor 7 JahrenSun, October 22, 2017 at 3:48 PM UTC
                        • Gemeldet - anzeigen
                        Liebe Ninoxer,

                        gibt es derzeit die Möglichkeit, 2 Arrays zu verbinden?

                        let neuesArray := array1 + array2 funktioniert leider nicht.

                        Vielen Dank und Beste Grüße!
                        • bernd
                        • vor 7 JahrenTue, October 24, 2017 at 3:23 AM UTC
                        • Gemeldet - anzeigen
                        so etwas geht nicht...
                        • mistrlistr
                        • vor 7 JahrenTue, October 24, 2017 at 4:47 AM UTC
                        • Gemeldet - anzeigen
                        Gibt es dann eine andere Möglichkeit, items aus einem Array herauszuschneiden? Meine Idee war slice(array, 0, 3) + slice(array, 4, 10), aber leider macht er dann nur eine Stringzusammenführung...

                        Vielen Dank für die Hilfe!
                        • Birger_H
                        • vor 7 JahrenTue, October 24, 2017 at 6:00 AM UTC
                        • Gemeldet - anzeigen
                        Herausschneiden ist kein Problem:
                        Hier ein wenig Beispielcode:
                        –––
                        let myArray1 := [1, 2, 81, 45, 6, 342, 4, 223, 43];
                        let myArray2 := slice(myArray1, 3, 6);
                        item(myArray2, 0)
                        –––


                        Rückgabewert ist 45.
                        Genutzt werden die Funktionen:
                        slice(array, start, end) => array; extracts a sub-array
                        item(array, index) => value; extracts a single item of an array

                        Birger - Ninox Support
                        • mistrlistr
                        • vor 7 JahrenTue, October 24, 2017 at 11:52 AM UTC
                        • Gemeldet - anzeigen
                        Danke! Es ging mir aber vor allem darum, ein Element aus einem Array zu löschen und das ursprüngliche (jetzt um 1 kleinere) Array zu erhalten. Also sowas wie let newArray := removeItemFromArray(array1, 5)

                        Geht so etwas derzeit?
                        • Birger_H
                        • vor 7 JahrenWed, October 25, 2017 at 12:54 PM UTC
                        • Gemeldet - anzeigen
                        –––
                        let myArray := [1, 2, 81, 1, 2, 9 * 5];
                        let myNewArray := slice(myArray, 1, count(myArray));
                        concat(myNewArray)
                        –––

                        returns
                        2, 81, 1, 2, 45

                        Birger - Ninox Support
                        • mistrlistr
                        • vor 7 JahrenWed, October 25, 2017 at 3:54 PM UTC
                        • Gemeldet - anzeigen
                        Kann ich damit auch ein Element aus der Mitte des Arrays löschen?
                        • Holzi
                        • vor 7 JahrenThu, October 26, 2017 at 10:31 AM UTC
                        • Gemeldet - anzeigen
                        Wie erfahre ich von der "Veröffentlichung" ?
                        • Birger_H
                        • vor 7 JahrenThu, October 26, 2017 at 10:42 AM UTC
                        • Gemeldet - anzeigen
                        Werfen Sie schon einmal einen Blick in die beta-Version.

                        Birger - Ninox Support

                                        Content aside

                                        • vor 7 JahrenSun, June 24, 2018 at 5:57 AM UTCZuletzt aktiv
                                        • 493Antworten
                                        • 134743Ansichten