AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Tabellenfeld DATE Problem (BC, nur Jahreszahl..)
Thema durchsuchen
Ansicht
Themen-Optionen

Tabellenfeld DATE Problem (BC, nur Jahreszahl..)

Ein Thema von NoGAD · begonnen am 10. Apr 2021 · letzter Beitrag vom 11. Apr 2021
Antwort Antwort
Benutzerbild von NoGAD
NoGAD

Registriert seit: 31. Jan 2006
Ort: Weimar
345 Beiträge
 
Delphi 10.4 Sydney
 
#1

AW: Tabellenfeld DATE Problem (BC, nur Jahreszahl..)

  Alt 10. Apr 2021, 10:15
Das klingt phantastisch. Diese Idee gefällt mir gut, ich werde das so übernehmen

Lieben Dank und ein schönes Wochenende!

Mathias
Mathias
  Mit Zitat antworten Zitat
Benutzerbild von Billa
Billa

Registriert seit: 11. Aug 2003
238 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#2

AW: Tabellenfeld DATE Problem (BC, nur Jahreszahl..)

  Alt 10. Apr 2021, 11:27
Und wenn Du dann diesen Unterschied auch noch eliminieren willst, "verschiebst" Du den Integerwert des künstlichen Datums noch um X Jahre nach "hinten". Umrechnen musst Du eventuell für die Darstellung sowieso, sparst Dir aber eine unterschiedliche Behandlung (und das Tabellenfeld) von "vor und nach Christus".
Für den Offset X reichen vermutlich ungefähr 1000 aus. Für schriftliche Quellen sind mir keine älteren Daten bekannt. (Archäologen mögen mich korrigieren)
Gruß Billa

Nur weil ich paranoid bin, heißt das nicht, daß die da draussen nicht hinter mir her sind....
  Mit Zitat antworten Zitat
Delphi.Narium

Registriert seit: 27. Nov 2017
2.558 Beiträge
 
Delphi 7 Professional
 
#3

AW: Tabellenfeld DATE Problem (BC, nur Jahreszahl..)

  Alt 10. Apr 2021, 12:01
Und wenn Du dann diesen Unterschied auch noch eliminieren willst, "verschiebst" Du den Integerwert des künstlichen Datums noch um X Jahre nach "hinten". Umrechnen musst Du eventuell für die Darstellung sowieso, sparst Dir aber eine unterschiedliche Behandlung (und das Tabellenfeld) von "vor und nach Christus".
Für den Offset X reichen vermutlich ungefähr 1000 aus. Für schriftliche Quellen sind mir keine älteren Daten bekannt. (Archäologen mögen mich korrigieren)
Das Feld "vor und nach Christus" ist in meinem Beispiel nur zur Verdeutlichung, es wird nicht benötigt.
Die Darstellung kommt aus dem Feld Datum, da kann beliebige Prosa drinne stehe, eben auch ein Datum in gewohnter Formatierung. Das ist aber kein muss.

Beim ollen Pythagoras könnte da auch 570 BC oder 570 v. Chr. oder ca. 570 v. Chr. oder vermutlich um 570 v. Chr. drinne stehen, dass hat auf die Sortierung per Sortierdatum keinerlei Einfluss. Und bei Zahlen, die größer oder kleiner als Null sein können, finde ich es einfach naheliegend, mit positiven und negativen Zahlen zu arbeiten, da braucht mein keinen Offset oder irgendeine Umrechnung oder Vermutungen, welcher Offset nach momentanem Kenntnisstand ausreichend sein könnte ...
Vom Urknall bis, wer weiß, was die Zukunft bringen wird, kann man halt auf einer Zeitachse jedes Jahr, egal von welchem Planeten man das Jahr als Maßstab nimmt, von minus ∞ bis plus ∞ darstellen (allenfalls könnte Integer da ein bisserl zu klein für sein ). Nix anderes passiert bei meinem Vorschlag.

Geändert von Delphi.Narium (10. Apr 2021 um 22:49 Uhr) Grund: Schreibfehler
  Mit Zitat antworten Zitat
Benutzerbild von haentschman
haentschman

Registriert seit: 24. Okt 2006
Ort: Seifhennersdorf / Sachsen
5.436 Beiträge
 
Delphi 12 Athens
 
#4

AW: Tabellenfeld DATE Problem (BC, nur Jahreszahl..)

  Alt 10. Apr 2021, 14:51
Moin...

UnixDatetime = ganzzahlig = jede Sekunde seit 01.01.1970
https://www.delphipraxis.net/26033-u...tdatetime.html
https://www.delphipraxis.net/196625-...zurueck-2.html

Für die Daten ohne Datum einen beliebigen Wert definieren (erste Sekunde oder letzte Sekunde oder Time <> 0 z.B.). Damit kann man in einer Funktion unterscheiden ob Datum oder Jahreswert...

fertsch...

PS:

Geändert von haentschman (10. Apr 2021 um 14:59 Uhr)
  Mit Zitat antworten Zitat
Delphi.Narium

Registriert seit: 27. Nov 2017
2.558 Beiträge
 
Delphi 7 Professional
 
#5

AW: Tabellenfeld DATE Problem (BC, nur Jahreszahl..)

  Alt 10. Apr 2021, 15:14
UnixDatetime hat den Nachteil, dass man damit keine Datumswerte von vor Christi Geburt abbilden kann. 1970 beginnt bereits für Christi Geburt ca. 1970 Jahre zu spät oder ca. 62.125.920.000 Sekunden (ohne Berücksichtigung von Schaltjahren und der Kalenderreformierung von 1542). Für das Geburtsdatum des Herrn Pythagoras wären das dann schon etwa 80.101.440.000 Sekunden, also grob pro Einwohner der Bundesrepublik eine Sekunde. Gut, eine Sekunde pro Einwohner klingt jetzt nicht unbedingt viel, aber für den lieben Pythagoras ist das doch schon 'ne ganze Menge

Das Problem in der Aufgabenstellung ist nun mal, dass man unvollständige Datumsangaben nicht als vollständige Datumsangaben abbilden kann, da ist es egal ob UnixDateTime ab dem 01.01.1970 in Sekunden oder TDateTime ab 30.12.1899 in Tagen nicht funktioniert.

Man braucht halt 'ne funktionierende Alternative Und die scheint mir mit beliebigen Datumstypen nicht realisierbar. Alle haben eins gemein: Sie können unvollständige Datumswerte nicht unvollständig abbilden. Man muss die unvollständigen Datumswerte immer zu vollständigen Datumswerten ergänzen, mit der Folge, dass die unvollständigen und die vollständigen Datumswerte nicht mehr übereinstimmen

Geändert von Delphi.Narium (10. Apr 2021 um 22:46 Uhr) Grund: Schreibfehler
  Mit Zitat antworten Zitat
Benutzerbild von NoGAD
NoGAD

Registriert seit: 31. Jan 2006
Ort: Weimar
345 Beiträge
 
Delphi 10.4 Sydney
 
#6

AW: Tabellenfeld DATE Problem (BC, nur Jahreszahl..)

  Alt 10. Apr 2021, 22:03
Vielen Dank euch allen

Ich schließe mich gedanklich an Delphi.Narium an.
Mathias
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:12 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz