cgicorner.ch

Informationen rund um Perl/CGI

Sie sind hier: Home > Forum
Yet Another Bulletin Board

Willkommen, Gast. Bitte Einloggen oder Registrieren.
21. Oktober 2021 um 04:14

Übersicht Übersicht Hilfe Hilfe Suche Suche Mitglieder Mitglieder Einloggen Einloggen Registrieren Registrieren
cgicorner.ch « Import in Cal - viele Termine auf einmal erfassen »


   cgicorner.ch
   Hilfe
   cal

   Import in Cal - viele Termine auf einmal erfassen
« Vorheriges Thema | Nächstes Thema »
Seiten: 1  Antworten Antworten Bei Antworten benachrichtigen Bei Antworten benachrichtigen Drucken Drucken
   Autor  Thema: Import in Cal - viele Termine auf einmal erfassen  (Gelesen 11503 mal)
dementi
YaBB Newbie
*



I love YaBB 1G - SP1!

   


Beiträge: 6
Import in Cal - viele Termine auf einmal erfassen
« am: 25. November 2009 um 15:29 »
Zitieren Zitieren Bearbeiten Bearbeiten

Hallo!
Ich habe nun auch meine ersten Versuche mit Cal hinter mir und nicht zuletzt dank der hilfreichen Antworten hier im Forum, alles soweit konfiguriert, wie es sein soll.
 
Da ich ca. einmal im Vierteljahr eine große Anzahl von Terminen zu erfassen habe, würde ich dies gerne ohne den "Umweg" des einzelnen Erfassens erledigen, also am besten direkt in die textbasierte Cal.dat eintragen. Wie stell ich das an, bzw. in welchem Format müssen Datum und Uhrzeit eingetragen werden? Der Rest ist ja in Klarschrift angelegt und somit leicht einzutragen.
 
Vielen Dank vorab für alle hilfreichen Hinweise!
gespeichert
cgicorner.ch
YaBB Administrator
*****




Board Admin

   
Homepage E-Mail

Geschlecht: male
Beiträge: 790
Re: Import in Cal - viele Termine auf einmal erfas
« Antworten #1 am: 25. November 2009 um 20:20 »
Zitieren Zitieren Bearbeiten Bearbeiten

Hallo Dementi
 
Die cal.dat ist - wie du schon richtig bemerkt hast - eine Textdatei. Trennzeichen sind Tabulatoren, Felder sind:
- ID
- Startzeit
- Endzeit
- Titel
- Text
- Passwort (für User-Edit)
- Kategorie (CSS-Klasse)
 
Die ID muss eine eindeutige Zahl sein (bei mir Timestamp der Erstellung), Start und Ende sind Unix-Timestamps (vergangene Sekunden seit 1. Januar 1970).
 
Unter http://www.cgicorner.ch/cgi-bin/tools/timeconv.cgi findest du ein Umrechnungsscript, mit Excel kriegst du es auch hin:
 
Timestamp (Timestamp in A1) --> Zeit: =DATUM(1970;1;1)+(A1/24/60/60)
Zeit --> Timestamp (Datum in A1, Zeit in B1): =((A1-DATUM(1970;1;1))+B1)*60*60*24
 
Du musst allenfalls mit der Zeitzone etwas rumspielen und ggf. eine Stunde (3600 Sekunden) resp. 2 Stunden (7200 Sekunden) addieren.
 
Ich hoffe diese Infos helfen dir weiter, dass du die Einträge automatisiert erfassen kannst. Müsste eigentlich keine Hexerei sein.
 
Gruss
Jürg
 
PS: Zeilenumbrüche im Detailtext müssen übrigens als §§ geschrieben werden. Es gilt zwingend: eine Zeile = ein Eintrag.
gespeichert

cgicorner.ch - Informationen rund um Perl/CGI
Jürg Sommer
dementi
YaBB Newbie
*



I love YaBB 1G - SP1!

   


Beiträge: 6
Re: Import in Cal - viele Termine auf einmal erfas
« Antworten #2 am: 08. Dezember 2009 um 16:52 »
Zitieren Zitieren Bearbeiten Bearbeiten

Hallo Jürg!
 
Vielen Dank für die superschnelle und hilfreiche Antwort!
Ich muss mich entschuldigen, ich bin Aufgrund von anderen Arbeiten und Erkältung erst am Wochenende dazu gekommen etwas herumzuprobieren.
 
Hier meine Erkenntinisse, die vielleicht dem einen oder der anderen ebenfalls die Arbeit erleichtern. Ich habe den Weg über eine Excel-Tabelle gewählt, in der ich Zeit und Datum in UNIX-Zeit umrechnen lasse.
 
Spalten der Tabelle:
A = Startdatum mit Uhrzeit
B = Enddatum mit Uhrzeit
C = ID
D = Start UNIX-Zeit
E = Ende UNIX-Zeit
F = Event
G = Details
H = Kategorie
 
D bis H werden dann später exportiert.
 
Für die Startzeit verwende ich folgende Formel:  
Code:
D1=((A1-25569)*24*60*60)-3600

Wobei D1 die Zelle ist, in der ich die UNIXzeit berechne. Die Zelle A1 mit der "Kalenderdatum" ist im Format "01.01.2010 20:00" formatiert. Die -3600 dienen der Zeitzonenkorrektur auf dem verwendeten Web-Server.
 
Bei der Endzeit ist es etwas komplizierter, da ich auch Termine ohne Enzeit habe. Gibt man diese ohne Endzeit über das Adminfrontend ein so wird als Zeit "Datum 23:59:00" gesetzt. Das wollte ich nicht per Hand machen, sondern lieber einfach die Endzeit in B1 leerlassen und dann entsprechend berechnen lassen.  
 
Code:
E1=WENN(B1>0;((B1-25569)*86400)-3600;((RUNDEN(D1/(86400);0))*86400)-3660 )

 
Die restlichen Spalten lassen sich ja einfach befüllen. Auch Links funktionieren problemlos. Um einen Link am Ende unter den Text zu stellen habe ich dem Link einfach noch ein <br>
 
Code:
<br><a href="http://www.meineseite.de/weitereinfos.html" target="_blank">Weitere Infos</a>

 
Jetzt habe ich noch ein paar Probleme bei der Integration in die Website, aber das passt Inhaltlich nicht hier her und erfordert ein neues Thema.
 
Aber zunächst nochmals vielen Dank für die Hilfe und das tolle Tool!
gespeichert
Seiten: 1  Antworten Antworten Bei Antworten benachrichtigen Bei Antworten benachrichtigen Drucken Drucken

« Vorheriges Thema | Nächstes Thema »

cgicorner.ch » Powered by YaBB 1 Gold - SP3!
YaBB © 2000-2004. All Rights Reserved.