Documentos de Académico
Documentos de Profesional
Documentos de Cultura
SharePoint 2010 de Principio A Fin Krasis Press
SharePoint 2010 de Principio A Fin Krasis Press
Gustavo Vlez
Juan Carlos Gonzlez
Mario Corts
Agradecimientos
Escribir un libro es toda una experiencia, y un libro sobre SharePoint es una gran
experiencia. A veces agotadora, pero de todas formas algo que te permite colaborar y
trabajar estrechamente con profesionales tan talentosos como Juan Carlos y Mario. Por
supuesto, escribir un libro es tambin a su vez una experiencia solitaria, pues pasas horas
luchando con el computador y contigo mismo para entender cmo funcionan las cosas y
tratar de explicarlas en un lenguaje claro y conciso.
SharePoint se ha convertido para m en una forma de vida ms que en algunas lneas
de cdigo. Pero visto desde otra perspectiva, SharePoint me ha permito tambin recorrer
todo el mundo y tomar contacto con innumerables seres humanos en este mundo ancho y
extenso. Muchas gracias a todas las personas que han hecho posible este libro.
Gustavo Vlez
En general, y para muchos aspectos del da a da, dicen que despus del primero viene
el segundo. Y esto es lo que ha pasado con este libro, fruto del trabajo duro realizado
durante varios meses por mis colegas Gustavo, Mario y yo. El camino ha sido largo, pero
el resultado creo que ha sido casi de reserva como el buen vino, que necesita de tiempo
y cuidados para hacerse. Por eso, me gustara agradecer en primer lugar a mis
compaeros sumilliers en SharePoint Gustavo y Mario todo el esfuerzo, saber hacer y
tiempo invertido que ha permitido que aquella aventura que se inici en el mes de octubre
del ao pasado haya llegado, unos cuantos meses despus, a un final feliz.
Como siempre, el apoyo de las personas que me rodean, comenzando por mi chica
(Mara Jess) y mi familia, as como mis amigos ha sido fundamental porque han sabido
llevar bien que no haya tenido tiempo libre para ellos, que a veces haya podido
mostrarme un tanto vinagre y sobre todo porque son los que ms confan y creen en
mis posibilidades.
Finalmente, no me puedo olvidar de mi entorno de trabajo (mi querido CIIN) dnde la
tecnologa y todo lo que la rodea forma parte de nuestro da a da (gracias compaeros),
de toda la comunidad de SharePoint tan dinmica y llena de gente dispuesta a compartir
sus conocimientos, y de la editorial Krasis (gracias Jos Manuel) por darnos la
oportunidad de dar a luz este nuevo retoo.
Juan Carlos Gonzlez
Quiero agradecer a Leticia por apoyarme en este proyecto que ha sido muy importante
para m y por estar siempre a mi lado. Tambin quiero acordarme de Mi familia por
animarme en todos mis proyectos y agradecer el apoyo de: Gustavo Vlez, Juan Carlos
Gonzlez, Luis Panzano y Roberto Gonzlez. Gracias a todos!!
Mario Corts
iii
Contenido
PRLOGO .......................................................................................................... xiii
PRESENTACIN ................................................................................................. xv
INSTALACIN, CONFIGURACIN Y ADMINISTRACIN ............................................... 1
1.- Introduccin .................................................................................................................................................... 1
2.- Prerequisitos ................................................................................................................................................... 2
3.- Versiones de SharePoint 2010 ................................................................................................................. 4
4.- Instalacin de SharePoint 2010 ................................................................................................................ 6
4.1.- Configuracin del servidor ............................................................................................ 9
4.2.- Configuracin y puesta en marcha de las Aplicaciones de Servicio.................. 11
5.- Administracin de SharePoint 2010 ....................................................................................................15
5.1.- La Administracin Central de SharePoint 2010 ..................................................... 15
5.1.1.- Administracin de aplicaciones.......................................................................... 16
5.1.2.- Configuracin del sistema ................................................................................... 21
5.1.3.- Supervisin .............................................................................................................. 23
5.1.4.- Copia de seguridad y restauracin ................................................................... 28
5.1.5.- Seguridad ................................................................................................................. 32
5.1.6.- Actualizacin y migracin .................................................................................... 35
5.1.7.- Configuracin de aplicacin general ................................................................. 36
5.1.8.- Asistentes de configuracin ................................................................................ 38
5.2.- Administracin con Microsoft Windows PowerShell .......................................... 38
6.- Actualizacin desde SharePoint 2007 .................................................................................................41
6.1.- Mtodos de actualizacin............................................................................................. 44
6.1.1.- Actualizacin directa ............................................................................................ 44
6.1.2.- Actualizacin adjuntando la BD de contenidos ............................................. 48
6.1.3.- Otras posibilidades de actualizacin................................................................. 51
7.- Conclusiones.................................................................................................................................................53
INTRODUCCIN A LA PROGRAMACIN DE SHAREPOINT.......................................... 55
1.- Introduccin ..................................................................................................................................................55
2.- Arquitectura y taxonoma de SharePoint ..........................................................................................56
3.- Principios de programacin con SharePoint...................................................................................60
3.1.- El Panel del Desarrollador ........................................................................................... 64
3.2.- El Explorador de Servidores ....................................................................................... 66
3.3.- Creacin de un Proyecto de Visual Studio 2010 ................................................... 67
4.- Conclusiones.................................................................................................................................................70
APLICACIONES WEB ................................................................................................ 71
1.- Introduccin ..................................................................................................................................................71
2.- Concepto de Aplicacin Web ...............................................................................................................72
v
3.4.5.6.-
COLECCIONES DE SITIOS.......................................................................................... 93
1.- Introduccin ................................................................................................................................................. 93
2.- Concepto de Coleccin de Sitios ........................................................................................................ 94
2.1.- Creacin y configuracin de Colecciones de Sitio ............................................... 94
2.2.- Plantillas de cuota y bloqueo .................................................................................... 101
2.3.- Confirmar el uso y la eliminacin del sitio ............................................................ 103
2.4.- Creacin de sitios sin intervencin del administrador ...................................... 105
3.- Creacin, configuracin y uso de Colecciones de Sitios desde el Modelo de Objetos 106
4.- Creacin, configuracin y uso de Colecciones de Sitios desde lnea de comandos.......111
5.- Soluciones Sandbox .................................................................................................................................113
5.1.- Creacin de soluciones Sandbox desde Visual Studio ....................................... 118
5.2.- Manejo de Soluciones Sandbox desde lnea de comandos ............................... 120
6.- Bases de Datos de Contenidos...........................................................................................................121
7.- Conclusiones ..............................................................................................................................................124
SITIOS .................................................................................................................... 125
1.- Introduccin ...............................................................................................................................................125
2.- Concepto de Sitio ....................................................................................................................................126
3.- Creacin, configuracin y uso de Sitios desde la Interfaz de Usuario .................................127
4.- Creacin, configuracin y uso de Sitios desde el Modelo de Objetos ................................138
4.1.- Creacin de plantillas de Sitio con Visual Studio 2010 ..................................... 144
5.- Creacin, configuracin y uso de Sitios desde la Lnea de Comandos................................150
6.- Conclusiones ..............................................................................................................................................152
LISTAS Y BIBLIOTECAS ........................................................................................... 153
1.- Introduccin ...............................................................................................................................................153
2.- Creacin, configuracin y uso de Listas desde la interfaz de usuario ..................................154
3.- Uso del Modelo de Objetos para crear y configurar Listas .....................................................160
4.- Uso de la Lnea de Comandos con Listas .......................................................................................169
5.- Creacin de Definiciones de Listas usando Visual Studio 2010 .............................................171
6.- Conclusiones ..............................................................................................................................................172
TIPOS DE CONTENIDO Y COLUMNAS DE SITIO....................................................... 173
1.- Introduccin ...............................................................................................................................................173
2.- Columnas de Sitio ....................................................................................................................................174
3.- Tipos de Contenido ................................................................................................................................178
4.- Gestin y uso desde el Modelo de Objetos ..................................................................................183
5.- Gestin y uso desde SharePoint Designer .....................................................................................190
6.- Creacin desde Visual Studio 2010...................................................................................................192
7.- Columnas de bsqueda ..........................................................................................................................194
8.- Columnas Personalizadas ......................................................................................................................200
9.- Conclusiones ..............................................................................................................................................204
Contenido vii
Contenido ix
3.4.-
5.6.7.-
Contenido xi
Prlogo
Tengo que decirlo, SharePoint es uno de esos productos que no dejan a nadie
indiferente. Desde que empec a trabajar con l (entonces se denominaba SharePoint
Portal Server 2003 y yo todava no trabajaba en Microsoft) establec con este producto
una relacin de amor-odio. Desde el punto de vista de usuario era ya por aquel
entonces algo muy novedoso ya que permita que cualquier persona, sin especiales
conocimientos de informtica, pudiera colaborar y compartir informacin de una forma
mucho ms efectiva y sencilla. Pero yo trabajaba en una consultora y muchos clientes
queran migrar su Intranet a SharePoint, unificando as toda su gestin documental e
integrando tambin aplicaciones de autoservicio para los empleados como
visualizacin de la nmina, control horario, etc. lo que requera extender el producto.
Para alguien que vena de hacer sus pinitos en .NET, el paso a desarrollar sobre
SharePoint 2003 tengo que decir que no fue sencillo. En lugar de trabajar directamente
contra una base de datos, tena que aprender a manejar un API (en forma de DLLs y
Servicios Web). En lugar de desarrollar pginas ASP.NET, tena que desarrollar
WebParts. En lugar de arrastrar controles a mi pgina, tena que generarlos por cdigo.
En lugar de depurar mi cdigo con F5, tena que compilar la WebPart, empaquetarlo,
copiarlo al servidor, instalarlo en el sitio web, agregarlo a mi pgina y unos cuantos
pasos ms que prefiero olvidar
Pocos aos despus se present Microsoft Office SharePoint Server 2007 (MOSS
2007) y Windows SharePoint Services 3.0 (WSS 3). Tuve la suerte de participar en la
Beta de esta versin que contaba con importantes novedades como .NET 3.0, las
capacidades de CMS, flujos de trabajo mejorados, etc. Aunque la migracin desde
2003 no era tarea sencilla, la gran mayora de clientes se pasaron a esta nueva versin
ya que les ofreca una excelente plataforma de colaboracin y gestin de contenidos.
Sin embargo, los desarrolladores de SharePoint seguan siendo bichos raros,
acostumbrados a entender crpticos lenguajes como CAML y a montarse complicados
entornos de desarrollo.
Pero atrs quedaron esas aventuras y SharePoint ha sobrepasado con mucho todas
las previsiones que tena Microsoft cuando sac la primera versin de este producto
all por el ao 2001. Aqu tenis algunos datos interesantes:
Luis Panzano
blogs.msdn.com/LuisPanzano
Partner Developer Evangelist, Microsoft Ibrica
Presentacin
Actualmente, SharePoint no necesita introduccin. Hace algunos aos era
indispensable siempre que se comenzaba a hablar sobre el servidor, primero aclarar
cul era su funcin y como encajarlo en la estrategia de software de Microsoft. Ya no
es necesario convencer a las empresas de la necesidad de implementar un sistema de
colaboracin como SharePoint, sino que la discusin se dirige hacia cuales de sus
capacidades son las ms apropiadas para solucionar un problema empresarial
especifico.
Y no solo empresas con multitud de empleados, sino tambin cualquier grupo de
personas que necesiten intercambiar informacin de una forma ordenada y consecuente
ven la necesidad y ventajas de SharePoint. Para la realizacin de este libro, por
ejemplo, no solamente los autores sino todas las personas relacionadas con el proyecto
utilizamos SharePoint como el centro para mantener la informacin de una forma
segura, fomentar el intercambio de ideas y evitar confusiones.
SharePoint 2010 con su versin base, SharePoint Foundation, y la versin
empresarial, SharePoint Server, constituyen la plataforma de colaboracin y
comunicacin de Microsoft, dirigidas a la gestin de informacin, el almacenamiento y
localizacin de documentos, la creacin de sitios de presencia Web y el sistema de
visualizacin y manejo de informacin de negocios por medio de la infraestructura de
Flujos de Trabajo, la conexin a sistemas de informacin externos y las herramientas
de Inteligencia de Negocios.
Pero SharePoint 2010 va mucho ms all, convirtindose en una plataforma de
desarrollo debido a su Modelo de Objetos abierto, tanto en servidor como en cliente,
que permite extender el sistema segn los requerimientos explcitos de los usuarios. De
esta forma, SharePoint no es un producto esttico que cumple una sola funcin, sino un
sistema dinmico que permite ser extendido en cualquier direccin que se considere
necesaria.
Qu temas se tratan?
El libro est orientado hacia la configuracin, uso y programacin de SharePoint
2010, pero solo son necesarios conocimientos bsicos de desarrollo en .NET para la
parte de programacin. Desde la base de la plataforma, SharePoint Foundation, se van
desgranando cada una de las capacidades adicionales que SharePoint Server le aade.
El primer captulo enumera los requerimientos de hardware y software, los pasos
necesarios para realizar una instalacin bsica, aspectos relativos a su administracin a
travs de la Administracin Central de SharePoint y la interfaz de lnea de comandos
mediante el uso de PowerShell, as como las opciones de actualizacin disponibles
desde SharePoint 2007.
Las herramientas necesarias para el desarrollo se introducen en el captulo 2 junto a
las novedades que ofrece Visual Studio 2010, que facilitan sobremanera el desarrollo
por medio de una serie de plantillas y despliegue de WebParts, Manejadores de
Eventos, Flujos de Trabajo, Definiciones de Lista, etc.
Los siguientes cinco captulos describen los componentes bsicos de SharePoint, su
configuracin y uso, junto con las posibilidades de programacin que brinda el Modelo
de Objetos en el servidor partiendo de la jerarqua 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 captulo 8 se centra en el nuevo Modelo de Objetos en cliente, con sus tres
implementaciones, .NET, Silverlight y ECMAScript, ms el API de servicios REST
que expone las Listas y Bibliotecas de un Sitio mediante un servicio de WCF.
Las posibilidades que ofrece SharePoint para automatizar procesos y modelar
procedimientos de negocio a travs de los Manejadores de Eventos y los Flujos de
Trabajo se describen en los captulos 9 y 11. El captulo 11, sobre Flujos de Trabajo,
detalla las posibilidades de uso y creacin de flujos mediante Microsoft Office Visio
2010, SharePoint Designer 2010 y Visual Studio 2010.
SharePoint Designer, como la herramienta clave para los Trabajadores de la
Informacin, se analiza extensivamente en el captulo 10. A lo largo del captulo se
explican las posibilidades que ofrece para crear elementos de SharePoint, personalizar
soluciones, ensamblar Flujos de Trabajo y dems aspectos interesantes del programa.
El captulo 12 se centra en las posibilidades que ofrece SharePoint 2010 para
personalizar al mximo la interfaz de usuario mediante el uso de temas, hojas de estilo
y las posibilidades de personalizacin que aade el Modelo de Objetos.
SharePoint 2010 dispone del uso de bloques de funcionalidad o WebParts como
mecanismo adicional para cambiar el aspecto y funcionamiento de Sitios de
SharePoint. El captulo 13 describe algunas de las WebParts ms importantes
disponibles por defecto y como crear nuevas desde Visual Studio.
Presentacin xvii
Herramientas y Entorno
En general, escribir un libro sobre la ltima versin de una plataforma o
tecnologa recin 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 instalacin en modo granja de la versin Ready
To Manufacture (RTM) en castellano de SharePoint Server 2010. Todos los ejemplos
de cdigo incluidos se han creado en la versin en castellano de la RTM de Visual
Studio 2010 Ultimate. Para los captulos de SharePoint Designer 2010 y Visio 2010 se
han utilizado tambin las versiones RTM en castellano. Finalmente, para los captulos
relativos a InfoPath, Servicios de Access y Servicios de Excel se han utilizado las
versiones
presentes
en
la
suite
de
Microsoft
Office
2010.
CAPTULO
Aplicaciones Web
1.- INTRODUCCIN
El concepto de Aplicacin Web en la plataforma SharePoint difiere del significado
que se le suele asociar en el mundo del desarrollo de software: una aplicacin que el
usuario puede utilizar sin ms que especificar su URL en un explorador web. De
manera general se puede definir una Aplicacin Web como un sitio web de Internet
Information Services (IIS) al que se le aplican las extensiones de SharePoint. A su
vez, una Aplicacin Web es un contenedor de una o ms Colecciones de Sitios que
suponen los puntos de entrada para que los usuarios interacten con el sistema y la
informacin que contiene. Finalmente, las Aplicaciones Web se apoyan sobre una o
ms bases de datos (BDs) de contenidos que almacenan elementos como Colecciones
de Sitios, Sitios, Listas, Bibliotecas de Documentos, documentos de distintos tipos, y
en general, cualquier tipo de informacin.
SharePoint 2010 presenta varias novedades en el trabajo con Aplicaciones Web
relativas al proceso de creacin de las mismas desde la interfaz de usuario o la interfaz
de lnea de comandos utilizando los comandos PowerShell correspondientes y en una
administracin ms sencilla y renovada.
71
Nota:
Los directorios raz de IIS para Aplicaciones Web de SharePoint se pueden encontrar
en la ruta del servidor web: C:\inetpub\wwwroot\wss\VirtualDirectories. Si accede
a dicha ruta, se puede comprobar que se ha creado una carpeta fsica por cada
directorio virtual de IIS correspondiente a una Aplicacin web de SharePoint.
3.- CREACIN,
CONFIGURACIN
Y
USO
APLICACIONES WEB DESDE LA INTERFAZ
USUARIO
DE
DE
Aplicaciones Web 73
Parmetro
Autenticacin
Nombre
Descripcin
Identifica el mecanismo de
autenticacin utilizado en la
Aplicacin Web.
Identifica en el IIS la
Aplicacin Web que se est
Valor de ejemplo
Autenticacin de modo
clsico (valor por defecto).
SharePoint 85.
Puerto
Ruta de acceso
Proveedor de
autenticacin
Direccin URL
pblica
Grupo de
Aplicaciones
Servidor de base de
datos
Nombre de la base
de datos
Servidor de base de
datos de
conmutacin por
error
Search Server
Conexiones de la
aplicacin de
servicio
creando.
Indica el nmero de puerto que
canaliza
las
peticiones
derivadas a la Aplicacin
Web.
Ruta fsica en el servidor que
contiene varios de los archivos
de la Aplicacin Web
Identifica el proveedor de
autenticacin que se utiliza
para acceder a los Sitios que
cuelguen bajo la Aplicacin
Web.
Identifica la Aplicacin Web
que se va a crear.
Indica el grupo de aplicaciones
bajo el que se ejecutar la
Aplicacin Web.
Contiene el nombre del
servidor de BD
Nombre de la BD a crear.
Indica el nombre del servidor
de
BD
de
respaldo
(configurado
en
modo
mirroring a utilizar en el
caso de cada del servidor
principal.
Contiene el nombre del
servidor de bsqueda asociado
a la Aplicacin Web.
Define
el
grupo
de
Aplicaciones de Servicio que
van a ser utilizadas por la
Aplicacin Web.
85.
http://<Servidor>:85
Nombre: SharePoint 85.
Cuenta de seguridad: Una
con los mnimos
privilegios posibles.
<Servidor_BD>.
WSS_Content_85.
<Servidor_BD_Respaldo>.
<Servidor_Busqueda> /
<Servicio_Busqueda>.
Deje la opcin por defecto:
predeterminado.
Aplicaciones Web 75
Una vez que se han indicado los parmetros necesarios para crear la
Aplicacin Web, pulse el botn Aceptar. A continuacin se inicia el proceso
de creacin de la Aplicacin Web que concluye (siempre que no se produzca
un error) mostrando un mensaje en el que se indica que la Aplicacin Web se
ha creado con xito y cul es el siguiente paso a seguir: crear una Coleccin de
Sitios.
Aplicaciones Web 77
Del mismo modo que se puede crear o modificar una Aplicacin Web, la interfaz de
usuario de SharePoint 2010 permite eliminar de forma directa una Aplicacin Web
existente pulsando la opcin Eliminar disponible en la Cinta. Note que se dispone de
dos opciones que permiten borrar la Aplicacin Web completa (opcin Eliminar una
aplicacin web) o bien nicamente el sitio de IIS asociado (opcin Quitar SharePoint
del sitio web de IIS). En el primer caso se abrir una ventana modal en la que
podremos especificar cmo realizar el borrado de la Aplicacin Web (Figura 4):
Aplicaciones Web 79
Aplicaciones Web 81
Figura 6.- Ventana modal para la gestin de los tipos de archivos bloqueados.
Aplicaciones Web 83
Control total.
Denegar escritura.
4.- CREACIN,
CONFIGURACIN
Y
USO
APLICACIONES WEB DESDE EL MODELO
OBJETOS
DE
DE