0

Text- und Datumsfunktionen

Hallo,
ich habe lange gesucht um eine einfach zu konfigurierende Datenbank zu finden. Super Arbeit.
Ich bräuchte jedoch noch eine Wochenauswertung (Gruppierung) Jahr/Woche(Datum) wäre das möglich noch zu ergänzen?
Besten Dank
MfG
Jens

254 Antworten

null
    • Andre_Koppen
    • vor 7 Jahren
    • Gemeldet - anzeigen
    Hallo!

    Ich habe in meiner Ansicht eine Spalte "letzter Kontakt", dort wird das Datum für den letzten Kontakt mit meinem Kunden angezeigt.

    Nun möchte ich eine Formel hinterlegen, dass dieses Feld sich nach 180Tagen nach dem letzten Kontakt rot färbt.

    Kennt jemand hierfür eine Formel?

    Viele Grüße André
    • Birger_H
    • vor 7 Jahren
    • Gemeldet - anzeigen
    Hier brauchst du ein weiteres Formel-Feld.
    Die Formel sollte etwa so lauten:
    –––
    if (number(now()) - number('Letzter Kontakt')) / (24 * 60 * 60 * 1000) > 180 then
    color("red")
    else
    color("white")
    –––

    Gruß
    Birger - Ninox Support
    • violet_umbrella
    • vor 7 Jahren
    • Gemeldet - anzeigen
    Hallo Alex,

    wie genau mach ich das? Habe ein (Datum-)Feld in das ich die Änderung eintragen lassen möchte.
    Muss ich dazu ein Formelfeld erstellen oder trage ich den code bei "Nach Änderung folgendes Skript ausführen ein"? oder nochmals anders?

    sorry blutiger Anfänger…

    Adi
    • Birger_H
    • vor 7 Jahren
    • Gemeldet - anzeigen
    In den Tabellen-Eigenschaften gibt es die Felder "Bei neuem Datensatz..." und "Nach Änderungen...". Dort trägst du das Script ein.
    Der Code sollte so lauten:
    –––
    'Datumsfeld' := date(now())
    –––


    Birger - Ninox Support
    • violet_umbrella
    • vor 7 Jahren
    • Gemeldet - anzeigen
    gefunden!
    Danke
    • Gritte
    • vor 7 Jahren
    • Gemeldet - anzeigen
    Vorweg muß ich mal sagen, daß Ninox eine wirklich tolle App ist.
    Ich bin ein Datenbankanfänger und frage mich, wie ich realisiere, daß nach einem Datum (in meinem Fall ein Rechnungsdatum) eine bestimmte Zeit von z.B 14 Tagen (zahlbar bis) angezeigt wird.
    Wie rechne ich zu einem Datum einen Datumswert hinzu?
    Vielen Dank schonmal ;)
    • Gritte
    • vor 7 Jahren
    • Gemeldet - anzeigen
    Sorry, ich habe es vielleicht nicht elegant gelöst, aber über ein Funktionsfeld mit dem Inhalt:

    Rechnungsdatum + number("21")

    hats, geklappt.
    • Martin_Sundermann
    • vor 7 Jahren
    • Gemeldet - anzeigen
    Hallo,
    kann es sein, dass die Funktion WOCHENTAG nur mit Datumsfeldern funktioniert? ich habe es mit einem Termin-Feld probiert und erhalte als Ergebnis nicht die Zahl, die für einen Wochentag steht, sondern den Fließtext der Funktion:

    weekday('Trauerfeier Datum und Zeit') hat als Ergebnis:
    {weekday(I4)}.

    Gibt es eine Möglichkeit, ein Terminfeld in ein Datumsfeld umzuwandeln?

    Mit freundlichen Grüßen

    Martin Sundermann
    • Martin_Sundermann
    • vor 7 Jahren
    • Gemeldet - anzeigen
    Hallo,
    habe inzwischen selbst eine Antwort gefunden: über die Funktion DATUM kann ich einen Termin in ein Datum umwandeln. Ein bisschen ausprobieren musste ich bei der Reihenfolge der Datumsbestandtteile Jahr, Monat, Tag:
    date(year('Trauerfeier Datum und Zeit'), month('Trauerfeier Datum und Zeit'), day('Trauerfeier Datum und Zeit'))
    Das Ergebnis ist ein Datumsfeld, das ich wiederum mit der Funktion WOCHENTAG verwenden kann. Geht dann natürlich auch ohne den Zwischenschritt, indem ich alles von vorneherein in die Funktion WOCHENTAG hinein nehme.
    • mariodingethal
    • vor 7 Jahren
    • Gemeldet - anzeigen
    Ich möchte eine ähnliche Berechnung von Stunden durchführen…
    Beginn (Datums-und-Uhrzeit-Feld)
    Ende (Datums-und-Uhrzeit-Feld)

    Ergebnis in Stunden

    Hmmm… ich habe anscheinend den Syntax noch nicht verstanden, benötige Hilfe. Danke im voraus.
    • Birger_H
    • vor 7 Jahren
    • Gemeldet - anzeigen
    Die Formel lautet:
    –––
    Ende - Beginn
    –––


    Birger - Ninox Support
    • mariodingethal
    • vor 7 Jahren
    • Gemeldet - anzeigen
    Oh vielen vielen Dank
    … dass es so einfach ist… ich hatte immer versucht, die »komplette« Formel:
    __

    Dauer=Ende-Anfang
    __

    »einzubauen« :)
    • thelenbru
    • vor 7 Jahren
    • Gemeldet - anzeigen
    Hallo,

    ich bin einfach zu alt ;-)

    Ich möchte gerne aus einer bestehenden Tabelle die Anzahl der Tage zwischen dem aktuellen Dateneintrag und dem letzten Datumseintrag in der Tabelle berechnen lassen.
    D.h. ich lege einen neuen Datensatz ( mit Datum ) an. Wieviele Tage sind seit dem letzten Eintag vergangen ?

    wer kann mir bitte helfen ?

    Vielen Dank
    • FML
    • vor 7 Jahren
    • Gemeldet - anzeigen
    Hallo :-)

    für den Fall dass die Einträge einen fortlaufenden Index haben könntest du das mit einer Schleife und der Funktion
    "days(start, end) – Number of days between two dates."
    machen.

    Ohne Code formuliert würde es so lauten:
    ---
    Neuer Datensatz -> days((Index - 1).Datum, today())
    ---

    Siehe -> http://manual.ninoxdb.de/de/funktion-und-sprache/
    • Master70
    • vor 7 Jahren
    • Gemeldet - anzeigen
    Hallo,
    ich möchte in einem Funktionsfeld die Durchschnittszeit (Minuten/Kilometer) einer Laufstrecke berechnen. Dazu verwende ich die Formel (Laufzeit/Distanz) als Zeitdauer/Zahl. Das klappt auch wunderbar, nur wird das Ergebnis in (hh:mm:ss) angezeigt. Mich interessieren aber nur die Minuten und Sekunden (mm:ss). Ich habe schon alles mögliche versucht um dieses Ergebnis umzuformatieren, aber irgendwie will das nicht so recht klappen.
    Danke im Voraus für eine Lösung.
    • Birger_H
    • vor 7 Jahren
    • Gemeldet - anzeigen
    Hier müssen Sie die Original-Formatierung überschreiben. Verwenden Sie ein Formel-Feld und folgende Formel:
    –––
    let myT := number('Durchschnittszeit');
    let myMin := floor(myT / 60000);
    mySec := round( (myT - 60000 * myMin) / 1000);
    myMin + ":" + format( mySec, "00")
    –––


    Birger - Ninox Support
    • Master70
    • vor 7 Jahren
    • Gemeldet - anzeigen
    Perfekt!
    Habe die Formel wie folgt angepasst:


    let myT := number(Laufzeit / Distanz);
    let myMin := floor(myT / 60000);
    let mySec := round((myT - 60000 * myMin) / 1000);
    myMin + ":" + format(mySec, "00") + " min/km"


    Danke
    • michi
    • vor 7 Jahren
    • Gemeldet - anzeigen
    Ich würde gerne eine IBAN automatisch formatieren.
    Sprich "DE19 1234 1234 1234 1234 12".

    Gibt es da eine Möglichkeit?
    • Birger_H
    • vor 7 Jahren
    • Gemeldet - anzeigen
    Eine automatische Formatierung der IBAN ist Teil unserer Anforderungsliste und wird mit einem der nächsten Updates kommen.

    Birger - Ninox Support
    • bertschulze
    • vor 7 Jahren
    • Gemeldet - anzeigen
    Hallo, ich arbeite mit dieser Formel:

    if Zustand = 2 then
    Maximalhaltbarkeit - today()
    else
    'haltbar bis' - today()

    Hier die Formel hinter "Maximalhaltbarkeit":

    if 'Datum geöffnet am + Haltbarkeit nach Anbruch' > 'haltbar bis' then
    'haltbar bis'
    else
    'Datum geöffnet am + Haltbarkeit nach Anbruch'

    Doch obwohl ich nirgends Probleme dieser Art habe, erhalte ich im Ergebnis neben den Tagen der Resthaltbarkeit eine merkwürdige Zeitangabe.

    "13 Tage 16:47:59.999"
    • bertschulze
    • vor 7 Jahren
    • Gemeldet - anzeigen
    Sorry, hat sich erledigt. Die Wochen mit Dezimalstellen ergeben Uhrzeiten, da keine ganzen Tage mehr bei rauskommen. Habe jetzt die Woche in einer vorherigen Formel gerundet:

    'geöffnet am' + round(Arzneimittelname.'Haltbarkeit nach dem Öffnen (Wochen)') * 7
    • hapalua
    • vor 7 Jahren
    • Gemeldet - anzeigen
    Hallo,

    ich habe Schwierigkeiten, eine Ausgabe zu formatieren:

    Projektname + ", " + Ort

    Die DB zeigt mir immer wieder "Unerwartetes Symbol in Zeile 1, Spalte 13.
    Wie bekomme ich ein Leerzeichen zwischen den Feldern?

    Vielen Dank!

    Gruß
    Andy
    • Birger_H
    • vor 7 Jahren
    • Gemeldet - anzeigen
    Bitte achten Sie darauf, keine typographischen Anführungszeichen zu verwenden. Die Ninox Script-Sprache erkennt ausschließlich nicht formatierte Anführunszeichen.

    Nicht: Projektname + “, ” + Ort
    Sondern: Projektname + ", " + Ort

    Birger - Ninox Support
    • Roland.3
    • vor 7 Jahren
    • Gemeldet - anzeigen
    Hallo,

    ich hätte mal wieder eine doofe Frage. Ich habe in einem Feld das Wort „Text“ und möchte es zu „T e x t“ berechnen lassen. Ist das möglich?

    Danke und Gruß
    Roland
    • Birger_H
    • vor 7 Jahren
    • Gemeldet - anzeigen
    Das ist möglich. Versuchen Sie folgende Formel:
    –––
    let myT := "Text";
    var myNewText := for i from 0 to length(myT) do
    substr(myT, i, 1) + " "
    end
    ;
    replace(concat(myNewText), ", ", "")
    –––


    Birger - Ninox Support

Content aside

  • vor 6 JahrenZuletzt aktiv
  • 254Antworten
  • 72855Ansichten