Extensibilidad en las tecnologas de Bsqueda de SharePoint Portal Server 2003 - PowerPoint PPT Presentation

1 / 25
About This Presentation
Title:

Extensibilidad en las tecnologas de Bsqueda de SharePoint Portal Server 2003

Description:

Sistema de agregaci n de m ltiples sitios, portales y fuentes externas. Las Alertas se centran mas en las areas y ... Collects data from external content source ... – PowerPoint PPT presentation

Number of Views:46
Avg rating:3.0/5.0
Slides: 26
Provided by: mikefitz
Category:

less

Transcript and Presenter's Notes

Title: Extensibilidad en las tecnologas de Bsqueda de SharePoint Portal Server 2003


1
Extensibilidad en las tecnologías de Búsquedade
SharePoint Portal Server 2003
César de la Torre Software Architect Microsoft
MVP MCSE MCT Renacimiento ctorre_at_renacimiento
.com
2
Comparación de Tecnologías de Búsqueda
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
ServerFunciones
  • Query
  • Acepta Query XML
  • Definido por el namespace urnMicrosoft.Search.Que
    ry
  • Devuelve Response XML
  • Definido por el namespace urnMicrosoft.Search.Res
    ponse
  • QueryEx
  • Acepta Query XML
  • Definido por el namespace urnMicrosoft.Search.Que
    ry
  • Devuelve resultados de búsqueda como DataSets

5
Servicio Query de SharePoint Portal
ServerFunciones
  • Registro
  • Definido por el namespace urnMicrosoft.Search.Reg
    istration
  • 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
ServerFunciones
  • Añadir Web-Reference
  • Servicio-Web en http//ltportalgt/_vti_bin/search.as
    mx
  • Autenticar
  • Formular y mandar una query

12
Servicio Query de SharePoint Portal
ServerSintaxis 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
ServerSintaxis 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
  • DAVDisplayName, DAVhref
  • SELECT must contain urnschemas.microsoft.comfull
    textqueryinfosdid

14
Desarrollo de un Cliente de Prueba contra el
WebService Query de SharePoint Portal Server
15
Panel de Tareas de Búsqueda y ReferenciasResumen
  • 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
demo
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?ModeEditPageViewS
    hared
  • 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
demo
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\SP
    S
  • 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
The different Columns can have a heading by
overriding the GenerateHtmlForRowColumn function
Column 0
Column 1
Column 2
Column 3
Row 0
Row 1
Row 2
Row 3
Each row can be overridden by using the
GenerateHtmlOneRowForOneItem
The Icon can be overridden with the
GenerateHtmlForItemIcon function
38
Adding a new option to open the SharePoint list
itself, not the list item
demo
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 Box
Search Menu
Advanced Search
Search Result
JavaScript (Search.js and in HTML)
Hidden Fields
41
Creating a New Advanced Search Web Part
SearchConstructor
CustomViewState
SearchPageData
42
Creating a New Advanced Search Web Part -
SearchPageData
  • Get Properties

using Microsoft.SharePoint.Portal.Schema PortalCo
ntext ctx PortalContext.Current PropertyDefini
tionCollection defCol new PropertyDefinitionCo
llection( ctx, false ) foreach(PropertyDefinitio
n def in defCol ) ..
43
Creating a New Advanced Search Web Part -
SearchPageData
  • Get Scopes

using Microsoft.SharePoint.Portal.Search.ObjectMo
del SearchScopes PortalSearchScopes new
SearchScopes(ctx) SearchScope scope int i 0
while(PortalSearchScopes.GetAllScopes().Length
gti) scope PortalSearchScopes.GetSearchSc
ope( PortalSearchScopes.GetAllScopes()i
.Name) SearchScopeEntity scopeEntities
scope.GetEntities() for(int ii0
iiltscopeEntities.Length ii)
if(scopeEntitiesii.Type 1)
Debug.WriteLine(scopeEntitiesii.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(action
Button) actionButton.ID TargedID
"_ShowLessMore" actionButton.AllowScriptInUrl
true actionButton.Enabled IsEnabled() actionBu
tton.ToolTip "Show less or more" actionButton.A
ccessKey "m" actionButton.NavigateUrl
"javascriptOnshd('" TargedID "', 'a','"
actionButton.UniqueID "', 'Show Less', 'Show
More')" actionButton.Text IsShowMore()?"Show
Less""Show More"
46
Installing the Custom Search Web Part samples
demo
47
Resumen
  • Búsqueda Potente
  • Posibilidad de realizar búsquedas por diferentes
    apps. clientes
  • Personalizable y Extensible con muchas opciones a
    diferentes niveles
Write a Comment
User Comments (0)
About PowerShow.com