Herramienta de búsqueda para programadores gratuita para SharePoint 2010 Search y FAST Search para SharePoint

He estado trabajando en una herramienta para programadores durante varios meses para que les ayude a trabajar con el motor de consultas de SharePoint 2010.  He avanzado bastante, por lo que es probable que pronto esté lista para que algunos compañeros puedan empezar a usarla.  He estado pensando en colocarla en CodePlex, como si fuera más bien un proyecto comunitario, para que otras personas puedan colaborar y mejorar la herramienta, pero todavía no me he dedicado de lleno a esa tarea.

 

En un principio, creé la herramienta como una actualización de la antigua herramienta de consultas de MOSS para SharePoint 2007 (que era, a su vez, una actualización de mi herramienta de consultas original de SharePoint para SharePoint 2003; sí, llevo trabajando en esto todo ese tiempo).  Agregué unas cuantas mejoras a la herramienta de consultas de MOSS anterior, así que en realidad es bastante distinta.  Incluí una pantalla completa destinada solamente a la administración de partes del servicio de búsqueda de la aplicación.  Me harté de tener que ir y volver entre las herramientas de consultas y el explorador para cambiar algunas cosas en el servicio de búsqueda y después ver cuáles eran sus nuevos valores, etc.  Por lo tanto, para solucionar este problema, la primera pantalla que aparece al iniciar la aplicación ofrece mucha información sobre el servicio de búsqueda.  En realidad, se hace clic en un botón para obtener la lista de los servicios de búsqueda, ya que ahora puede tener más de uno, y la herramienta recupera todos los servicios, incluidos los proxy para servicios de búsqueda que consume desde otras granjas de servidores.  Al obtener los detalles de un servicio de búsqueda, se pueden realizar tareas como ver todos los orígenes de contenido, obtener el estado de rastreo u obtener la lista de direcciones de inicio para un origen de contenido en particular.  Se puede iniciar un rastreo completo o incremental desde la propia herramienta y también agregar y/o quitar direcciones de inicio adicionales para un origen de contenido.

 

Esta es una muestra de la pantalla principal de la herramienta; he avanzado un poco la pantalla, por decirlo de alguna manera, para poder mostrar los distintos menús contextuales:

 

En la parte superior de la pantalla, verá información básica sobre la aplicación de búsqueda, que también puede modificar desde la herramienta.  Los elementos de mayor interés seguramente sean el registro de consultas y la habilitación de las sugerencias de consulta.  Hay una sección Keywords and Best Bets (Palabras clave y opciones más probables), para que pueda encontrar fácilmente las opciones más probables que definió en distintas colecciones de sitios y sepa qué esperar de las consultas que ejecuta.  La sección Crawl Rules (Reglas de rastreo) indica todas las reglas de rastreo definidas para la aplicación de búsqueda en caso de que tenga dudas sobre si algún elemento se excluye o se rastrea de forma distinta.  En la sección Propiedades administradas (Managed Properties) puede ver todas las propiedades administradas definidas en la aplicación de búsqueda.  Esta vista muestra solo algunas de las propiedades de cada propiedad administrada (desde esta pantalla, también puede cambiar la opción Usar en ámbitos, Use in Scopes), pero si hace doble clic en una propiedad administrada, aparecerá un cuadro de diálogo independiente con todas sus propiedades.  A continuación, puede cambiar los atributos de la propiedad administrada desde allí.  Este es el aspecto del cuadro de diálogo:

 

 

La sección de ámbitos muestra los distintos ámbitos que se han definido.  También permite ver si aparece en la interfaz de usuario de administración, las páginas de resultados de búsqueda alternativas, etc.  Por último, la sección de la parte inferior de la pantalla muestra las propiedades de contextos de usuario de FAST.  Estas son las propiedades que se pueden usar para crear contextos de usuario para FAST Search para SharePoint,  tal y como lo describí en esta entrada de blog:  http://blogs.technet.com/b/speschka/archive/2009/12/09/using-custom-properties-to-create-a-fast-search-for-sharepoint-2010-user-context.aspx

 

Al hacer clic en la pestaña Consultas (Queries), se pasa a una pantalla que resultará muy conocida para aquellos que han usado la herramienta de consultas de MOSS anteriormente. Allí es donde se pueden crear las consultas para ejecutar en SharePoint o FAST y obtener algunos resultados de la búsqueda.  La pantalla tiene este aspecto:

 

 

De nuevo se muestra una lista de todas las propiedades administradas.  Puede activar la casilla de verificación Incluir (Include) junto a cualquiera de ellas para que se devuelva la propiedad en los resultados de la búsqueda.  Puede escribir criterios de consulta para cualquier propiedad administrada en la columna Criterios (Criteria).  También puede escribir palabras para buscar en cualquier parte de los documentos o elementos en el campo de edición Consulta (Query).  Al igual que antes, en este momento puede hacer clic en el botón Convertir a SQL (Make SQL), para que se cree el SQL que se usa en el servicio web de consultas de SharePoint para ejecutar la consulta.  Al presionar el botón Ejecutar consulta (Run Query), se ejecutará la consulta y aparecerá un nuevo cuadro de diálogo con los resultados.  A continuación se muestra un ejemplo de resultados de la búsqueda:

 

 

En los resultados de la búsqueda aparecen varios elementos importantes.  En la parte superior de la pantalla, podrá ver el XML que se envió al servicio web de consulta para ejecutar la consulta.  Por lo tanto, si usa el modelo de objetos para realizar consultas, puede copiar el SQL directamente desde la ficha Consultas (Queries); si usa el servicio web de búsqueda, puede copiar el XML directamente desde la página de resultados de la búsqueda.  También se muestran todas las coincidencias que se devolvieron para la consulta, por lo que puede comprobar si la misma funciona correctamente.  En la parte inferior de la pantalla, verá algunos datos adicionales devueltos (suponiendo que eligió ver los resultados como un conjunto de datos y no como XML).  La cuadrícula Opciones más probables (Best Bets) de la izquierda muestra las opciones más probables visuales de FAST.  La cuadrícula Términos especiales (Special Terms) del centro muestra las opciones más probables que se agregaron a colecciones de sitios para la búsqueda de SharePoint.  Por último, la cuadrícula Refinamientos (Refinements) de la derecha muestra los refinamientos que se devolvieron en la consulta; esto solo funciona cuando se realizan consultas en FAST y se activa la casilla de verificación Incluir refinamientos (Include Refinements) en la ficha Consultas (Queries).

 

La adición de compatibilidad con admisión del lenguaje de consulta FAST (FQL) es la mejora más importante que se incorporó a la herramienta de consultas de MOSS.  FAST no admite la sintaxis SQL de SharePoint Search, por lo que está limitado a realizar consultas de palabras clave o de FQL con una aplicación de búsquedas basada en FAST.  Las consultas de palabras clave deberían ser bastante sencillas, pero FQL es una experiencia nueva para la mayoría de los que usamos SharePoint.  Para avanzar en la curva de aprendizaje, la ficha Consultas (Queries) incluye una lista desplegable Select FQL... (Seleccionar FQL...)  Esta lista contiene varios ejemplos de consultas FQL.  Es una manera fácil para observar cláusulas FQL y opciones coincidentes distintas, y probarlas para ver las acciones que se pueden realizar en FQL.  También incluí un vínculo encima de esta lista, que conduce a la ayuda sobre la sintaxis FQL en MSDN.  Por lo tanto, si prueba varias opciones de FQL de la lista desplegable y no está seguro de cómo funcionan, haga clic en el vínculo para ir a la ayuda de FQL y obtener más información.  A continuación se muestra un ejemplo de un resultado simple de la búsqueda de FQL, que incluye también algunos refinamientos:

 

 

En resumen, eso es más o menos todo; al menos debería ser suficiente para empezar a trabajar y pensar en cómo puede usar la herramienta.  Si sirve de algo, siempre me pareció que esta herramienta y la herramienta de consultas de MOSS son muy útiles.  No solo para realizar mi propio desarrollo de búsqueda personalizada, sino también para solucionar supuestos problemas de búsqueda en una granja de servidores.  No hay nada mejor que abrir esta pequeña herramienta y ejecutar todo tipo de consultas personalizadas que me ayuden a encontrar el lugar exacto donde creo que está el problema.  He agregado un archivo ZIP como datos adjuntos a la entrada de blog, que contiene los archivos que necesita para comenzar a usar la herramienta.  Si tiene alguna sugerencia de funciones que le gustaría ver, escriba un comentario.  Como dije antes, si está interesado en que coloque la herramienta en CodePlex para que otros trabajen en ella (porque yo, honestamente, estoy cansado de trabajar en ella), también lo puedo hacer.  Espero que la disfrute.

 

Actualización del 20 de agosto de 2010:  se agregó compatibilidad con la creación y administración de propiedades asignadas.  No tenía sentido no incluirlo en la primera versión, ya que es una de las tareas más comunes que se realizan con el desarrollo de búsqueda personalizada.  También se agregó compatibilidad con la actualización del estado de rastreo para un origen de contenido.  Por lo tanto, ahora puede ver lo que ocurre cuando inicia un rastreo.

Actualización del 22 de agosto de 2010:  se agregó compatibilidad con la exportación de todos los atributos de una propiedad administrada a un archivo XML, de modo que puede revisarlo sin conexión.  También se agregó compatibilidad con la importación desde el archivo de formato XML, de modo que puede copiar la manera en que se configura una propiedad administrada a otra propiedad administrada.

 

Esta entrada de blog es una traducción. Puede consultar el artículo original en Free Developer Search Tool for SharePoint 2010 Search and FAST Search for SharePoint