kannengi
Elite Observer

Zeitstempel immer auf volle Sekunden gerundet?

Jump to solution

Hallo,

ich benutze versteckte CMS_INPUT_DATE Eingabefelder mit preset="created" um "unique IDs" zu erzeugen.

So wie hier beschrieben:

Re: Unique IDs bei verschachtelten FS_CATALOG

Ich muss dazu sagen, dass es sich um Datensätze handelt.

Bei der Ausgabe benutze ich die Millisekundenausgabe, also $CMS_VALUE(#row.created.timeInMillis)$

Jetzt sehe ich aber, dass alle generierten Zeitstempel immmer mit "000" enden, d.h. die Zeitpunkte sind anscheinend immer auf volle Sekunden gerundet?

Kann ich das irgendwie ändern und die Genauigkeit von Millisekunden haben, um wirklich unique IDs zu erzeugen?

Danke und Gruß,

Benny Kannengießer

// re-lounge.com

0 Kudos
1 Solution

Accepted Solutions

Hallo Benny,

in “normalen inneren Absätzen“ gibt es diese "Rundung" jedenfalls nicht. Du kannst testweise mal eine neue Spalte vom Typ „FirstSpirit Editor” erstellen und die EK darauf mappen.

Wobei Du eigentlich auch die Datensatz-GID (nicht die FS-ID!) nehmen könntest, die ist ja für genau solche Dinge wie ContentTransport eingeführt worden.

Viele Grüße

Michael

View solution in original post

0 Kudos
4 Replies
mbergmann
Crownpeak employee

Hallo Benny,

auf was für eine Spalte (Typ) ist das Feld denn gemappt? Falls es „date“ ist: Das ist soweit ich es im Kopf habe ein timestamp, kann sein dass die Genauigkeit hier nur auf Sekunden geht.

Wobei es im referenzierten Posting ja um unique IDs für innere Elemente ging. „Äußere“ Elemente (wie Seiten, Absätze und auch Datensätze) haben ja von Natur aus eigene IDs, so dass hier dieser “Workaround“ gar nicht nötig sein sollte.

Viele Grüße

Michael

0 Kudos

Hallo Michael,

stimmt, das Feld ist auf den "Date"-Typ gemappt. Es liegt also am Mapping auf den nativen Typ der unterliegenden DB, dass Genauigkeit verloren geht?

Mein use-case ist nicht der im referenzierten Posting beschriebene, sondern es geht mir um die Erzeugung von so einer Art  "Natural Primary Keys", die unabhängig von der Datenbank sind und deshalb auch so Sachen wie Content Transport, DB Umzug etc. überstehen.

Bei Sekundengenauigkeit könnte es ev. doppelt vergebene Zeitstempel geben.

Gibt es einen Workaround, mit dem ich die Millisekunden doch kriegen könnte?

Danke und Gruß,

Benny

0 Kudos

Hallo Benny,

in “normalen inneren Absätzen“ gibt es diese "Rundung" jedenfalls nicht. Du kannst testweise mal eine neue Spalte vom Typ „FirstSpirit Editor” erstellen und die EK darauf mappen.

Wobei Du eigentlich auch die Datensatz-GID (nicht die FS-ID!) nehmen könntest, die ist ja für genau solche Dinge wie ContentTransport eingeführt worden.

Viele Grüße

Michael

0 Kudos

Ok, danke für den Hinweis.

Ich habe jetzt mal den Datentyp "long" genommen und siehe da, jetzt habe ich auch die Millisekunden.

Da long platzsparender als der FS-Editor ist, lasse ich das jetzt so.

Danke und Gruß,

Benny

0 Kudos