Arnold Kegebein gliedert seinen Vortrag in zwei Teile - eine grundlegende Einführung und einen praktischen Teil, wo er die Komplexität von Terminen und Wiederholterminen darstellt und Lösungen aufzeigt.
Im ersten Teil wird seines Vortrags wird er die Zeit-Datentypen in FileMaker (Datum, Zeit, Zeitstempel) vorstellen und wie man damit arbeitet und sucht. Er zeigt die in FileMaker eingebauten Zeit-Funktionen, das Formatieren und das Rechnen mit Zeiten, bis hin zu Millisekunden. Was FileMaker nicht selbst kann, wird er mit Custom Functions lösen.
Kegebein wird außerdem die Zeitberechnung anderer Systeme mit FileMaker vergleichen (Internet-Zeit, Unix-Zeit, Excel-Zeit, …)
Im zweiten Teil wird er einfache Termine und Wiederholtermine in FileMaker anlegen und der Frage nachgehen "Was macht Wiederholtermine so kompliziert?"
Er zeigt die Wiederholungsregeln (RRULE) und wie man mit Ausnahmen, Änderungen und Löschungen von Wiederholungen umgeht.
FMK2019 Layout und Eigene Menüs-Management by Jörg Köster
FMK2017 - Zeit und Datum in FileMaker by Arnold Kegebein
1. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
www.filemaker-konferenz.com
Zeit + Datum
Dipl.-Ing. (FH) Arnold Kegebein
Zeitreise + Déjà-vu
2. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
Zeit + Datum | Dipl.-Ing. (FH) Arnold Kegebein
• Studium der Technischen Informatik
• über 30 Jahre Datenbankentwicklung
• seit 2007 FileMaker Entwickler
• Autor für das FileMaker Magazin
• Sprecher auf der FileMaker Konferenz FMK
Dipl.-Ing. (FH) Arnold Kegebein
3. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
Zeit + Datum | Dipl.-Ing. (FH) Arnold Kegebein
Inhalt
• Datum und Zeit in FileMaker
• Datentypen, Funktionen, …
• Zeitsysteme außerhalb FileMaker
• Arbeiten mit Datum und Zeit: Kalendersysteme
• Standard iCalendar
• Wiederholtermin
• Fragen & Antworten
4. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
Zeit + Datum | Dipl.-Ing. (FH) Arnold Kegebein
Datum und Zeit in FileMaker
• Datentypen: Datum, Zeit, Zeitstempel
• Funktionen: implizit und spezielle
• Datum/Zeit-Wert generieren
• Datentypen konvertieren
• Rechnen mit Datum/Zeit
5. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
Zeit + Datum | Dipl.-Ing. (FH) Arnold Kegebein
Datum in FileMaker
• „… Anzahl der Tage seit 1. Januar 0001“ (FileMaker Hilfe)
• Unterschied zu Excel, Unix, …
• Daten vor 01.01.0001 werden nicht unterstützt
Proleptischer Kalender: ein Zeitsystem, dass über seinen
definierten Nullpunkt in die Vergangenheit zurückgreift
6. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
Zeit + Datum | Dipl.-Ing. (FH) Arnold Kegebein
Zeit/Zeitstempel in FileMaker
• Zeitstempel zählt Sekunden seit 01.01.0001 0:00:00
• Zeit beschreibt eine Dauer
• Nachkommastellen = Sekundenbruchteile
• Genauigkeit: 1/1.000.000 (Millionstel Sekunde)
7. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
Zeit + Datum | Dipl.-Ing. (FH) Arnold Kegebein
Funktionen in FileMaker
• Daten erzeugen: aktuell, generisch, aus Text
• Teileinheiten berechnen
• Umrechnung in anderes Unitsystem
Get( CurrentDate/TimeUTCMilliseconds/HostTimestamp )
Date / Time / Timestamp
GetAsDate / GetAsTime / GetAsTimestamp
Date( 3; 0; 2017 )
Year / Month / Day / Hour / Minute / Second
DayOfWeek / DayOfYear / WeekOfYearFiscal
GetAsDate( TS ) / GetAsTime( TS )
8. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
Zeit + Datum | Dipl.-Ing. (FH) Arnold Kegebein
Datum Suchen – Beispiel
• Suche Geburtstage zwischen 15.10. und 14.12.
• Mehrfachabfrage:
1. Abfrage:
2. Abfrage:
3. Abfrage:
Falsch15.10.*…14.12.*
{15…31}.10.*
*.11.*
{1…14}.12.*
9. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
Zeit + Datum | Dipl.-Ing. (FH) Arnold Kegebein
Datum Suchen – Beispiel
• Suche alle Geburtstage im Oktober
• Funktioniert nicht in allen Ländern (z. B. USA)
• Besser ISO 8601 Format (Y-M-D) verwenden
• In FileMaker: *+10+*
• Automatische Konvertierung in lokale Datumsformate
*.10.*
YYYY+MM+DD
10. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
Zeit + Datum | Dipl.-Ing. (FH) Arnold Kegebein
Zeitreise
11. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
Zeit + Datum | Dipl.-Ing. (FH) Arnold Kegebein
Shakespeare überlebte Cervantes um 10 Tage
† 23.04.1616
William Shakespeare Miguel de Cervantes
† 23.04.1616
† 03.05.1616 greg. Kalender
jul. Kalender
400. Todestag Paradox
12. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
Zeit + Datum | Dipl.-Ing. (FH) Arnold Kegebein
Gregorianischer Kalender
• Unterschiedlicher Zeitpunkt der Übernahme
• 10 nicht-existente Tage:
• 5. - 14. Oktober 1582 (Spanien, …)
• 3. - 13. September 1752 (England, …)
• FileMaker (u. a. Programme):
Fehlerhafte Berechnung des Wochentags
historische Daten
13. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
Zeit + Datum | Dipl.-Ing. (FH) Arnold Kegebein
Julianisches Datum
• Anzahl Tage, die seit dem 1. Jan. −4712 (4713 BC) 12:00 Uhr vergangen sind
• Umgeht typische Kalenderprobleme
• Schaltjahr, unterschiedlich lange Monate, Sommerzeit
• Zeitdarstellung durch Nachkommastellen
• 1 Tag = 86.400 Sekunden
14. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
Zeit + Datum | Dipl.-Ing. (FH) Arnold Kegebein
Probleme mit der Zeit
15. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
Zeit + Datum | Dipl.-Ing. (FH) Arnold Kegebein
Koordinierte Weltzeit (UTC)
• Weltweit einheitliche Zeitskala
• 24 Zeitzonen: Zonenzeit-Korrektur UTC±{0…12}
16. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
Zeit + Datum | Dipl.-Ing. (FH) Arnold Kegebein
Zonenzeit – Formel
• Berechnung mit FileMaker Funktionen
• Get( CurrentTimestamp ) : aktuelle lokale Zeit
• Get( CurrentTimeUTCMilliseconds ) : aktuelle UTC
( Floor( Get( CurrentTimeUTCMilliseconds ) / 1000 )
- GetAsNumber( Get( CurrentTimestamp ) )
) / 3600
17. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
Zeit + Datum | Dipl.-Ing. (FH) Arnold Kegebein
Kalender
18. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
Zeit + Datum | Dipl.-Ing. (FH) Arnold Kegebein
Arbeiten mit Datum und Zeit
• Definitionen
• Zeitpunkt
• Termin
• Event
• Wiederholung
19. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
Zeit + Datum | Dipl.-Ing. (FH) Arnold Kegebein
Definition Zeitpunkt
• Alias: Moment
• Datum + Zeit / Zeitstempel
• Beispiele:
• Frühlingsanfang, Geburtstag, …
20. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
Zeit + Datum | Dipl.-Ing. (FH) Arnold Kegebein
Definition Termin
• Alias: Zeitraum
• Moment + Dauer
oder
• MomentStart + MomentEnde
21. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
Zeit + Datum | Dipl.-Ing. (FH) Arnold Kegebein
Definition Event
• Termin + Referenzdaten
• Ort, Personen, Projekte, Teilnehmer, Ressourcen, …
22. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
Zeit + Datum | Dipl.-Ing. (FH) Arnold Kegebein
Definition Wiederholung
• Moment / Termin / Event + Wiederholungsregel
• Begrenzte und unbegrenzte Wiederholungen
• Einfache Regeln
• Komplexe Regeln
23. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
Zeit + Datum | Dipl.-Ing. (FH) Arnold Kegebein
Termine anzeigen
• Doppelte Bedeutung Kalender
• Sammlung der Termine + Events in der Datenbank
• System zur Anzeige des Jahres mit den eingebetteten Terminen
DATEN DARSTELLUNG↔+≠
24. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
Zeit + Datum | Dipl.-Ing. (FH) Arnold Kegebein
Termine anzeigen
• Kontext
• View
• Detail | Liste | Agenda
• Unit (Range-Raster)
• Jahr-Monat, Jahr-Woche, Monat-Woche,
Monat-Tag, …
• Besondere Darstellungsformate
25. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
Zeit + Datum | Dipl.-Ing. (FH) Arnold Kegebein
Liste | Raster Monat-Tag
26. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
Zeit + Datum | Dipl.-Ing. (FH) Arnold Kegebein
Agenda | Raster Woche-Tag
27. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
Zeit + Datum | Dipl.-Ing. (FH) Arnold Kegebein
Raster Monat-Tag
28. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
Zeit + Datum | Dipl.-Ing. (FH) Arnold Kegebein
Sonderformate
29. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
Zeit + Datum | Dipl.-Ing. (FH) Arnold Kegebein
Sonderformate
30. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
Zeit + Datum | Dipl.-Ing. (FH) Arnold Kegebein
Events auswählen
• Termin muss teilweise innerhalb der Zeitgrenzen liegen
• Event in [ DisplayStart … DisplayEnd ]
• Endewerte sind ausschließende Werte
• Beispiel: [ 01.10.2017 … 01.11.2017 ]
DisplayStart < EventEnd and EventStart < DisplayEnd
31. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
Zeit + Datum | Dipl.-Ing. (FH) Arnold Kegebein
iCalendar
• Datenformat zum Austausch von Kalenderinhalten
• Standard RFC 5545
• Definiert Internet Media Type text/calendar
• Mehrheitlich unterstützt: Google, Android, Outlook, Blackberry, OS/iOS-
Kalender Applikationen
32. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
Zeit + Datum | Dipl.-Ing. (FH) Arnold Kegebein
iCalendar
• Kalender-Komponenten
• Termine VEVENT
Aufgaben VTODO
Journal VJOURNAL
Verfügbarkeit VFREEBUSY
Alarm VALARM
• Description
• Location
• Percent-Complete
• Resources
• Status
• …
33. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
Zeit + Datum | Dipl.-Ing. (FH) Arnold Kegebein
iCalendar – Beispiel
BEGIN:VCALENDAR
VERSION:2.0
PRODID:http://www.example.com/calendarapplication/
METHOD:PUBLISH
BEGIN:VEVENT
UID:461092315540@example.com
ORGANIZER;CN="Alice Balder, Example
Inc.":MAILTO:alice@example.com
LOCATION:Somewhere
SUMMARY:Eine Kurzinfo
DESCRIPTION:Beschreibung des Termines
CLASS:PUBLIC
DTSTART:20170910T220000Z
DTEND:20170919T215900Z
DTSTAMP:20170812T125900Z
END:VEVENT
END:VCALENDAR
34. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
Zeit + Datum | Dipl.-Ing. (FH) Arnold Kegebein
RRULE Komponenten
• Frequenz freq
• Startdatum dtstart
• Intervall interval
• Anzahl count
• Endedatum until
• Sonderangaben wkst, setpos, byday, byweekno, …
35. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
Zeit + Datum | Dipl.-Ing. (FH) Arnold Kegebein
Beispiel
• Jede zweite Woche am Mittwoch für 6 Termine
• INTERVAL=2;
FREQ=WEEKLY;
BYDAY=WE;
COUNT=6
• Drei Werktage vor dem 15. jeden Monats, um 15:00h bis Ende 2018
• FREQ=MONTHLY;
DTSTART=20171012T130000Z;
UNTIL=20181231T000000Z;
BYDAY=MO,TU,WE,TH,FR;
BYMONTHDAY=10,11,12;
BYSETPOS=-1
36. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
Zeit + Datum | Dipl.-Ing. (FH) Arnold Kegebein
Demo rrule.js
• http://jakubroztocil.github.io/rrule/
• Javascript Library
37. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
Zeit + Datum | Dipl.-Ing. (FH) Arnold Kegebein
EXDATE – Ausnahmen
• Liste der ausfallenden Regelwiederholungen
• EXDATE : Ausnahmedaten
• FREQ : Einheit der Frequenz (YEARLY, MONTHLY, WEEKLY, DAILY,
HOURLY, MINUTELY, SECONDLY)
• INTERVAL : Abstände zwischen den Frequenzeinheiten
38. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
Zeit + Datum | Dipl.-Ing. (FH) Arnold Kegebein
Kalenderkomponente
• Event
• To Do
• Journal
• Free/Busy
39. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
Zeit + Datum | Dipl.-Ing. (FH) Arnold Kegebein
Fragen & Antworten
40. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
Zeit + Datum | Dipl.-Ing. (FH) Arnold Kegebein
Vielen Dank unseren Sponsoren