Post on 09-Aug-2015
description
transcript
Sharepoint 2013 de principio a fin
Gustavo Vélez
Juan Carlos González
Fabián Imaz
SHAREPOINT 2013 DE PRINCIPIO A FIN
DERECHOS RESERVADOS © 2013, respecto a la primera edición en español, por Krasis Consulting, S. L.
www.Krasis.com
ISBN: 978-84-939659-9-0
CREATIVIDAD: Diseño cubierta: Pablo Iglesias Francisco
Fruta cubierta: El “Kiwano” o “melón africano espinudo” es una especie de planta con flor de la misma familia de los melones y pepinos, Cucurbitaceae. Es cultivada por su fruto comestible de forma de un melón ovalado y con espinas que parecen cuernos, de gusto exótico, entre kiwi y el plátano cuando se consume con azúcar y cuando se consume como ensalada es parecido al pepino pero más refrescante. El fruto, que se vuelve amarillo cuando madura, es usado como decoración en arreglos de mesa.
iii
Agradecimientos
Una nueva versión de SharePoint, y un nuevo libro. Sigo pensando que, como decía
en los agradecimientos del libro sobre la versión 2010, escribir un libro es toda una
experiencia, y un libro sobre SharePoint es una gran experiencia. Esta vez la
colaboración ha sido de nuevo muy fructífera con profesionales de la calidad de Juan
Carlos y Fabián. Y de nuevo me doy cuenta que escribir un libro sigue siendo una
experiencia solitaria, pues es necesario pasar días y días luchando con el computador y
contigo mismo para entender cómo funcionan las cosas y tratar de explicarlas en un
lenguaje claro y conciso.
SharePoint es aun para mí una forma de vida más que algunas líneas de código.
Pero también, SharePoint me ha permitido recorrer el mundo y tomar contacto con
innumerables personas. Muchas gracias a mis compañeros en esta aventura, José
Manuel, Juan Carlos y Fabián y a todas las personas que han hecho posible este libro.
Gustavo Velez
En junio de 2012 la frase de moda en España era “no hay dos sin tres”, incluso
alguien compuso una canción al respecto. Lo mismo que pasó con España, campeona
de Europa tras ganar a Italia en la final, ha pasado con este libro tras unos meses de
duro trabajo y lucha que hemos compartido mis compañeros de aventuras (Fabián y
Gustavo) y yo. Al igual que pasó con la versión 2010, el camino ha sido largo, y con
alguna que otra piedra por el camino que entre los tres hemos esquivado hábilmente;
pero la cosecha ha sido abundante y de gran calidad, mejorando notablemente la
anterior. Por eso, me gustaría agradecer en primer lugar a mis colegas Gustavo y
Fabián todo el esfuerzo, saber hacer y tiempo invertido que ha permitido concluir
felizmente el camino que iniciamos allá por el mes de julio de 2012 cuando Microsoft
nos sorprendió con la versión preview de SharePoint 2013.
Como siempre, no puedo olvidarme de todas las personas que me rodean, me
motivan, me apoyan en mí día a día y sobre todo me perdonan que no les dedique todo
el tiempo y atención que se merecen: mi familia, mis amigos cercanos (sobre todo
Anuar, Juanfran, David y José Antonio). No me quiero olvidar tampoco de la persona
más cercana a mí en este momento, Raquel, gracias por estar ahí y llegar a mi vida.
Finalmente, no me puedo olvidar de mi entorno de trabajo (mi querido CIIN), de
toda la comunidad de SharePoint tan dinámica y llena de gente con ganas de aprender y
enseñar y siempre dispuesta a compartir sus conocimientos, y de la editorial Krasis
(gracias José Manuel) por darnos de nuevo la oportunidad de hablar sobre uno de los
mejores productos creados por Microsoft.
Juan Carlos González
iv
A medida que nos íbamos acercando al final de este proyecto sabía que lo que
estaba por llegar era el capítulo más difícil, los agradecimientos, pues uno desea
expresar en solo unos párrafos todo lo vivido durante varios meses de trabajo. Como
bien dicen mis compañeros de aventura, es todo un reto escribir un libro y vaya si lo ha
sido. Inevitablemente tuvimos que dejar un montón de actividades, amigos, familias e
incluso hipotecar fines de semanas para alcanzar las metas propuestas en julio del 2012
y así lo hicimos. En lo personal fue mi primer libro y espero que no sea el último, tengo
muchas cosas para mejorar y sobre todo para aprender. Mis compañeros y amigos
Gustavo y Juan Carlos estuvieron siempre ahí, apoyándome e impulsándome en los
momentos más complicados. Es difícil expresar la gratitud que siento hacia ellos por la
oportunidad que me dieron, gracias Juan Carlos y Gustavo por dejarme ser parte de
todo esto.
Quiero agradecer a todos los que conforman Siderys y Bsn por permitirme manejar
mi tiempo y mis compromisos durante todo este proyecto, sin su apoyo y disposición
esto no hubiera sido posible, gracias Álvaro, Diego, y Javier porque desde un principio,
hace 8 años siempre me han apoyado incondicionalmente y gracias Juan Manuel por
todo tu sostén y respaldo durante estos últimos años.
Mi último agradecimiento es para la persona que me apoyó, me alentó y no dejo que
me rindiera durante todos estos meses, la persona que está ahí siempre que la necesito,
la persona que incondicionalmente soporta que pase fines de semana encerrado
batallando con SharePoint. Esa persona se llama Paula y es la persona que amo, gracias
amorcito por ser la persona que eres.
Fabián Imaz
v
Contenido
AGRADECIMIENTOS ................................................................................................ iii
CONTENIDO ............................................................................................................... v
AUTORES ................................................................................................................... xv
PRÓLOGO ................................................................................................................ xvii
PRESENTACIÓN ...................................................................................................... xix
CAPÍTULO 1: INSTALACIÓN, CONFIGURACIÓN Y ADMINISTRACIÓN.. 23
1.- Introducción ................................................................................................................................ 23 2.- Prerequisitos ............................................................................................................................... 24 3.- Versiones de SharePoint .......................................................................................................... 27 4.- Instalación de SharePoint......................................................................................................... 28
4.1.- Configuración del servidor .......................................................................................... 31 4.2.- Configuración y puesta en marcha de las Aplicaciones de Servicio.................. 34
5.- Administración de SharePoint ............................................................................................... 38 5.1.- La Administración Central de SharePoint .............................................................. 38
5.1.1.- Administración de aplicaciones .......................................................................... 39 5.1.2.- Configuración del sistema .................................................................................... 45 5.1.3.- Supervisión .............................................................................................................. 47 5.1.4.- Copia de seguridad y restauración .................................................................... 52 5.1.5.- Seguridad .................................................................................................................. 56 5.1.6.- Actualización y migración .................................................................................... 60 5.1.7.- Configuración de aplicación general ................................................................. 61 5.1.8.- Aplicaciones ............................................................................................................. 62 5.1.9.- Asistentes de configuración ................................................................................ 62
5.2.- Administración con Windows PowerShell.............................................................. 63 5.3.- Administración con el Modelo de Objetos ............................................................. 66
6.- Actualización desde SharePoint 2010................................................................................... 67 6.1.- Actualización mediante la técnica de adjuntado de BD ....................................... 68
6.1.1.- Actualización de Colecciones de Sitios ............................................................ 73 6.2.- Otras posibilidades de actualización ......................................................................... 76
7.- Conclusiones............................................................................................................................... 77
CAPÍTULO-2: INTRODUCCIÓN A LA PROGRAMACIÓN DE SHAREPOINT ....................................................................................................................................... 79
1.- Introducción ................................................................................................................................ 79 2.- Arquitectura y taxonomía de SharePoint ............................................................................ 80 3.- Principios de programación con SharePoint ....................................................................... 84
vi Sharepoint 2013 de principio a fin
vi
3.1.- El panel del desarrollador ............................................................................................ 90 3.2.- El explorador de servidores........................................................................................ 92 3.3.- Creación de un proyecto de Visual Studio 2012 ................................................... 93
4.- Acceso a datos basado en OData ......................................................................................... 96 5.- Modelo de Autenticación y Autorización basado en OAuth ......................................... 98 6.- Conclusiones............................................................................................................................... 99
CAPÍTULO-3: APLICACIONES WEB .................................................................101
1.- Introducción .............................................................................................................................. 101 2.- Concepto de Aplicación Web .............................................................................................. 101 3.- Creación, configuración y uso de Aplicaciones Web desde la interfaz de usuario 102 4.- Creación, configuración y uso de Aplicaciones Web desde el Modelo de Objetos de Servidor ............................................................................................................................................ 113 5.- Creación, configuración y uso de Aplicaciones Web desde la Línea de Comandos..... ............................................................................................................................................... 118 6.- Conclusiones............................................................................................................................. 120
CAPÍTULO-4: COLECCIONES DE SITIOS ........................................................121
1.- Introducción .............................................................................................................................. 121 2.- Concepto de Colección de Sitios........................................................................................ 122
2.1.- Creación y configuración de Colecciones de Sitios ............................................ 122 2.2.- Plantillas de cuota y bloqueo .................................................................................... 132 2.3.- Confirmar el uso y la eliminación del sitio ............................................................ 135 2.4.- Creación de Colecciones de Sitios sin intervención del administrador ........ 136 2.5.- Solicitudes de acceso e invitaciones........................................................................ 138
3.- Creación, configuración y uso de Colecciones de Sitios desde el Modelo de
Objetos de Servidor ..................................................................................................................... 140 4.- Creación, configuración y uso de Colecciones de Sitios desde línea de comandos .... ............................................................................................................................................... 145
4.1.- Colecciones de Sitio “Host-Named” ...................................................................... 148 5.- Soluciones Sandbox................................................................................................................. 149
5.1.- Creación de una solución Sandbox con Visual Studio ....................................... 155 5.2.- Manejo de soluciones Sandbox desde línea de comandos ................................ 157
6.- Bases de Datos de contenidos ............................................................................................. 158 7.- Conclusiones............................................................................................................................. 160
CAPÍTULO-5: SITIOS .............................................................................................161
1.- Introducción .............................................................................................................................. 161 2.- Concepto de Sitio ................................................................................................................... 162 3.- Creación, configuración y uso de Sitios desde la Interfaz de Usuario ....................... 163 4.- Creación, configuración y uso de Sitios desde el Modelo de Objetos de Servidor ......
............................................................................................................................................... 177 4.1.- Creación de plantillas de Sitio con Visual Studio 2012 ..................................... 182
5.- Creación, configuración y uso de Sitios desde PowerShell .......................................... 191 6.- Conclusiones............................................................................................................................. 192
Contenido vii
vii
CAPÍTULO-6: LISTAS Y BIBLIOTECAS .............................................................193
1.- Introducción .............................................................................................................................. 193 2.- Creación, configuración y uso de Listas desde la Interfaz de Usuario ...................... 194 3.- Uso del Modelo de Objetos de Servidor para crear y configurar Listas .................. 201 4.- Uso de PowerShell con Listas .............................................................................................. 210 5.- Creación de definiciones de Listas usando Visual Studio 2012 ................................... 212 6.- Conclusiones............................................................................................................................. 215
CAPÍTULO-7: TIPOS DE CONTENIDO Y COLUMNAS DE SITIO ...............217
1.- Introducción .............................................................................................................................. 217 2.- Columnas de Sitio ................................................................................................................... 218 3.- Tipos de Contenido ................................................................................................................ 222
3.1.- Ámbitos de Tipos de Contenido ............................................................................. 228 3.2.- Actualización de Tipos de Contenido .................................................................... 228
4.- Gestión y uso desde SharePoint Designer ........................................................................ 229 5.- Gestión y uso desde el Modelo de Objetos de Servidor .............................................. 231
5.1.- Manejo programático de Columnas de Sitios ....................................................... 231 5.2.- Manejo programático de Tipos de Contenido ..................................................... 237
6.- Creación de Tipos de Contenido desde Visual Studio .................................................. 239 7.- Columnas de Búsqueda .......................................................................................................... 243 8.- Columnas personalizadas....................................................................................................... 249 9.- Conclusiones............................................................................................................................. 254
CAPÍTULO-8: MODELO DE OBJETOS EN CLIENTE Y API REST................257
1.- Introducción .............................................................................................................................. 257 2.- Modelo de Objetos en Cliente ............................................................................................ 259
2.1.- Implementación .Net .................................................................................................. 262 2.2.- Implementación Silverlight ......................................................................................... 266 2.3.- Implementación ECMAScript .................................................................................. 278 2.4.- API de Servicios REST y OData ............................................................................... 282
3.- Concluciones ............................................................................................................................ 291
CAPÍTULO-9: MANEJADORES DE EVENTOS Y TRABAJOS DE TEMPORIZADOR ....................................................................................................293
1.- Introducción .............................................................................................................................. 293 2.- Manejadores de Eventos ........................................................................................................ 294
2.1.- Arquitectura y posibilidades...................................................................................... 295 2.2.- Programación de Manejadores de Eventos ........................................................... 296 2.3.- Instalación y uso de Manejadores de Eventos ...................................................... 301 2.4.- Manejadores de Eventos Remotos .......................................................................... 303
3.- Trabajos de Temporizador ................................................................................................... 310 3.1.- Gestión y uso desde la Administración Central .................................................. 311 3.2.- Gestión y uso desde la Línea de Comandos ......................................................... 314 3.3.- Gestión y uso mediante el Modelo de Objetos de Servidor ............................ 315
viii Sharepoint 2013 de principio a fin
viii
3.4.- Programación de Trabajos de Temporizador ...................................................... 318 4.- Conclusiones............................................................................................................................. 322
CAPÍTULO-10: SHAREPOINT DESIGNER 2013 ...............................................323
1.- Introducción .............................................................................................................................. 323 2.- Uso de SharePoint Designer 2013 ...................................................................................... 324
2.1.- Sección Sitios de trabajo ............................................................................................ 329 2.2.- Sección Listas y bibliotecas........................................................................................ 334 2.3.- Sección Páginas del sitio ............................................................................................. 338 2.4.- Sección Activos del sitio ............................................................................................ 341 2.5.- Sección Tipos de contenido ...................................................................................... 341 2.6.- Sección Columnas de sitio ........................................................................................ 342 2.7.- Sección Orígenes de datos ........................................................................................ 343 2.8.- Sección Páginas principales ........................................................................................ 344 2.9.- Sección Diseños de página ........................................................................................ 346 2.10.- Sección Grupos de sitio ............................................................................................ 347 2.11.- Sección Subsitios......................................................................................................... 348 2.12.- Sección Todos los archivos...................................................................................... 348
3.- Personalización con SharePoint Designer ......................................................................... 349 3.1.- Personalización de páginas......................................................................................... 349 3.2.- Personalización de páginas maestras....................................................................... 357 3.3.- Creación de un Diseño de página............................................................................ 363
4.- Trabajo con Vistas de Datos ................................................................................................ 366 5.- Administración de SharePoint Designer ............................................................................ 375 6.- Conclusiones............................................................................................................................. 377
CAPÍTULO-11: FLUJOS DE TRABAJO ................................................................379
1.- Introducción .............................................................................................................................. 379 2.- Arquitectura .............................................................................................................................. 380 3.- Configuración Windows Azure Workflow ...................................................................... 382 4.- Configuración e implementación de Flujos de Trabajo y Flujos por defecto .......... 386 5.- Creación de Flujos de Trabajo con Visio .......................................................................... 389 6.- Creación de Flujos con SharePoint Designer ................................................................... 392 7.- Creación de Flujos de Trabajo con Visual Studio ........................................................... 402
7.1.- Creación de un flujo.................................................................................................... 403 7.2.- Importación de Flujos Reutilizables en Visual Studio ......................................... 409
8.- Creación de actividades para Flujos ................................................................................... 410 8.1.- Creación de actividades con Visual Studio ............................................................ 410
9.- Conclusiones............................................................................................................................. 414
CAPÍTULO-12: INTERFAZ DE USUARIO ..........................................................415
1.- Introducción .............................................................................................................................. 415 2.- Modificación de la Interfaz utilizando la Interfaz por defecto ...................................... 417 3.- Páginas Maestras ...................................................................................................................... 418 4.- Hojas de Estilos ........................................................................................................................ 425
Contenido ix
ix
4.1.- Uso de la Interfaz de Usuario para cambiar las Hojas de Estilos .................... 426 4.2.- Modificación de las Hojas de Estilo por defecto .................................................. 426 4.3.- Agregar una nueva Hoja de Estilos en la definición del sitio ............................ 428 4.4.- Modificación de Hojas de Estilos programáticamente........................................ 428
5.- Personalización de Menús ..................................................................................................... 428 5.1.- Personalización del Menú Inicio Rápido ................................................................. 428 5.2.- Personalización de la Barra Horizontal .................................................................. 429 5.3.- Personalización de los menús de Cinta .................................................................. 430
6.- Trabajo con Temas ................................................................................................................. 433 6.1.- Uso de la Interfaz de Usuario para aplicar un Tema .......................................... 433 6.2.- Creación de Temas nuevos ....................................................................................... 434
7.- Ventanas Modales .................................................................................................................... 435 8.- Conclusiones............................................................................................................................. 436
CAPÍTULO-13: WEBPARTS ..................................................................................437
1.- Uso de WebParts desde la Interfaz de Usuario .............................................................. 437 1.1.- Galería de elementos web ......................................................................................... 440
2.- WebParts por defecto ........................................................................................................... 442 2.1.- WebPart Editor de Contenido ................................................................................. 442 2.2.- WebPart Consulta de Contenido ........................................................................... 443
3.- Modelo de Objetos de Webparts ....................................................................................... 445 3.1.- WebParts Visuales ....................................................................................................... 448 3.2.- Personalización del Panel de Control ..................................................................... 451 3.3.- Conexiones entre WebParts .................................................................................... 455 3.4.- Despliegue desde una solución ................................................................................ 459
4.- Conclusiones............................................................................................................................. 460
CAPÍTULO-14: CARACTERÍSTICAS Y SOLUCIONES ...................................461
1.- Introducción .............................................................................................................................. 461 2.- Características .......................................................................................................................... 462
2.1.- Concepto de ámbito de Característica .................................................................. 474 2.2.- Creación de Características con Visual Studio 2012.......................................... 475 2.3.- Instalación y gestión de Características ................................................................. 482
2.3.1.- Gestión de Características con PowerShell .................................................. 483 2.4.- Programación de Características ............................................................................. 485
2.4.1.- Modelo de Objetos de Servidor para Características ................................ 485 2.4.2.- Manejadores de eventos para Características .............................................. 488 2.4.3.- Actualización de Características ...................................................................... 492
3.- Soluciones .................................................................................................................................. 495 3.1.- Tipos de Soluciones .................................................................................................... 495 3.2.- Creación e instalación de Soluciones con Visual Studio .................................. 496 3.3.- Instalación y gestión de Soluciones ......................................................................... 499
3.3.1.- Gestión de Soluciones mediante la interfaz de usuario ............................. 500 3.3.2.- Instalación y gestión de Soluciones con PowerShell ................................... 501 3.3.3.- Gestión de Soluciones con el Modelo de Objetos ..................................... 503
4.- Conclusiones............................................................................................................................. 504
x Sharepoint 2013 de principio a fin
x
CAPÍTULO-15: GESTIÓN DE CONTENIDO WEB Y LA CARACTERÍSTICA DE PUBLICACIÓN ..................................................................................................507
1.- Introducción .............................................................................................................................. 507 2.- Activación y uso mediante la Interfaz de Usuario ........................................................... 508 3.- Creación de contenido .......................................................................................................... 511 4.- Variantes .................................................................................................................................... 514 5.- Navegación Administrada por medio de Conjunto de Términos............................... 516 6.- Publicación de contenido ....................................................................................................... 518 7.- Canales de Dispositivos ......................................................................................................... 521 8.- Representaciones de imágenes (Rendiciones) ................................................................. 522 9.- El Administrador de Diseños .............................................................................................. 523 10.- Propiedades de SEO (Search Engine Optimization) .................................................... 526 11.- Modelo de Objetos de Publicación.................................................................................. 527
11.1.- Navegación ................................................................................................................... 527 11.2.- Creación de Páginas de Publicación programáticamente ................................. 529 11.3.- Creación de Diseños de Página para Páginas de Publicación .......................... 531 11.4.- Despliegue de Contenido ......................................................................................... 533
12.- Conclusiones ......................................................................................................................... 534
CAPÍTULO-16: CONECTIVIDAD DE DATOS DE NEGOCIO........................537
1.- Introducción .............................................................................................................................. 537 2.- El Servicio de BCS ................................................................................................................... 538 3.- Creación de soluciones sin código con SPD .................................................................... 543 4.- Creación de soluciones con Visual Studio ........................................................................ 557
4.1.- Modelo de Objetos en Cliente y API REST para BCS ....................................... 566 4.1.1.- API REST para BCS ............................................................................................. 569
4.2.- BCS y Aplicaciones ...................................................................................................... 569 4.3.- Manejadores de Eventos, alertas y notificaciones ............................................... 574
5.- Administración de ECTs ........................................................................................................ 574 6.- Integración de BCS con la suite Microsoft Office ........................................................... 576 7.- Otras posibilidades de integración de BCS ....................................................................... 579 8.- Conclusiones............................................................................................................................. 582
CAPÍTULO-17: OTROS SERVICIOS: INFOPATH, ACCESS, EXCEL, VISIO, WORD Y TRADUCCIÓN .......................................................................................583
1.- Introducción .............................................................................................................................. 583 2.- Servicio de Formularios InfoPath ........................................................................................ 584
2.1.- Diseño de formularios ................................................................................................ 585 2.1.1.- Formularios de lista ............................................................................................. 586 2.1.2.- Biblioteca de formularios ................................................................................... 588 2.1.3.- Promoción de propiedades ............................................................................... 590 2.1.4.- Reglas ...................................................................................................................... 592 2.1.5.- Vistas ....................................................................................................................... 593 2.1.6.- Publicación de formularios ................................................................................ 594
2.2.- WebParts de formulario ............................................................................................ 595
Contenido xi
xi
2.2.1.- Conexión de WebParts de formulario .......................................................... 596 2.3.- Orígenes de datos ....................................................................................................... 597
2.3.1.- Listas de SharePoint ............................................................................................ 597 2.3.2.- Bases de datos ...................................................................................................... 600 2.3.3.- Servicios Web ....................................................................................................... 601 2.3.4.- Archivos de conexiones ..................................................................................... 603
2.4.- Programación con VSTO ........................................................................................... 604 2.5.- Administración ............................................................................................................. 606
2.5.1.- Administración con PowerShell ....................................................................... 608 3.- Servicios de Access ................................................................................................................. 609
3.1.- Administración ............................................................................................................. 611 3.2.- Creación y publicación de aplicaciones Access.................................................... 612
4.- Servicios de Excel .................................................................................................................... 617 4.1.- Arquitectura .................................................................................................................. 618 4.2.- Administración ............................................................................................................. 619 4.3.- Creación y publicación de documentos Excel ...................................................... 621 4.4.- WebPart Excel Web Access ..................................................................................... 623
4.4.1.- Tablas dinámicas ................................................................................................... 624 4.5.- API REST de los Servicios de Excel......................................................................... 625
4.5.1.- Uso de OData con la API REST de los Servicios de Excel ....................... 626 4.6.- Servicios web de los Servicios de Excel ................................................................. 627 4.7.- Funciones de usuario UDF ........................................................................................ 629
4.7.1.- Funciones de usuario UDF JavaScript............................................................ 632 4.8.- Vistas interactivas Excel ............................................................................................. 633
5.- Servicios de Visio ..................................................................................................................... 634 5.1.- Arquitectura .................................................................................................................. 634 5.2.- Administración ............................................................................................................. 635 5.3.- Creación y publicación de diagramas Visio ........................................................... 636
6.- Servicios de Automatización de Word .............................................................................. 638 6.1.- Arquitectura .................................................................................................................. 638 6.2.- Administración ............................................................................................................. 639 6.3.- Uso programático de los Servicios de Automatización de Word .................. 640
7.- Servicio de Traducción Automática.................................................................................... 641 7.1.- Arquitectura .................................................................................................................. 642 7.2.- Administración ............................................................................................................. 643 7.3.- Modelo de Objetos del Servicio de Traducción .................................................. 643
7.3.1.- Modelo de Objetos en Servidor ...................................................................... 644 7.3.2.- Modelo de Objetos en Cliente......................................................................... 647 7.3.3.- API REST ................................................................................................................ 650
8.- Conclusiones............................................................................................................................. 651
CAPÍTULO-18: INTELIGENCIA DE NEGOCIOS ..............................................653
1.- Introducción .............................................................................................................................. 653 2.- BI en SharePoint....................................................................................................................... 654
2.1.- Centro de Inteligencia Empresarial ......................................................................... 654 2.2.- Creación, configuración y uso de KPIs................................................................... 657
3.- Integración con SQL Server Reporting Services ............................................................. 658
xii Sharepoint 2013 de principio a fin
xii
3.1.- Administración ............................................................................................................. 661 3.2.- Creación y publicación de informes con el Generador de Informes ............. 663 3.3.- Creación de informes con SQL Server Data Tools ............................................ 671
4.- Integración con PerformancePoint ..................................................................................... 673 4.1.- Administración ............................................................................................................. 676 4.2.- Creación y publicación de Cuadros de mando .................................................... 678
5.- Conclusiones............................................................................................................................. 686
CAPÍTULO-19: BÚSQUEDAS ...............................................................................689
1.- Introducción .............................................................................................................................. 689 2.- Versiones del Motor de Búsqueda ...................................................................................... 689 3.- Configuración ........................................................................................................................... 690
3.1.- Uso de la Interfaz de Usuario para configurar el motor de Búsqueda .......... 690 3.2.- PowerShell para la configuración de las búsquedas ............................................ 696
4.- Uso y Centro de Búsquedas ................................................................................................. 699 4.1.- Uso del motor de Búsqueda ..................................................................................... 699 4.2.- El Centro de Búsqueda............................................................................................... 701
4.2.1.- Centro de Búsqueda Básica............................................................................... 702 4.2.2.- Centro de Búsqueda Empresarial .................................................................... 703 4.2.3.- WebParts de Búsqueda Empresarial ............................................................... 704 4.2.4.- Otras WebParts de Búsqueda .......................................................................... 705
5.- Programación de Búsquedas ................................................................................................. 706 5.1.- Uso programático del motor de Búsqueda........................................................... 707
5.1.1.- Búsqueda programática utilizando REST........................................................ 708 5.1.2.- Búsqueda programática utilizando el Modelo de Objetos de Cliente .... 709 5.1.3.- Búsqueda programática utilizando el Modelo de Objetos de Servidor . 710
5.2.- Modificación de la Interfaz de Búsquedas .............................................................. 712 6.- Conclusiones............................................................................................................................. 717
CAPÍTULO-20: GESTIÓN DE CONTENIDO EMPRESARIAL ........................719
1.- Introducción .............................................................................................................................. 719 2.- Auditoría .................................................................................................................................... 720
2.1.- Configuración y uso .................................................................................................... 720 2.2.- Programación de Auditorías ..................................................................................... 722
3.- Servicio de Identificador de Documentos ......................................................................... 726 3.1.- Configuración y uso .................................................................................................... 727 3.2.- Programación del Identificador de Documentos ................................................. 728
4.- Gestión de registros ............................................................................................................... 730 4.1.- El Centro de Registros ............................................................................................... 730 4.2.- Registros Locales ......................................................................................................... 734 4.3.- Programación de Registros ....................................................................................... 735 4.4.- El Centro de Detección ............................................................................................. 736 4.5.- Programación del Centro de Detección ............................................................... 739
5.- Conjuntos de documentos .................................................................................................... 741 6.- Servicio de metadatos administrados ................................................................................. 743
6.1.- Configuración y uso .................................................................................................... 743
Contenido xiii
xiii
6.2.- Programación ................................................................................................................ 746 7.- Concentrador de sindicacion de Tipos de Contenido .................................................. 747
7.1.- Configuración y uso .................................................................................................... 747 8.- El Organizador de Contenido .............................................................................................. 749
8.1.- Configuración y uso del Organizador de Contenido ......................................... 749 8.2.- Programación del Organizador de Contenido ..................................................... 751
9.- Conclusiones............................................................................................................................. 752
CAPÍTULO-21: APLICACIONES ..........................................................................753
1.- Introduccion .............................................................................................................................. 753 2.- Arquitectura de Aplicaciones ............................................................................................... 754 3.- Tipos de Elementos que se pueden utilizar en Aplicaciones ........................................ 756 4.- Configuración para utilizar el Almacén de Aplicaciones................................................ 757
4.1.- Configuración de DNS para Aplicaciones ............................................................. 758 4.2.- Configuración de SharePoint para Aplicaciones .................................................. 759
5.- Desarrollo de Aplicaciones ................................................................................................... 761 5.1.- Desarrollo de Aplicaciones hospedadas en SharePoint ..................................... 762 5.2.- Desarrollo de Aplicaciones hospedadas en la Nube (Autohospedadas) ....... 765
5.2.1.- Utilizando las clases de Hojas de Estilo .......................................................... 770 5.2.2.- Utilizando el Chrome de SharePoint .............................................................. 771 5.2.3.- El Editor de Manifiestos ...................................................................................... 773
5.3.- Desarrollo de Acciones Personalizadas ................................................................. 774 5.4.- Desarrollo de Aplicaciones de Partes .................................................................... 777 5.5.- Licenciamiento para Aplicaciones ............................................................................ 779 5.6.- Instalación y Monitorización ..................................................................................... 780 5.7.- Instalación de Aplicaciones utilizando PowerShell .............................................. 782 5.8.- Instalación de Aplicaciones utilizando el Modelo de Objetos .......................... 782 5.9.- Actualización de Aplicaciones................................................................................... 783
6.- Conclusiones............................................................................................................................. 784
CAPÍTULO-22: CAPACIDADES SOCIALES Y MI SITIO .................................785
1.- Introducción .............................................................................................................................. 785 2.- Configuración ........................................................................................................................... 787 3.- Mi Sitio Personal ...................................................................................................................... 789
3.1.- Suministro de Noticias ............................................................................................... 790 3.2.- SkyDrive ......................................................................................................................... 794 3.3.- Sitios ................................................................................................................................ 796
4.- Comunidades ............................................................................................................................ 796 5.- Programación de Mi Sitio ...................................................................................................... 802
5.1.- Programación con el Modelo de Objetos en Cliente......................................... 802 5.2.- Uso de la API JavaScript ............................................................................................. 806
6.- Conclusiones............................................................................................................................. 811
ÍNDICE ANALÍTICO ...............................................................................................812
xv
Autores
Gustavo Vélez Gustavo Vélez es Ingeniero Mecánico y Electrónico, trabaja
como Group Manager para Avanade (www.avanade.com), una
firma de consultoría global y es MVP de SharePoint.
Involucrado con SharePoint desde antes de que recibiera su
nombre (Site Server, en 1998) cuenta con numerosos años de
experiencia diseñando, programando e implementando sistemas
de SharePoint. Autor de seis libros sobre SharePoint y múltiples
artículos publicados en revistas del sector en español, inglés,
holandés y alemán. El autor también es webmaster de www.gavd.net, el primer sitio
creado en español dedicado exclusivamente a SharePoint.
Juan Carlos González Juan Carlos es Arquitecto de Soluciones en el CIIN de
Cantabria, uno de los Microsoft Innovation Centers de España.
Ingeniero de Telecomunicaciones por la Universidad de
Valladolid, cuenta con más de 9 años de experiencia en
tecnologías y plataformas de Microsoft diversas (SQL Server,
Visual Studio, .NET Framework, etc.), aunque su trabajo diario
gira en torno a SharePoint. Juan Carlos es MVP de SharePoint
desde el año 2008, coordinador del grupo de usuarios .NET de Cantabria (Nuberos.Net, www.nuberos.es), co-fundador del Grupo de Usuarios de
SharePoint de España (SUGES, www.suges.es) y co-director de la revista gratuita en
castellano sobre SharePoint CompartiMOSS (www.compartimoss.com). Hasta la
fecha, ha publicado tres libros sobre SharePoint y varios artículos en castellano y en
inglés sobre la plataforma.
Fabián Imaz Fabián Imaz, MVP de SharePoint desde 2009, trabaja en el
mundo del desarrollo de software desde hace más de 10 años
basando su experiencia en arquitecturas y tecnologías Microsoft. Trabaja con Siderys Elite Software (www.siderys.com),
empresa de desarrollo de Software especializada en SharePoint
y en desarrollo de soluciones inteligentes. Desde los comienzos
Fabián ha participado en distintitas comunidades como
MOSSCA, CUMUY, SUGES, HISPAPOINT y la Comunidad
de SharePoint de Costa Rica, con las que trabaja activamente. Co-director de las
carreras de SharePoint en Microsoft Virtual Academy, cuenta con un sitio en
CodePlex (siderys.codeplex.com) donde publica componentes y aplicaciones gratuitas. Co-director de CompartiMOSS (www.compartimoss.com), revista digital de
SharePoint en Español.
xvii
Prólogo
¡Bienvenido! Y enhorabuena por tener en tus manos éste libro dedicado a
SharePoint.
Si eres de los que no saben bien lo que es SharePoint o de los que sabiéndolo aún se
preguntan cómo definirlo, vamos a empezar por el principio: analizando su nombre.
SharePoint es el punto donde compartir, es decir, la puerta de entrada a todo aquello
que puedas necesitar y ofrecer para trabajar con un menor esfuerzo, más rápidamente y
llegando a más gente. En lenguaje técnico es lo que definimos como plataforma.
SharePoint se puede configurar y personalizar, también es posible extenderlo en el
concepto clásico de crear Características y Soluciones que amplían sus capacidades.
Ahora en la versión de SharePoint 2013 descubrirás, a través de éste libro, que existe
un nuevo modelo de desarrollo en Aplicaciones.
La infraestructura necesaria para el funcionamiento de SharePoint incluye servicios
de servidor tradicionales y los basados en tecnología de la nube.
Te recomiendo que vayas echando un vistazo al capítulo sobre flujos en Azure y verás
de lo que es capaz la plataforma.
Cuando me ofrecieron escribir éste prólogo, no tuvieron más que decirme quienes
formaban el trío de MVPs de SharePoint Server. Gustavo Vélez, Juan Carlos González
y Fabián Imaz han compartido su amplia experiencia y profundo saber en SharePoint.
No puedo aportar detalles que no se conozcan ya por sus perfiles en las redes o
colaboraciones en distintos medios. Pero ya te digo que, juntos, son mucho más que la
sola suma de ellos.
Con Gustavo mantengo una antigua relación de amistad/admiración profesional. Sin
embargo, por lo modesto que es, me costó un triunfo conseguir la dedicatoria de los
libros anteriores sobre SharePoint 2010. Esta vez espero que resulte más sencillo.
A Juan Carlos (Arquitecto de Soluciones en el CIIN de Cantabria) le conozco
personalmente por el trabajo con el Centro de Innovación (CIIN) que realizamos desde
Microsoft. Incansable en la promoción y apoyo de la plataforma, informa puntualmente
de los WebCast, siendo importante referencia en España.
Y aunque a Fabián no tengo el gusto de haberlo tratado personalmente, soy su
seguidora a través de las redes desde hace muchos años y es de obligada consulta para
mi trabajo con Partners.
Este nuevo libro hace honor a los tres anteriores que tengo en mi estantería de
cabecera y lo colocaré junto a ellos, para llegar a desgastarlo tanto o más.
Con SharePoint el usuario solo tiene que decir Qué quiere; nosotros, los expertos de
plataforma, decimos Cómo hacerlo; y éste libro nos ayuda a Conseguirlo.
Eva Ordóñez Pérez Técnico Especialista en ventas de SharePoint y Office 365 en Microsoft Ibérica S.R.L.
xix
Presentación
Actualmente, SharePoint no necesita introducción. Hace algunos años, siempre que
se mencionaba a "SharePoint", primero había que aclarar cuál era su función y cómo
encajarlo en la estrategia de software de Microsoft. Ahora, ya no es necesario
convencer a las empresas de la necesidad de implementar un sistema de colaboración
como SharePoint, sino que la discusión se dirige hacia cuáles de sus capacidades son
las más apropiadas para solucionar un problema empresarial especifico.
Y no solo empresas con multitud de empleados, sino también cualquier grupo de
personas que necesiten intercambiar información de una forma ordenada y consecuente
ven la necesidad y ventajas de SharePoint. Para la realización de este libro, por
ejemplo, autores, editores y todas las personas relacionadas con el proyecto hemos
utilizado SharePoint para mantener la información centralizada y de forma segura,
fomentar el intercambio de ideas y evitar confusiones.
SharePoint 2013 con su versión base, SharePoint Foundation, y la versión
empresarial, SharePoint Server, constituyen la plataforma de colaboración y
comunicación de Microsoft, dirigida a la gestión de información, el almacenamiento y
localización de documentos, la creación de sitios de presencia Web y el sistema de
manejo de información de negocios por medio de la infraestructura de Flujos de
Trabajo, la conexión a sistemas de información externos y las herramientas de
Inteligencia de Negocios.
Pero SharePoint va mucho más allá: es, sobre todo, una plataforma de desarrollo
debido a sus Modelos de Objetos abiertos, utilizables tanto directamente desde el
servidor como remotamente desde los clientes, que permite extender el sistema según
los requerimientos explícitos de los usuarios. De esta forma, SharePoint no es un
producto estático que cumple una sola función, sino un sistema dinámico que permite
ser extendido en cualquier dirección que se considere necesaria.
¿A quién va dirigido este libro?
A todas las audiencias que de una u otra forma trabajan con SharePoint: los
administradores de sistemas pueden encontrar información sobre instalación y
configuración, los usuarios cotidianos sobre cómo utilizar el sistema y el tipo de
configuraciones que les son permitidas, los usuarios avanzados pueden hallar
información sobre el uso de SharePoint Designer para realizar modificaciones del
diseño de la interfaz y el ensamblado de Flujos de Trabajo básicos y, finalmente, los
arquitectos de IT y los desarrolladores encontrarán suficiente información sobre la
arquitectura y programación para poder comenzar con nuevos proyectos de inmediato.
xx Sharepoint 2013 de principio a fin
xx
¿Qué temas se tratan?
El libro está orientado hacia la configuración, uso y programación de SharePoint
2013, aunque solo son necesarios conocimientos básicos de desarrollo en .NET para la
parte de desarrollo. Obviamente, como la versión de SharePoint utilizada en Office 365
es básicamente la misma que SharePoint 2013 "On-Premise", prácticamente toda la
información en el libro se puede aplicar directamente a 365 también.
El primer capítulo enumera los requerimientos de hardware y software, los pasos
necesarios para realizar una instalación básica, aspectos relativos a su administración a
través de la Administración Central de SharePoint y la interfaz de línea de comandos
mediante el uso de PowerShell, así como las opciones de actualización disponibles
desde SharePoint 2010.
Las herramientas necesarias para el desarrollo se introducen en el capítulo 2 junto a
las novedades que ofrece Visual Studio 2012, que facilitan el desarrollo por medio de
una serie de plantillas para WebParts, Manejadores de Eventos, Flujos de Trabajo,
Definiciones de Lista, Aplicaciones, etc.
Los siguientes cinco capítulos describen los componentes básicos de SharePoint, su
configuración y uso, junto con las posibilidades de programación que brinda el Modelo
de Objetos en el servidor partiendo de la jerarquía propia de la arquitectura de
SharePoint: Aplicaciones Web, Colecciones de Sitios, Sitios, Listas y Bibliotecas de
Documentos, Tipos de Contenido y Columnas de Sitio.
El capítulo 8 se centra en las novedades del Modelo de Objetos en cliente, con sus
tres implementaciones, .NET, Silverlight y ECMAScript, más el API de servicios
REST que no sólo expone Sitios, Listas y Bibliotecas sino también algunos servicios
claves de la plataforma como búsquedas, traducciones o BCS.
Las posibilidades que ofrece SharePoint para automatizar procesos y modelar
procedimientos de negocio a través de los Manejadores de Eventos y los Flujos de
Trabajo se describen en los capítulos 9 y 11. El capítulo 11, sobre Flujos de Trabajo,
detalla las posibilidades de uso y creación de flujos mediante Microsoft Office Visio
2013, SharePoint Designer 2013 y Visual Studio 2012.
SharePoint Designer, como la herramienta para los Trabajadores de la Información,
se analiza extensivamente en el capítulo 10. A lo largo del capítulo se explican las
posibilidades que ofrece para crear elementos de SharePoint, personalizar soluciones,
ensamblar Flujos de Trabajo y demás aspectos interesantes del programa.
El capítulo 12 se centra en las posibilidades que ofrece SharePoint para personalizar
al máximo la interfaz de usuario mediante el uso de temas, hojas de estilo y las
posibilidades de personalización que añade el Modelo de Objetos.
Como una de sus posibilidades de personalización, SharePoint dispone del uso de
bloques de funcionalidad o WebParts como mecanismo adicional para cambiar el
aspecto y funcionamiento de Sitios. El capítulo 13 describe algunas de las WebParts
más importantes disponibles por defecto y como crear nuevas desde Visual Studio.
Si disponer de distintas herramientas para crear elementos de SharePoint es fundamental, también lo es su despliegue, a lo que el capítulo 14 está dedicado:
Características y Soluciones en SharePoint, así como los diseñadores que Visual Studio
2012 incorpora para facilitar su creación.
Presentación xxi
xxi
Dotar de presencia en Internet a una organización es algo indispensable para
cualquier empresa moderna. La característica de Gestión de contenidos para la web
tratada en el capítulo 15, permite crear una presencia en Internet para las
organizaciones por medio de SharePoint 2013.
Lo habitual dentro de todo sistema informático es almacenar datos en medios
diversos de forma desconectada. Como se describe en el capítulo 16, el sistema de
Conectividad de Datos de Negocio de SharePoint permite agregar información externa
de una forma centralizada en el Portal.
SharePoint cuenta con una serie de “pequeñas joyas” que permiten mejorar la
productividad de una organización a través de la publicación de Bases de Datos
Access, archivos Excel o la conversión de documentos por medio de los Servicios de
Access, de Excel y de Word, como se explica en el capítulo 17. InfoPath otro de los
servicios de SharePoint, InfoPath, se describe en este capítulo.
Disponer de herramientas y del entorno adecuado para descubrir y presentar la
información clave de una organización es uno de los retos en la actualidad. El capítulo
18 describe las posibilidades de Inteligencia de Negocio disponibles por defecto en
SharePoint Server, así como su integración con SQL Server Reporting Services y
PerformancePoint Services.
Si la posibilidad de centralizar la información en un único entorno es muy
importante, también lo es poder encontrarla de una forma simple y categorizada. El
capítulo 19 realiza un recorrido por el sistema de búsqueda disponible en SharePoint,
su configuración, uso y personalización.
El capítulo 20 muestra todas las capacidades que incorpora SharePoint para facilitar
la gestión segura y eficiente de documentos: auditorías, Identificadores de documentos,
gestión de registros, conjuntos de documentos o categorización de información
mediante el servicio de metadatos administrados.
Continuando con el modelo introducido por Windows 8 y, en general, las tabletas y
teléfonos modernos, las Aplicaciones son una de las formas disponibles en SharePoint
2013 para agregar nuevas funciones no presentes por defecto. El capítulo 21 describe la
arquitectura y programación de las Aplicaciones para SharePoint.
Finalmente, SharePoint necesita satisfacer cada vez más situaciones "sociales" para
sus usuarios. Fuera de "Mi Sitio" que ha sido tradicionalmente el lugar para almacenar
información personal, SharePoint dispone de capacidades sociales como SkyDrive,
micro-blogs, feeds de actividad y herramientas para etiquetado y valoración de la
información, como describe el capítulo 22.
Herramientas y Entorno
En general, escribir un libro sobre la última versión de una plataforma o
tecnología recién lanzada al mercado implica que es necesario realizar pruebas de
funcionalidad y desarrollo hasta el último momento. En este sentido, todo el contenido
del libro se ha escrito en base a una instalación en modo granja de la versión “Ready To Manufacture” (RTM) en castellano de SharePoint Server 2013. Todos los ejemplos
de código incluidos se han creado en la versión en castellano de la RTM de Visual
Studio 2012 Ultimate. Para los capítulos de SharePoint Designer 2013 y Visio 2012 se
xxii Sharepoint 2013 de principio a fin
xxii
han utilizado las versiones RTM en castellano de SharePoint Designer 2013 y Visio
2012 respectivamento. Finalmente, para los capítulos relativos a InfoPath, Servicios de
Access y Servicios de Excel se han utilizado las versiones presentes en la suite de
Microsoft Office 2013. Para SharePoint 365 se utilizó la versión Preview disponible en
el momento de escribir el libro.