La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Extensibilidad en las tecnologías de Búsqueda de SharePoint Portal Server 2003 César de la Torre Software Architect [Microsoft MVP] [MCSE] [MCT] Renacimiento.

Presentaciones similares


Presentación del tema: "Extensibilidad en las tecnologías de Búsqueda de SharePoint Portal Server 2003 César de la Torre Software Architect [Microsoft MVP] [MCSE] [MCT] Renacimiento."— Transcripción de la presentación:

1 Extensibilidad en las tecnologías de Búsqueda de SharePoint Portal Server 2003 César de la Torre Software Architect [Microsoft MVP] [MCSE] [MCT] Renacimiento ctorre@renacimiento.com

2 Comparación de Tecnologías de Búsqueda Microsoft Windows SharePoint Services for Microsoft Window Server 2003 Microsoft Office SharePoint Portal Server 2003 Se basa en SQL Server Full-Text Search No disponible con WMSDE Utiliza un buscador específico de SharePoint Portal Server Interfaz mas rico Alcances múltiples Limitado a un solo sítio Las alertas estén limitadas a un sitio Se centra en elementos de listas Añadir/modificar/borrar eventos Distribución solamente por Email Sistema de agregación de múltiples sitios, portales y fuentes externas Las Alertas se centran mas en las areas y sitios personales Muchas mas opciones de configuración Distribución de alertas por Email y WebParts

3 Extensibilidad en la Búsqueda Uso del Buscador de SharePoint Portal Server desde otras aplicaciones Web-Service Query de SharePoint Portal Server Modelo de Objetos Extender la Búsqueda de SharePoint Portal Server para Indexar otros tipos de contenidos: IFilter, IProtocolHandler, IWordbreaker, IStemmer Modificar el Interfaz de Usuario por defecto del Buscador Componentes custom de búsqueda Web-Part de resultados de Búsqueda Hecho p.e. en el Portal en Mis Documentos Personalización de la página de resultados

4 Servicio Query de SharePoint Portal Server Funciones Query Acepta Query XML Definido por el namespace urn:Microsoft.Search.Query Devuelve Response XML Definido por el namespace urn:Microsoft.Search.Response QueryEx Acepta Query XML Definido por el namespace urn:Microsoft.Search.Query Devuelve resultados de búsqueda como DataSets

5 Servicio Query de SharePoint Portal Server Funciones Registro Definido por el namespace urn:Microsoft.Search.Registration Devuelve el nombre de un portal/sitio SPSGetPortalSearchInfo Devuelve una lista de los alcances de búsqueda y catálogos Status Devuelve un código de éxito indicando si el proveedor de búsqueda está disponible

6 Aplicación ASP.NET que utiliza los componentes de Búsqueda de SPS-2003 (1)

7 Aplicación ASP.NET que utiliza los componentes de Búsqueda de SPS-2003 (2)

8 Aplicación ASP.NET que utiliza los componentes de Búsqueda de SPS-2003 (3)

9 Aplicación ASP.NET que utiliza los componentes de Búsqueda de SPS-2003 (4)

10 Aplicación ASP.NET ADO.NET – B.D. (5)

11 Servicio Query de SharePoint Portal Server Funciones Añadir Web-Reference Servicio-Web en http:// /_vti_bin/search.asmx Autenticar Formular y mandar una query

12 Servicio Query de SharePoint Portal Server Sintaxis SQL de SharePoint Portal Server Search Ayuda sobre la sintaxis Microsoft SharePoint Portal Server 2001 SDK Gestión de Propiedades de Contenido Indexado Gestión de Fuentes de Contenido SPSGetPortalSearchInfo() Clase SPSQueryServiceConst SELECT, WHERE, CONTAINS

13 Servicio Query de SharePoint Portal Server Sintaxis SQL de SharePoint Portal Server Search QueryText Pointers QueryText type='STRING Returns results with some Research Task Pane intelligent formatting QueryText type='MSSQLFT Query() returns 2 columns regardless of query DAV:DisplayName, DAV:href SELECT must contain urn:schemas.microsoft.com:fulltextqueryinfo:sdid

14 Desarrollo de un Cliente de Prueba contra el WebService Query de SharePoint Portal Server

15 Panel de Tareas de Búsqueda y Referencias Resumen Panel de Taréas de aplicaciones Microsoft Office System Permite a los usuarios hacer búsquedas en las fuentes de SPS Se podría desarrollar algo similar en otras aplicaciones Proporciona contenido rico y Formularios

16 Panel de Tareas de Búsqueda y Referencias Compatibilidad con el Servicio de Query de SharePoint Portal Server Función de Registro Función de Query Response XML

17 Extender SharePoint Portal Server para Indexar otros Contenidos Visión global de la Arquitectura Herramientas sobre las que desarrollar Protocol Handlers Filters Word Breakers

18 Características de Búsqueda Escalabilidad Desde ~ 5 M Docs a ~ 20 M Docs Consultas cruzadas a catálogos, consultas balanceadas (NLB) Muy importante para escenarios Empresariales Servicios de Portales Compartidos Agregación de Contenido Ranking de Relevancia Probabilística Notificaciones/Alertas, Asistente de Temas Crawling Adaptavivo Tecnología común de búsqueda a lo largo de la oferta de productos Microsoft

19 Filters y Protocol Handlers Las capacidades de indexación de SharePoint Portal Server puede extenderse mediante el desarrollo de Protocol Handlers e IFilters Los Protocol Handlers se usan para extender las capacidades de indexación de SPS hacia otras fuentes de contenido. Los IFilters se usan generalmente para indexar tipos específicos de ficheros Este tipo de desarrollo es a bajo nivel; se tiene que hacer en COM y C++ Desarrollo de componentes COM, resultando en una.DLL P.e. desarrollo con VC.NET para desarrollar estos componentes COM – Es una ayuda C++ con atributos, pero en cualquier caso, NO es Código manejado (por el CLR)

20 Estructura de la Búsqueda

21 Protocol Handler General Features Registers with gatherer Connects to external content source Collects data from external content source Binds to content in external content source & streams back to gatherer Obtains metadata and security information on external content source and sends back to gatherer Sends LCID info to gatherer where appropriate.

22 Protocol Handlers proporcionados por Microsoft Microsoft Search Service proporciona varios out-of-the-box file:// http:// Exchange Profiles / Active Directory B.D. Lotus Notes Sitios y Portales SharePoint

23 Características generales de IFilter Extiende los tipos de ficheros que se pueden indexar También basado en COM, el resultado final es una.DLL Extrae propiedades internas de los ficheros así como de su contenido Los IFilters se pueden usar con cualquier vehículo Microsoft Search, no solamente con SharePoint Portal Server 2003: SPS-2001 Microsoft Windows SQL Server Microsoft Exchange Server

24 IFilters proporcionados por Microsoft Microsoft Search Service proporciona los siguientes IFilters directamente: Todos los formatos Office System TIFF XML IFilters de terceras partes PDF CAD (.dwg)

25 Personalización del interfaz gráfico de Búsqueda Resumen Personalización Ajuste del interfaz proporcionado (Out-of-Box) Extensibilidad Web-Part SearchResults Crear un Web-Part de Búsqueda nuevo, personalizado Crear un Menú Nuevo de Búsqueda

26 Web-Pats de Búsqueda de SharePoint Portal Server Ver en siguiente slide ;-)

27 Caja Búsqueda Menú Búsqueda Búsqueda Avanzada Resultados Búsqueda

28 Web-Part de Resultado de Búsquedas Personalizar mediante las propiedades de Web-Part Número de elementos a devolver Texto a mostrar cuando se cumple la condición de No hay resultados Ancho de columnas

29 Cómo Personalizar el WebPart de Búsqueda

30 Web-Part de Resultado de Búsquedas Personalizar más mediante el fichero DWP Llamar a la página con: http://MiServidor/Search.aspx?Mode=Edit&PageView=Shared Exporta el WebPart de Resultado de Búsqueda

31 Web-Part de Resultado de Búsquedas – Propiedades del fichero DWP ResultListID FixLayout GroupByList DefaultGroupBy SortByList DefaultSortBy ColumnURIs ColumnWidths TextForNoResults RowNumberForEachItem EnableQueryLoggingSearch SupportExpandCollapseAll EnableSQLCommandLogging ColumnDisplayNames OpenNewWindowForMatchingItems ShowRankForEachItem MaxMatchingItemsNumber

32 Search Results Web Part - DWP Important properties for customizing the search query: QueryTemplateSelectPart QueryTemplateFromPart QueryTemplateWherePart QueryTemplateOrderByPart

33 Cómo añadir soporte para Búsquedas con wildcards

34 Extender la página de Búsqueda con componentes propios NOTA: A partir de este punto, los cambios que se hagan puede que no (y probablemente no) estén soportados por MS (Soporte de Microsoft)

35 Página de Web-Parts de Búsqueda Página Ghosted C:\Program Files\Common Files\Microsoft Shared\web server extensions\60\TEMPLATE\{LCID}\SPS Controles en el fichero de Code Behind RightBodySectionSearchBox SearchResultManagement EditModeSettingsLink Y mas …

36 Optional DEMO Show the Code behind file and the different Web controls used

37 Search Result Web Part Column 0 Column 1Column 2Column 3 Row 0 Row 1 Row 2 Row 3 The Icon can be overridden with the GenerateHtmlForItemIcon function The different Columns can have a heading by overriding the GenerateHtmlForRowColumn function Each row can be overridden by using the GenerateHtmlOneRowForOneItem

38 Adding a new option to open the SharePoint list itself, not the list item

39 Limits – the Advanced Search Web Part It isnt possible to: Add new property groups Add new controls Change the layout Add new operations

40 Working Together Search Menu Search Box Advanced Search Search Result JavaScript (Search.js and in HTML) Hidden Fields

41 Creating a New Advanced Search Web Part CustomViewState SearchPageData SearchConstructor

42 Creating a New Advanced Search Web Part - SearchPageData Get Properties using Microsoft.SharePoint.Portal.Schema; PortalContext ctx = PortalContext.Current; PropertyDefinitionCollection defCol = new PropertyDefinitionCollection( ctx, false ); foreach(PropertyDefinition def in defCol ) { ….. }

43 Creating a New Advanced Search Web Part - SearchPageData Get Scopes using Microsoft.SharePoint.Portal.Search.ObjectModel; SearchScopes PortalSearchScopes = new SearchScopes(ctx); SearchScope scope; int i = 0 ; while(PortalSearchScopes.GetAllScopes().Length>i) { scope = PortalSearchScopes.GetSearchScope( PortalSearchScopes.GetAllScopes()[i].Name); SearchScopeEntity[] scopeEntities = scope.GetEntities(); for(int ii=0; ii<scopeEntities.Length; ii++) { if(scopeEntities[ii].Type == 1) { Debug.WriteLine(scopeEntities[ii].Value); } i += 1; }

44 Creating a New Search Menu JavaScript Functions Onshd OnToggleAllGroups OnPinSearch OnSubscribeSearch TooleMgmtAdv

45 Creating a New Search Menu Adding the menu items //add Show Less / Show More actionButton = new ToolBarButton(); actionToolbar.Controls.Add(actionButton); actionButton.ID = TargedID + "_ShowLessMore"; actionButton.AllowScriptInUrl = true; actionButton.Enabled = IsEnabled(); actionButton.ToolTip = "Show less or more"; actionButton.AccessKey = "m"; actionButton.NavigateUrl = "javascript:Onshd('" + TargedID + "', 'a','" + actionButton.UniqueID + "', 'Show Less', 'Show More');"; actionButton.Text = IsShowMore()?"Show Less":"Show More";

46 Installing the Custom Search Web Part samples

47 Resumen Búsqueda Potente Posibilidad de realizar búsquedas por diferentes apps. clientes Personalizable y Extensible con muchas opciones a diferentes niveles


Descargar ppt "Extensibilidad en las tecnologías de Búsqueda de SharePoint Portal Server 2003 César de la Torre Software Architect [Microsoft MVP] [MCSE] [MCT] Renacimiento."

Presentaciones similares


Anuncios Google