Posts mit dem Label ListTemplate werden angezeigt. Alle Posts anzeigen
Posts mit dem Label ListTemplate werden angezeigt. Alle Posts anzeigen

Freitag, 10. September 2010

Short tip: missing BaseType in ListTemplate...

...leads to an error-message like this:

GetUserListSchema(): Failed to initialize list properties from the list schema XML for feature '{287a98fc-9404-488d-90ae-b1a67d309cca}', template '10009': hr=0x80004005.    c6487200-188d-4f97-a104-731949084550
09/10/2010 11:17:03.41     w3wp.exe (0x0D74)                           0x0264    SharePoint Foundation             General                           8l2r    High        Failed to find the list schema for FeatureId '{287a98fc-9404-488d-90ae-b1a67d309cca}', list template ID 10009.  Cannot create list in web "..." at URL "(null)".    c6487200-188d-4f97-a104-731949084550

So before checking folder-structure in 14-Hive or analysing your VS2010-Package structure for the assumed missing schema.xml first check your ListTemplate for an existing BaseType="0"-entry.

Donnerstag, 30. Juli 2009

Listeninstanzen - Cannot complete this action

Werden bei einer Solution ListInstances verwendet und sollen dann an speziell diese Listen CustomActions angehängt werden, empfiehlt es sich, anstelle der Standard-TemplateTypes (100, 101, etc..) eigene IDs ab 10000 zu verwenden.

Diese Änderung muss aber überall nachgezogen werden, sonst kommt es beim Erstellen der SiteCollection schnell zu der nichts sagenden Fehlermeldung "Cannot complete this action".



Die TemplateType-ID muss angepasst werden in
  • CustomAction
  • ListInstance
  • ListTemplate
  • Schema.xml

Dienstag, 7. Oktober 2008

Listeninstanzen in Solutions vorbefüllen

Bisher haben wir Listen, die per Solutions installiert werden und von Haus aus über Werte verfügen sollten mit Hilfe von FeatureReceivern befüllt. Da es sich dabei um eine Vielzahl von Listen mit mehreren Spalten handelte, bot es sich an, das ganze über eine Befüll-Methode abzuarbeiten, die ihre Daten aus den entsprechenden Settings-Dateien beziehen.

Nun arbeite ich aktuell aber an einem sehr kleinen Projekt welches derartigen Aufwand nicht gerechtfertigt: im Rootweb wird eine Liste mit vier einzelnen Einträgen benötigt, die sich nicht mehr ändern werden.

Diese Werte werden nun einer ListInstance mitgegeben:


<?xml version="1.0" encoding="utf-8" ?>
<Elements xmlns="http://schemas.microsoft.com/sharepoint/">
<!-- PicklistRole -->
<ListInstance FeatureId="39fba828-57af-4c1f-ba42-19cc13e8ad99"
TemplateType="100"
Id="PicklistRoleList"
Title="$Resources:root_lists,picklistRoleInstanceTitle;"
Description="$Resources:root_lists,picklistRoleInstanceDescription;"
OnQuickLaunch="FALSE"
Url="$Resources:core,lists_Folder;/Picklist Rolle">
<Data>
<Rows>
<Row>
<Field Name="Title">Projektmanager</Field>
</Row>
<Row>
<Field Name="Title">Technischer Leiter</Field>
</Row>
<Row>
<Field Name="Title">Entwickler</Field>
</Row>
<Row>
<Field Name="Title">Projektassistenz</Field>
</Row>
</Rows>
</Data>
</ListInstance>
</Elements>


Diese ListInstance wird im Feature eingebunden welches dann über die WebFeatures-Sektion der onet.xml aktiviert wird und daraufhin die Liste mitsamt den Einträgen bereitstellt:

Freitag, 11. Juli 2008

Beschreibungen der Attribute der Solution-Bestandteile

Der Blog von André Vala bietet sehr sehr nützliche Informationen zu den einzelnen Teilen einer Solution, z.B. alles über ListInstanzen, ListTemplate-Features, ContentType-Features, SiteColumn-Features inklusive einer Beschreibung der wichtigen XML-Tag-Attribute.

List Instance Features
List Template Features
Site Content Type Features
Site Column Features