Attivazione funzionalità di SharePoint: il valore non rientra nell'intervallo previsto
-
06-07-2019 - |
Domanda
Ho iniziato a scrivere una semplice funzione per creare una colonna del sito e un tipo di contenuto. Se provo ad attivare la funzionalità in quanto tale, mi dà l'errore Il valore non rientra nell'intervallo previsto e niente di più utile. Se rimuovo il tag ContentType, la funzione si attiva bene e posso vedere la colonna del sito Account appena creata. Hai idea di quale sia l'errore con ContentType?
<?xml version="1.0" encoding="utf-8" ?>
<Elements xmlns="http://schemas.microsoft.com/sharepoint/">
<Field
ID="{345C9562-F0D9-4327-853B-5072E296823A}"
Name="Account"
DisplayName="Account"
Type="Text"
Group="Accounts">
</Field>
<ContentType
ID="0X010100"
Name="Account Doc"
Description="Account Doc"
Version="0"
Group="Account Types">
<FieldRefs>
<FieldRef
ID="{345C9562-F0D9-4327-853B-5072E296823A}"
Name="Account"
DisplayName="Account" />
</FieldRefs>
</ContentType>
</Elements>
Soluzione
Si scopre che SharePoint non era soddisfatto del 00 finale nell'attributo ID del tag ContentType. Il passaggio a 01 ha risolto il problema o l'aggiunta di un GUID alla fine anche dopo lo 00 ha funzionato:
<ContentType
ID="0x010100C8813FB7C4814B44BA7FD679120EF6F5"
Name="Account Doc"
Description="Account Doc"
Version="0"
Group="Account Types">
<FieldRefs>
<FieldRef
ID="{345C9562-F0D9-4327-853B-5072E296823A}"
Name="Account"
DisplayName="Account" />
</FieldRefs>
</ContentType>
Altri suggerimenti
Potrebbe essere la "X" maiuscola nel tuo ID tipo di contenuto? Quelli incorporati sono minuscoli, quindi potrebbe essere qualcosa da guardare.
I log del server ti danno qualche indizio su ciò che SharePoint sta cercando ma non riesci a trovare qui?
Ho avuto un messaggio di errore simile quando ho usato un GUID generato in cui avevo dimenticato di rimuovere i trattini da (ovvero usando 0x0100042061F1-2366-45d8-A7DE-5B5078E87080 invece di 0x0100042061F1236645d8A7DE5B5078E87080)
Per ulteriori informazioni sugli ID dei tipi di contenuto, consultare l'SDK di WSS 3.0 o questo articolo MSDN: http://msdn.microsoft.com/en-us/library/aa543822.aspx
Nel mio caso, avevo un tipo di contenuto semplice basato sul tipo di attività con un campo personalizzato aggiuntivo. La distribuzione di vsewss è un tale hack che non è stato possibile impacchettare o distribuire la soluzione. Dal momento che è una distribuzione così semplice, ho appena scritto un file batch con i comandi stsadm per farlo.
Esempi di file batch per l'installazione di funzioni sono disponibili nella pagina MVP di andrew connell. Hai appena rimuovere e ricreare la directory per la funzione nella directory delle funzioni sp (12 hive \ template \ features \) copiare la funzione e manifestare i file lì cd alla directory 12 hive \ bin stsadm -o activeceature -filename \ feature.xml -force stsadm -o activateature -filename \ feature.xml -url iisreset
Questo non è ancora fallito. Non posso dire lo stesso per vsewss o qualsiasi altra utilità di pacchetto di where-ever-plex