SharePoint ContentType ‘Event’ adaptieren

Wer schon einmal einen Kalender in SharePoint erstellt oder von diesem abgeleitet hat, der wird zwangsläufig auf Spalten wie “Ganztägiges Ereignis” oder “Serie” gestoßen sein. Diese Spalten sind auf ‘Sealed’ gesetzt, sodass diese Websitespalten nicht adaptierbar sind. Darüber hinaus kann man die Spalten auch nicht so einfach ausblenden.

 image

Ich hatte nun die “triviale” Anforderung den Standardwert von der Spalte “Ganztägiges Ereignis” zu ändern. Es gibt dazu mehrere Lösungsansätze, u.a. kann man einen programmatischen Ansatz wählen, den ich hier gefunden habe.

Ich habe die entsprechende Schema.xml des Event Templates geändert. Allerdings bin ich über einen Fallstrick gestolpert: Ich dachte, dass ich den Defaultwert auf True setzen muss. Das ist allerdings falsch! Hier muss 1 eingegeben werden.

 

Anleitung:

Navigiert in das Templates Verzeichnis eurer SharePoint Installation (bei SharePoint Foundation 2010 Deutsch ist dies %programfiles%\Common files\Microsoft Shared\Web Server Extensions\14\Template). Dort navigiert ihr in FEATURES –> EventsList –> Events. Hier liegt die schema.xml Datei. Passt das XML dort wie folgt an (die eigentliche Änderung steht in Zeile 2):

   1: <Field ID="{7d95d1f4-f5fd-4a70-90cd-b35abc9b5bc8}" Type="AllDayEvent" Name="fAllDayEvent" DisplaceOnUpgrade="TRUE" DisplayName="$Resources:core,All_Day_Event;" Sealed="FALSE" SourceID="http://schemas.microsoft.com/sharepoint/v3" StaticName="fAllDayEvent">

   2:   <Default>1</Default>

   3:   <FieldRefs>

   4:     <FieldRef Name="EventDate" RefType="StartDate" />

   5:     <FieldRef Name="EndDate" RefType="EndDate" />

   6:     <FieldRef Name="TimeZone" RefType="TimeZone" />

   7:     <FieldRef Name="XMLTZone" RefType="XMLTZone" />

   8:   </FieldRefs>

   9: </Field>

Danach führt ihr noch über die Kommandozeile den Befehl “iisreset” aus. Fertig! Von nun an ist bei einem neuen Kalendereintrag der Wert “Ganztägiges Ereignis” aktiviert.

2 thoughts on “SharePoint ContentType ‘Event’ adaptieren

  1. Olaf Didszun 3. Januar 2011 um 21:44 Reply

    Der beschriebene Weg führt zwar zum Ziel, damit sind Listen, die auf diesem Template aufbauen von Microsoft aber nicht mehr supported, da Dateien aus dem SharePoint-Paket modifiziert wurden. Der richtige Weg wäre gewesen, ein neues Feature anzulegen, die betreffenden Dateien aus dem Events-Feature zu kopieren, die ID des List-Templates und des Inhaltstypes zu modifizieren und dann die gewünschen Änderungen zu machen.

    Grüße

    Olaf

    Gefällt mir

Schreibe einen Kommentar

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

Verbinde mit %s

%d Bloggern gefällt das: