0

For Schleife from to

Hallo zusammen, ich habe eine Frage. Ich hab mal ein Script gebaut um mir Tage zu generieren. Wenn ich jetzt sage Ninox soll mir vom 01.01.2018 - zum 01.01.2025 die Tage generieren und ich wende die from to formel an, Zählt er in der Cloud Version nur bis mitte 2019 bei der Lokalen Version bis 2021. Wende ich die Formel aber mit der range funktion an funktioniert das ganze Problemlos. Es dauert zwar ein wenig aber es funktioniert. Woran liegt das denn? Kann die from to funktion nur begrenzt zählen oder liegt es an meinem Mac Book?

8 Antworten

null
    • Support
    • vor 6 Jahren
    • Gemeldet - anzeigen

    Eine gute Frage, auf die ich auf Anhieb keine Antwort habe. Wir werden das untersuchen.

    Birger

    • Ninox Premiumpartner
    • Bastian_Vorholt
    • vor 6 Jahren
    • Gemeldet - anzeigen

    Ok danke

    • Leonid_Semik
    • vor 6 Jahren
    • Gemeldet - anzeigen

    Hallo Bastian,

    ich glaube, das Problem liegt daran, dass die Tage bei Ninox als Millisekunden ab 01.01.1970 intern organisiert werden.

    Wenn du "from to" verwendest fängt Ninox an, die Millisekunden zu zählen.

    Bei folgender Aufbau funktioniert bei mir in Web Version:

    ---

    let AA := date(2018, 1, 1);
    let BB := date(2025, 1, 1);
    do as server
    for II from AA to BB + 1 step 1000 * 60 * 60 * 24 do
    let newD := (create Tabelle1);
    newD.Datum := date(II)
    end
    end

    ---

    "do as server" habe ich eingefügt, damit die Berechnungen bei Web Version schneller laufen.

     

    Grüße

    Leo

    • Ninox Premiumpartner
    • Bastian_Vorholt
    • vor 6 Jahren
    • Gemeldet - anzeigen

    Ah das kann natürlich sein. Sollte man auf jedenfall mit in die Doku aufnehmen. Diese do as Server Funktion funktioniert bei meinen scripten nicht. Also hab zum beispiel einfach mal bei der Datenbank 54 im websumit das do as Server vor die formel gesetzt und er führt es nicht aus. Was mach ich falsch??

    • Ninox Premiumpartner
    • Bastian_Vorholt
    • vor 6 Jahren
    • Gemeldet - anzeigen

    Also bei deinen Scripten Leo funktioniert es die do as Server. Du hattest ja mal eine beispieldatenbank gemacht um zu messen wie schnell es mit do as Server und mit Client geht. Das zum Beispiel funktioniert bei mir nur einmal mit do as Server danach muss ich die Datenbank schließen und wieder öffnen erst dann kann ich wieder do as Server ausführen. Vielleicht lädst du diese Datenbank mal in den websumit hoch um zu schauen wie es sich bei anderen verhält. 

    • Leonid_Semik
    • vor 6 Jahren
    • Gemeldet - anzeigen

    Erledigt. Die Datenbank 61_SERVER VS CLIENT. Viel Spaß beim Ausprobieren.

    • Ninox Premiumpartner
    • Bastian_Vorholt
    • vor 6 Jahren
    • Gemeldet - anzeigen

    Vielen Dank Leo, so hab es jetzt nochmal ausprobiert. Wenn ich in der Table einen neuen Datensatz anlege und auf do as server klicke erstellt er mir auch in der Subtable die Daten. Erstelle ich im Anschluss direkt noch einen Datensatz in der Table und drücke dort wieder auf do as Server, erstellt er zwar die Daten in die untertabelle aber er verknüpft sie nicht. Erst wenn ich die komplette Datenbank schließe und neu öffne macht er das erst wieder. Versuch es mal bitte selbst.

    • Leonid_Semik
    • vor 6 Jahren
    • Gemeldet - anzeigen

    Stimmt, irgendwas ist mit do as server nicht in Ordnung. Manchmal funktioniert es, manchmal nicht.

Content aside

  • vor 6 JahrenZuletzt aktiv
  • 8Antworten
  • 3646Ansichten