Om te werken rond een KPI-probleem Schreef ik over hier, Ik heb een aantal testen en ontdekte dat KPI's werk tegen mappen met metagegevens op dezelfde manier dat zij tegen documenten werken of lijstitems. Ik bleek het uit door het creëren van een nieuw inhoudstype gebaseerd op het inhoudstype van de map en vervolgens een paar velden toegevoegd. Ik sommige indicatoren gemaakt en bewezen bij mezelf dat KPI's werken zoals verwacht. Dit was welkom nieuws. Het is niet perfect, omdat de DrillDown u van krijgen is de KPI tegen de mappen niet precies wat je wilt. Dit is niet te veel een nadeel in mijn geval omdat 1) de eind-de gebruikers weet niet beter en 2) de drill-down gaat naar een map. Ze klikt u op de mapnaam en ze zijn op het item. Het is twee keer klikken in plaats van een, dat is niet het einde van de wereld.
Dit stroomde mooi met het werk dat ik deed. Ik ben het creëren van een map voor elk document dat wordt geüpload. Dit wordt gedaan via een gebeurtenis ontvanger. Als een resultaat, het is een fluitje van een cent te houden de bovenliggende map meta-gegevens in sync met de KPI-gedreven meta-gegevens uit het bestand zelf want het sanitair al in plaats is. Hierdoor kan ik mijn KPI's hebben en ze ook opeten
Ik wijzigde de ontvanger van de gebeurtenis om de map toevoegen en stel deze nieuwe map inhoudstype aan mijn aangepaste KPI-vriendelijke inhoudstype. Dit codefragment did naar de truc:
SPFolderCollection srcFolders = targetWeb.GetFolder("Documenten").Submappen; SPFolder addedFolder = srcFolders.Add(Eigenschappen.ListItem.ID.ToString());
SPContentTypeId kpiCT = Nieuw SPContentTypeId("0x0120002A666CAA9176DC4AA8CBAA9DC6B4039F"); addedFolder.Item["Content Type ID"] = kpiCT; addedFolder.Item.Update();
Om de werkelijke inhoudstype-ID zoeken, Ik benaderd dat inhoudstype via site-instellingen en kopie/plak deze via de URL zoals:
</einde>