Ankündigung

Einklappen
Keine Ankündigung bisher.

Datum?

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    Datum?

    Gibt es eigentlich eine elegante Möglichkeit, das Datum auszulesen, ähnlich der Funktionen hour(), minute(), second() (day(), month() sind ja Vergleichsfunktionen)?

    Ansonsten bleibt nur setdate() in einen String zu konvertieren und die Bestandteile des Datums zu extrahieren, wenn man eine standardisierte Darstellung benötigt?!
    BR
    Marc

    #2
    Mal nebenbei gefragt:
    Findest Du es wirklich gut, das die einzelnen Komponenten der Zeit mit unterschiedlichen Funktionen abgefragt werden?
    Immerhin besteht dabei das Risiko, das durch die unterschiedlichen Aufrufzeitpunkte die Rückgabewerte nicht zueinander gehören:

    Frage ich z.B. um 11:59:59 und ein paar Zehntel erst die Stunden, dann die Minuten und dann die Sekunden ab, so könnte je nach Auslastung herauskommen:
    11:59:59 (OK, Glück gehabt)
    11:59:00 (ziemlich unschön)
    11:00:00 (richtig schlecht)
    12:00:00 (Nicht das erwartete, aber wenigstens die richtige Zeit)

    Frage ich z.B. um 11:59:59 und ein paar Zehntel erst die Sekunden, dann die Minuten und dann die Stunden ab, so könnte je nach Auslastung herauskommen:
    11:59:59 (OK, Glück gehabt)
    12:59:59 (richtig schlecht)
    12:00:59 (ziemlich unschön)
    12:00:00 (Nicht das erwartete, aber wenigstens die richtige Zeit)

    Das Ergebnis weicht im schlechtesten Fall um 00:59:59 von der realen Zeit ab.
    Und das ist für Dich elegant?
    Oder ist Dir da ein Mechanismus bekannt, der das sicher verhindern kann?
    Ich meine, ich habe noch keine Tests in dieser Richtung unternommen, daher weiß ich nicht, ob und falls ja mit welcher Häufigkeit obige Fehler auftreten. Aber durch die Trennung in unabhängige Funktionen ist das zumindest denkbar.

    Da erscheint mir eine atomare Funktion die alles gleichzeitig ausließt und eine Parsefunktion, die es anschließend "in aller Ruhe" zerlegen kann doch allemal sinnvoller.

    Falls Du allerdings jeweils nur an an einer Komponente zu Zeit interessiert bist, ok, dann sind getrennte Funktionen natürlich einfacher zu handhaben.
    Tessi

    Kommentar


      #3
      Zitat von Tessi Beitrag anzeigen
      Mal nebenbei gefragt:
      Findest Du es wirklich gut, das die einzelnen Komponenten der Zeit mit unterschiedlichen Funktionen abgefragt werden?
      Interessante und IMHO auch wichtige Frage! Hängt halt von der Umsetzung im eibPC und der Verwendung im Programm ab.

      Generell sind die Funktionen aber nicht auf meinem Mist gewachsen und machen durchaus Sinn. Die Problematik der Erfassung und Auswertung sollte Enertex mal im Handbuch beschreiben, also wie bzw. wann der Ursprungswert genommen wird, der dann die Grundlage für jede einzelne Funktion bildet.

      Erwarten würde ich natürlich, dass sich der Wert in einem Durchlauf nicht ändert, wie es auch das Prinzip einer SPS vorgibt: Alle Zustände werden vor jedem Programmzyklus erfasst, im Programm bearbeitet und Änderungen erst nach dem Durchlauf geschrieben.

      Die Kommandos fehlen am Ende aber trotzdem, denn wenn schon, sollte der Befehlssatz auch komplett sein!
      BR
      Marc

      Kommentar


        #4
        dass sich der Wert in einem Durchlauf nicht ändert
        würde ich auch so erwarten, aber ev. kommt da ein Input von Enertec
        EPIX
        ...und möge der Saft mit euch sein...
        Getippt von meinen Zeigefingern auf einer QWERTZ Tastatur

        Kommentar


          #5
          Zitat von saft6luck Beitrag anzeigen
          Erwarten würde ich natürlich, dass sich der Wert in einem Durchlauf nicht ändert
          Stimmt, so könnte man es lösen - schade das dazu nichts in der Doku steht.

          Zitat von saft6luck Beitrag anzeigen
          Die Kommandos fehlen am Ende aber trotzdem, denn wenn schon, sollte der Befehlssatz auch komplett sein!
          Stimme ich auch zu, von komplett ist der Befehlssatz eh viel weiter weg als man das von gängigen PC-Sprachen her gewohnt ist, aber bei deren Design und Implementierung haben wohl auch wesentlich mehr Menschen viel Arbeit hineingesteckt.

          Zitat von EPIX Beitrag anzeigen
          würde ich auch so erwarten, aber ev. kommt da ein Input von Enertec
          Am besten in Form einiger Hinweise im Handbuch.

          Da fällt mir noch ein:
          Es gibt doch auch Funktionen, um die die Zeitkomponenten neu zu setzen (changehour(); changeminute(); changesecond()). Da ist es dann besonders wichtig zu wissen, wie man sicherstellen kann, das dabei nicht was unerwünschtes herauskommt.
          Tessi

          Kommentar

          Lädt...
          X