Freitag, 29. Juni 2012

Eindeutige custom ID in einer SharePoint Liste generieren

Aus aktuellem, projektbezogenen ;-) , Anlass musste ich mich (mal wieder) mit dem Thema „eindeutige Ticketnummer in einer SharePoint Liste generieren“ beschäftigen. Gut, man könnte einfach die vom System erzeugte ID nehmen. Der Hauptgrund warum das ausscheidet ist, dass hier keine Ergänzungen, Anpassungen etc. möglich sind.

Die TicketID soll sich wie folgt zusammensetze:  

%Test%|eindeutige Nummer|%Text%

also z.B.: SP12896654DE

Es existieren diverse Lösungsansätze dazu im Netz. Meiner ist das „Create Datum“ zu verwenden und daraus eine eindeutige ID zusammenzusetzte. Die nachfolgende Formel generiert eine ID die auf Sekundenbasis eindeutig ist:

="SP"&TEXT(Created,"yy")&STUNDE(Created)&TAG(Created)&MONAT(Created)&MINUTE(Created)&SEKUNDE(Created)&"DE"

Vorgehen:

Eine neue Spalte anlegen. Der Typ der Spalte muss „Calculated“ sein, Name vergeben, Formel einfügen / anpassen und fertig is.

10 Kommentare:

  1. Ein Szenario funktioniert aber damit nicht, oder? Und zwar die Suche nach dieser Nummer? Das habe ich bis jetzt noch nicht ausprobiert, um ehrlich zu sein...

    AntwortenLöschen
    Antworten
    1. Hi, doch funktioniert, hab´s gerade probiert weil ich mir auch nicht sicher war, ein managed Property draus gemacht und konnte explizit danach suchen, z.B. IDcall:SP1222961849DE

      Löschen
    2. Kann man das nur machen wenn man Sharepoint Admin ist oder kann ich das als Creator der Liste auch irgendwie?

      Löschen
  2. Hallo,

    leider funktioniert das bei mir nicht.

    ="SP"&TEXT(Created,"yy")...Nur bis hier her.

    Da ich eine sp Version in englisch habe, wurden die Wörter übersetzt. Geht leider auch nicht.

    vg, stefaN

    AntwortenLöschen
    Antworten
    1. was genau funktioniert denn nicht?

      Löschen
    2. etwas spät aber ich hab geantwortet

      Löschen
    3. Im O365 Sharepoint bekomme ich da einen Syntaxfehler..leider steht da nicht wo genau dieser fehler ist

      Löschen
  3. probier es damit

    =VERKETTEN("SP"; JAHR([Erstellt]); STUNDE([Erstellt]); TAG([Erstellt]); MONAT([Erstellt]); MINUTE([Erstellt]); SEKUNDE([Erstellt])

    AntwortenLöschen
    Antworten
    1. Hmm, geht das in O365 Sharepoint auch? Ich hab die deutsche und englische Version hier aus dem Vorschlag probiert, beide melden einen Syntaxfehler :(

      Löschen
    2. Ich war blöde..mit der deutschen variante gehts jetzt auch bei mir..der fehler war, die neue Spalte muss vom Typ eine berechnete Spalte sein

      Löschen