cgoIT/contao-calendar-ical-bundle

Fehler beim Import einer CSV

Closed this issue · 8 comments

hinzke commented

Ich bekomme beim Import folgende Fehlermeldung:

Datum ist so angeben: %d.%m.%Y
Uhrzeit so: %H:%i

An exception occurred while executing 'INSERT INTO tl_calendar_events (`tstamp`, `pid`, `published`, `author`, `startDate`, `startTime`, `endDate`, `endTime`, `title`, `teaser`, `addTime`, `source`) VALUES (1673521935, '10', 1, '1', 1673391600, '16:30', 1673391600, 1673391600, 'allgemeiner Dienst', 'Feuerwehrhaus Ortschaft', 1, 'default')': SQLSTATE[01000]: Warning: 1265 Data truncated for column 'startTime' at row 1

Was mache ich falsch?

cgoIT commented

Hi,
das kann ich so noch nicht sagen. Aber der Zeitstempel für die Startzeit sieht sehr komisch aus. Welche Version der Erweiterung verwendest du? Welche PHP und welche Contao-Version? Die Starttime müsste eigentlich 1673451000 sein (wenn damit der 11.01.2023, 16.30 Uhr MEZ gemeint war)
siehe auch https://www.unixtimestamp.com/

hinzke commented

Moin, vielen dank für die schnelle Antwort.

Ja, das Datum sollte der 11.01.2023 16:30 sein

Der Datensatz der Importiert werden soll sieht so aus:
StartDatum;Start;Ende;Title;Ort
22.02.2023;16:30;18:00;Sonderdienst 12 Felderball;Feuerwehrhaus Ortschaft
25.01.2023;16:30;18:00;Aufgaben der Feuerwehr;Feuerwehrhaus Ortschaft

PHP 7.4 wird zur Zeit noch verwendet.
Contao 4.9.37
Modulversion: 4.4.6

cgoIT commented

Ok, ich geben zu, dass ich noch nie eine CSV-Datei importiert habe. Hab die Erweiterung ja selbst nur "übernommen". Ich schaue mir das mal an. Die Beispieldatei hilft sehr. Danke!
Kann allerdings nächste Woche werden. Ich bin diese Woche ziemlich Land unter... :(

cgoIT commented

Hi, ich habe mir das mal mit deiner CSV-Datei in einer frisch aufgesetzten Demo-Installation angesehen. Allerdings mit Contao 4.23. Sollte aber keinen Unterschied machen.
Der einzige Unterschied ist, dass ich als Zeitformat '%H:%M' genommen habe. Kannst du das bitte einmal ausprobieren?

hinzke commented

Moin, vielen dank. Das geht tatsächlich.

Ist das große "M" gewollt, da dieses oft für die Ausgabe der ersten drei Buchstaben des Monats verwendet wird.

https://www.php.net/manual/de/datetime.format.php

cgoIT commented

Hi, intern wird da noch die Funktion strptime verwendet. Die nutzt die Formatangaben von strftime (https://www.php.net/manual/de/function.strftime.php). Muss vermutlich demnächst mal umgebaut werden... :S

cgoIT commented

Ich habe in der Version 4.4.7 das auf die Funktion https://www.php.net/manual/en/datetimeimmutable.createfromformat.php umgebaut. Somit können/müssen für den CSV-Import die gleichen Platzhalter wie in den allg. Contao-Einstellungen verwendet werden.

hinzke commented

Vielen Dank. Funzt Prima!