Hallo,
wie kann ich ermitteln wie lange ein Objekt (Ein Ticket) exestiert
und dann in Zope ausgeben.
Beim Einlegen von Tickets wird die Zeit automatisch gespeichert.
Normalerweise soll die aktuelle Zeit mit der Zei vergliechen werden, wann der Ticket angelegt wurde und dann die Differenz ausgegeben werden. Aber irgendwie funktionirt das nicht.
Vielen Dank im Voraus.
Alexander Kunstmann
Dauer
-
- User
- Beiträge: 69
- Registriert: Donnerstag 29. August 2002, 17:10
- Wohnort: Erfurt
- Kontaktdaten:
Einfach Zeiten von einander subtrahieren
Falls du's als Tuple (sprich Sekunden, Minuten, Stunden...) willst, musst du es noch umwandeln:
Allerdings macht das dumme Dinge dann noch "1.1.1970" (und die lokale Sommerzeit dazu), falls man das auch noch raushaben will muss man halt die Einzelnen Elemente des tuples der Epochensekunde 0 (time.localtime(0)) abziehen, allerdings ist das nur auf Tage genau
Code: Alles auswählen
bla = time.mktime(Zeit)-time.mktime(date)
Code: Alles auswählen
time.localtime(bla)
Hallo,
klappt leider nicht ganz. Kann vielleich jemand sagen was ich falsch mache.
Der Python Script:
ende = Stoerungsende(id)
anfang = Erstellungsdatum(id)
date_hum_ende = DateTime(ende)
date_epo_ende = date_hum_ende.timeTime()
date_hum_anfang = DateTime(anfang)
date_epo_anfang = date_hum_anfang.timeTime()
date_diff_epo = date_epo_ende - date_epo_anfang
dauer = (date_diff_epo / 86400)
print "%0.2f" % (dauer)
return printed
Der Aufruf in Zope:
<TR align=center width=10 bgcolor="#CC3300">
<TD ROWSPAN=4>
<P ALIGN=CENTER>
<dtml-var id>
<dtml-var Intern>
<dtml-var expr="Dauer(_['sequence-item'].getId()">
</P>
</TD>
Bekomme immer Fehlermeldung:
Error Value: global name 'Stoerungsende' is not defined
Danke.
Alex
klappt leider nicht ganz. Kann vielleich jemand sagen was ich falsch mache.
Der Python Script:
ende = Stoerungsende(id)
anfang = Erstellungsdatum(id)
date_hum_ende = DateTime(ende)
date_epo_ende = date_hum_ende.timeTime()
date_hum_anfang = DateTime(anfang)
date_epo_anfang = date_hum_anfang.timeTime()
date_diff_epo = date_epo_ende - date_epo_anfang
dauer = (date_diff_epo / 86400)
print "%0.2f" % (dauer)
return printed
Der Aufruf in Zope:
<TR align=center width=10 bgcolor="#CC3300">
<TD ROWSPAN=4>
<P ALIGN=CENTER>
<dtml-var id>
<dtml-var Intern>
<dtml-var expr="Dauer(_['sequence-item'].getId()">
</P>
</TD>
Bekomme immer Fehlermeldung:
Error Value: global name 'Stoerungsende' is not defined
Danke.
Alex