17.8.1.5 Recherche de document contenu dans une collection
La classe SearchDoc
permet de faire des recherches dans une
collection spécifique (dossier ou recherche) au moyen de la méthode
SearchDoc::useCollection()
.
Cette recherche n'est pas récursive par défaut, c'est à dire qu'elle ne recherche que dans la collection indiquée.
Lorsque la collection est un dossier, il est possible de faire des recherches
récursives à l'aide de la méthode
DocSearch::setRecursiveSearch()
. Le niveau de profondeur
de la recherche est ensuite défini au moyen de la propriété
DocSearch::folderRecursiveLevel
, positionné à 2 par défaut.
Note : Le setRecursiveSearch
fait référence au niveau de récursivité. par
exemple, folderRecursiveLevel=0
veut dire que l'on recherche dans le dossier,
alors que folderRecursiveLevel=1
indique de rechercher dans le dossier et ses
sous-dossiers.
Lorsque la collection est une recherche, il n'est pas possible de faire la recherche récursivement.
$dirid=2345; // identifiant d'un document recherche $searchDoc = new SearchDoc(); $searchDoc->setObjectReturn(); $searchDoc->useCollection($dirid); $searchDoc->search(); if ($searchDoc->searchError()) { $action->exitError(sprintf("search error : %s",$searchDoc->getError())); }