SharePointCommunity
Die deutschsprachige Community für SharePoint, Microsoft 365, Teams, Yammer und mit Azure

Sponsored by

Willkommen im Forum Archiv.
Einträge sind hier nicht mehr möglich, aber der Bestand von 12 Jahren SharePoint-Wissen ist hier recherchierbar.




Kalender auf Startseite einer Custom Teamsite

Geprüfte Antwort Dieser Beitrag hat 4 Antworten

Ohne Rang
18 Beiträge
Patrick Weber erstellt 13 Dez. 2011 14:14
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Hallo zusammen,

ich habe ein eigenes Web Template für unsere Teamsites erstellt. Dabei handelt es sich um eine Abwandlung der Standard Teamsite. Die Bereitstellung erfolgt mittels mehrerer Features.

Ich habe die Definition der Listen aus der onet.xml des Templates entfernt und in ein eigenes Web Feature ausgelagert. In einem weiteren Feature wird nun die Startseite der Teamsite definiert. Beides funktioniert auch wunderbar.

Nun möchte ich auf die Startseite neben einigen WebParts und Listen auch die Kalenderliste anzeigen. Das Problem ist, dass der Kalender immer nur als "platte" Liste ausgegeben wird. Die Einträge stehen einfach nur als Liste untereinander. Ich möchte aber, dass der Kalender als "echter" Kalender ausgegeben wird. Es soll genau so aussehen, als wenn ich die Kalenderliste per GUI hinzufüge.

Hat jemand eine Idee, wie ich das realisieren kann? Hier die elements.xml, mit der ich die Startseite bereitstelle:

<?xml version="1.0" encoding="utf-8"?>
<
Elements xmlns="http://schemas.microsoft.com/sharepoint/">
<
Module Name="MyCustomTeamSiteModule" Url="$Resources:osrvcore,List_Pages_UrlName;" Path="TeamSiteTemplateWelcomePage">

<File Url="default.aspx" Type="GhostableInLibrary" >
<
Property Name="Title" Value="$Resources:cmscore,IPPT_HomeWelcomePage_Title;" />
<
Property Name="PublishingPageLayout" Value="~SiteCollection/_catalogs/masterpage/MyBlankWebPartPage.aspx, Customer Page" />
<Property Name="ContentType" Value="MyPortal - MyHomePage" />

<View List="$Resources:core,lists_Folder;/$Resources:core,announce_Folder;" BaseViewID="0"
WebPartZoneID="CenterColumn"
WebPartOrder="0">
</
View>

<View List="$Resources:core,lists_Folder;/$Resources:core,calendar_Folder;"
BaseViewID="0
"
WebPartZoneID="CenterColumn
"
WebPartOrder="1"
>
</
View>

</File>
</
Module>
</
Elements>

Vielen Dank für eure Rückmeldungen

Alle Antworten

Ohne Rang
18 Beiträge
Patrick Weber Als Antwort am 13 Dez. 2011 15:33
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Hallo allerseits,

nachdem ich die letzten Tage wirklich lange nach einer Lösung gesucht habe, habe ich kurz nachdem ich meinem Beitrag erstellt habe hier eine Lösung gefunden: http://snipplr.com/view/52574/

Bisher habe ich in der elements.xml wie oben zu sehen den Kalender wie folgt hinzugefügt:

<View List="$Resources:core,lists_Folder;/$Resources:core,calendar_Folder;"
BaseViewID="0
"
WebPartZoneID="CenterColumn
"
WebPartOrder="1"
>
</
View>

Das erzeugt eine einfache, platte Liste mit den Kalendereinträgen. Damit es nun als Kalender ausgegeben wird, muss dieser wie folgt hinzugefügt werden:

<View List="$Resources:core,lists_Folder;/$Resources:core,calendar_Folder;"
BaseViewID="2"

Type="CALENDAR"

Scope="Recursive
"
RecurrenceRowset="TRUE"

WebPartZoneID="CenterColumn"

WebPartOrder="1"
>
</
View>

Falls es mal jemand gebrauchen kann.

Ohne Rang
19231 Beiträge
Andi Fandrich Als Antwort am 13 Dez. 2011 15:37
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Bei einem Standardkalender sollte BaseViewID="2" helfen.

Viele Grüße
Andi
af @ evocom de
Blog
Ohne Rang
18 Beiträge
Patrick Weber Als Antwort am 13 Dez. 2011 15:49
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Hi,

Danke für die Rückmeldung. Ich habe es jetzt mal ausprobiert. BaseViewID="2" hilft hier nicht. Ich erhalte dann wieder eine einfache Liste. Erst Type="CALENDAR" bewirkt die Darstellung als echter Kalender.

Ich bin mir nicht sicher, ob es sich um einen Standard Kalender handelt. In meinem Template habe ich das Publishing Feature aktiviert und den Kalender in einem eigenen Feature als ListInstance wie folgt erstellt:

<?xml version="1.0" encoding="utf-8"?>
<
Elements xmlns="http://schemas.microsoft.com/sharepoint/">
<ListInstance FeatureId="00BFEA71-EC85-4903-972D-EBE475780106" TemplateType="106" Title="$Resources:core,calendarList;" Url="$Resources:core,lists_Folder;/$Resources:core,calendar_Folder;" QuickLaunchUrl="$Resources:core,lists_Folder;/$Resources:core,calendar_Folder;/Calendar.aspx" />
</Elements>

Ohne Rang
19231 Beiträge
Andi Fandrich Als Antwort am 13 Dez. 2011 16:24
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

[quote user="Patrick Weber"]BaseViewID="2" hilft hier nicht[/quote]

Ich habe die Antwort geschrieben, bevor ich Deine Lösung gesehen habe - und ohne es zu Testen.

[quote user="Patrick Weber"]Ich bin mir nicht sicher, ob es sich um einen Standard Kalender handelt[/quote]

Ich meinte damit eine eigene Listenvorlage. Bei der könnte man ganz andere Views definieren und damit würde die BaseViewID=2 evtl. nicht mehr stimmen.

Du hast ja die Lösung selbst gefunden :-)

Viele Grüße
Andi
af @ evocom de
Blog