Siox Posted January 21, 2018 Posted January 21, 2018 Ich habe mir gerade die Tabelle [recordedList] angeschaut und werde aus den Spalten nicht so recht schlau. Was geben denn die beiden Spalten DateAdded und Duration an. Oder besser gefragt: Wie berechnet man aus diesen Spalten für Menschen korrekte Werte? <?xml version="1.0" encoding="utf-8" ?> <table> <row> <IDRECORD>1</IDRECORD> <CHANNEL>Phoenix</CHANNEL> <DATEADDED>3521261849728</DATEADDED> <DURATION>5400000</DURATION> <TITLE>Verzockt, verloren, verstaatlicht ...</TITLE> <INFO>Was kostet uns die Hypo Real Estate?</INFO> </row> <row> <IDRECORD>2</IDRECORD> <CHANNEL>ZDF HD</CHANNEL> <DATEADDED>3521261849868</DATEADDED> <DURATION>6300000</DURATION> <TITLE>Terra X</TITLE> <INFO>Superbauten - Schloss Neuschwanstein</INFO> </row> <row> <IDRECORD>3</IDRECORD> <CHANNEL>Phoenix</CHANNEL> <DATEADDED>3521261849931</DATEADDED> <DURATION>44100000</DURATION> <TITLE>VOR ORT</TITLE> <INFO></INFO> </row> </table> Quote
Griga Posted January 21, 2018 Posted January 21, 2018 DateAdded ist die Anzahl Millisekunden seit dem 30.12.1899 (d.h. 0 = 30.12.1899 00.00 Uhr). Duration ist die Dauer in Millisekunden. Der Wert bei der dritten Aufnahme (44100000 = 735 Minuten, mehr als 12 Stunden) kommt mir allerdings recht groß vor. Kann das sein? Wie auch immer: Ich würde nicht viel Zeit in die Tabelle recordedlist (AKA Aufnahme-Historie) investieren, das sie ab dem nächsten DMS Release durch ein neues System abgelöst wird. Sie wird zwar aus Kompatibilitätsgründen noch in der DB verbleiben, aber nicht mehr mit neuen Einträgen bestückt. Quote
Siox Posted January 22, 2018 Author Posted January 22, 2018 (edited) Ja das mit 12h kann schon fast hinkommen. Phoenix vor Ort ist nicht immer Zeitgenau. Und eigentlich nimmt man sowas nur auf, wenn wirklich was los ist. Eine andere Frage: Das Datenbankdiagramm habe ich aus diesem Post: Klick. Sollte man da aktuell generell die Finger von lassen, oder betrifft das nur einige Datenbanken/Tabellen? Edited January 22, 2018 by Siox Quote
Griga Posted January 24, 2018 Posted January 24, 2018 On 22.1.2018 at 3:55 PM, Siox said: Sollte man da aktuell generell die Finger von lassen? Du meinst die Datenbanken generell? Eigentlich nicht. Speziell bei der Aufnahmedatenbank wird es im nächsten Release die besagte Änderung geben, d.h. die Tabelle recordedlist wird an Bedeutung verlieren. In anderen Tabellen gibt es zur Zeit nur (kompatible) Ergänzungen, also zusätzliche hinten angehängte Spalten. Allerdings kann ich nicht ausschließen, dass es in Zukunft zu einer allgemeinen größeren Umstrukturierung der Datenbanken kommt. Wer dann in Skripten oder Add-Ons direkt auf die Tabellen zugreift, wird Anpassungen vornehmen müssen. BTW: Wenn du dich weiter mit den DBs befassen willst, ist der SQLite Browser empfehlenswert, mit dem du die .db3-Dateien im Konfigurationsordner\Database öffnen und die Strukturen und den Inhalt anzeigen lassen kannst. Quote
Siox Posted January 26, 2018 Author Posted January 26, 2018 Hallo Griga, danke für deine Antwort. Da Software immer lebt, ist mit Änderungen zu rechnen. Ich hatte mir die historischen Aufnahmen nur deswegen vorgenommen, weil es für mich am leichtesten schien. Quasi zum reintasten über die sql.html. Das ich um den SQLite Browser nicht herumkomme ist mir schon klar. Aktuell geht es mir vordergründig auch nur um die Aufnahmen, später um alle (Media)Bibliotheken. Denn ich erkenne richtig Potential die Daten (im eigenen Heim) einzusetzen. Da sich meine Arbeit aber noch in den Kinderschuhen befindet, möchte ich darauf aktuell nicht weiter eingehen. Danke für deine Hilfe, hat mir sehr geholfen. Ich stelle die Arbeit mit den historischen Aufnahmen erst einmal nach hinten. Quote
janee Posted January 28, 2018 Posted January 28, 2018 (edited) Am 21.1.2018 um 18:46 schrieb Siox: <DURATION>5400000</DURATION> 540000 / 1000 ==> 5400 Sekunden 5400 Sekunden / 60 ==> 90 Minuten 90 Minuten /60 ==> 1,5 Stunden Jetzt wirds komplizierter: Der Wert DATEADDED bezieht sich auf das Referenzdatum 31.12.1899 0:00 Uhr. Unten eine Konverterfunktion in C#. <DATEADDED>3521261849728</DATEADDED> private static DateTime DelphiTimeStampToDateTime(long delphiTimeStamp) { System.DateTime dtDateTime = new DateTime(1899, 12, 31, 0, 0, 0, 0, System.DateTimeKind.Utc); dtDateTime = dtDateTime.AddMilliseconds(delphiTimeStamp); return dtDateTime; } Edited January 28, 2018 by janee Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.