SP2010 – Configurer Search Server avec PowerShell – Part 3

Posted on Updated on

Et enfin… la troisième partie !

La première partie expliquant comment créer des sources de contenu se trouve ici : https://kazoumoulox.wordpress.com/2011/10/06/confsearchpowershell-part1/

La seconde partie expliquant comment créer les étendues personnalisées, des des propriétés gérées se trouve ici : https://kazoumoulox.wordpress.com/2012/01/17/confsearchpowershell-part2/

Cette troisième partie permettra d’ajouter des règles d’inclusion/exclusion dans l’étendue personnalisée en utilisant les propriété gérées de la partie 2.

Rappelons-nous tout d’abord dans quel état était notre ferme SharePoint 2010. Nous avons créé le service de recherche de SharePoint, créé une source de contenu, une étendue personnalisée, une propriété gérée pointant sur la propriété indexée Type de Contenu des enregistrements SharePoint (Document ou Items). Bien sûr le tout à l’aide du Management Shell de SharePoint !

L’objectif est presque rempli… il nous reste toutefois quelques petites choses à faire !

Vous en souvenez peut-être, mais voici l’état dans lequel nous avons laissé l’étendue personnalisée après nos précédentes et trépidantes aventures :

Nous avons une étendue avec une seule règle, celle limitant les résultats inclus dans la source de contenu “Nouvelle Source”. Nous allons donc en ajouter une nouvelle qui sera cette fois-ci requise et limitera les résultats aux documents et enregistrements dont le type de contenu est “Demande de congés” (qui a été au préalable déclaré dans une collection de sites inclue dans la source de contenu).

Première étape (si ce n’est déjà fait), lancer le Management Shell pour SharePoint 2010, depuis le menu Démarrer > Tous les programmes > Microsoft SharePoint 2010 Products > SharePoint 2010 Management Shell :

Ensuite, il faut récupérer l’instance du service de recherche avec la ligne (Entre les quotes, c’est le nom de l’application de service qui a été créée dans les précédents articles):

  • $searchapp = Get-SPEnterpriseSearchServiceApplication “Service de Recherche de SharePoint 2010 créé par Powershell”
Puis récupérer l’étendue personnalisée avec :
  • $MyScope = GetSPEnterpriseSearchQueryScope -SearchApplication $searchapp -Identity “Première Etendue en PowerShell”
  • $MyScope
Nous avons déja vu, dans la partie 2 qu’il fallait utiliser le cmdlet New-SPEnterpriseSearchQueryScopeRule pour ajouter une nouvelle règle à une étendue personnalisée. On reprend donc cette commande :
  • New-SPEnterpriseSearchQueryScopeRule -RuleType PropertyQuery -ManagedProperty ContentTypeForSearch2 -PropertyValue “Demande de congés” -FilterBehavior Require  -scope $MyScope -SearchApplication $searchapp -url http://labs-sp2010/
Voici le résultat dans SharePoint :
Nous avons donc bien créé une nouvelle règle requise, utilisant la propriété gérée ContentTypeForSearch2 (=”Demande de congés”).
Mais pour le moment, il y a 0 éléments remontés… peut être parce qu’il n’y a pas de demande de congés déposées ! …
Dernière opération, lancer la mise à jour des étendues, pour cela, rien de plus simple !
  • $searchapp.StartScopesCompilation()

Cette commande lance la compilation comme on peut le voir dans l’administration centrale de SharePoint :

Et à la fin de la mise à jour :

Donc tout à l’air prêt… y’a plus qu’à tester ! Pour cela je vais ajouter quelques documents utilisant le type de contenu “Demande de congés” dans une bibliothèque de documents de la collection de sites http://labs-sp2010/.

Il faudra bien sûr relancer l’indexation du contenu (incrémentielle ou complète) et vérifier que l’étendue personnalisée contient bien nos documents. Allez c’est parti ! (ça sent la fin ;))

 

Une fois quelques documents ajoutés, il faut bien sûr relancer une indexation (complète pour ma part) afin que le composant crawler (indexeur) parcoure ces documents et indexe le contenu & les méta-données du document… et en particulier notre type de contenu !

Après donc quelques minutes/heures d’indexation, alors voir dans notre nouvelle étendue combien de documents ont été indexés avec le type de contenu souhaité :

 

 

Les données sont donc bien indexée et l’on retrouve nos documents ajoutés dans l’étendue de recherche de SharePoint. Cette étendue pourra alors être utilisée soit dans la liste déroulante des étendues juste devant la searchbox (barre de recherche des sites SharePoint) soit dans les centres de recherche (SharePoint 2010 Server Editions Standard ou Enterprise) et permettront de filtrer à priori ou à posteriori les données. Ces filtres amélioreront l’expérience utilisateur avec le moteur de recherche et leur permettront de trouver plus rapidement les documents recherchés au travers du moteur de recherche de SharePoint.

Cette suite d’articles est donc terminée, en espérant avoir été clair, concis et efficace. Je recherche des sujets pour mes prochains posts… donc si vous avez des idées, laissez moi un message !

Advertisements

One thought on “SP2010 – Configurer Search Server avec PowerShell – Part 3

    Sylvain Dauthieux said:
    12 April 2012 at 15:11

    GG ^^
    Je suis en train de tester…

    @+

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s