jueves, 8 de octubre de 2009

Control RIBBON de SharePoint Services 14 y SharePoint Server 2010: Agregar Botones

La próxima versión de SharePoint nos trae impresionantes y nuevas características entre ellas el Ribbon, que ha sido incluido en la intefaz de usuario tanto para Windows SharePoint Services 14 como de Microsoft SharePoint Server 2010. Este vistoso control puede ser extendido mediante la infraestructura de características o "Features", en este artículo explicaré como agregar un botón dentro del Ribbon.

Antes que nada debo comentar que la arquitectura del Ribbon tiene como objetos de primer nivel "Tabs" los cuales aparecen en el tope de la página de SharePoint. Cada TAB tiene a su vez conjuntos de "Grupos", los cuales pueden contener una colección de controles, entre ellos BOTONES.

Para desplegar una nueva característica del Ribbon es necesario crear e instalar un archivo XML donde se define el alcance y la información respecto de la característica, este archivo deberá ser nombrado como: "Feature.xml", un ejemplo de un archivo Feature.xml seria:

<?xml version="1.0" encoding="utf-8" ?>
<Feature Id="FeatureId" Title="Name of the Feature" Description="Descripcion de la caracteristica" Version="1.0.0.0" Scope="Web" xmlns="http://schemas.microsoft.com/sharepoint/">
<ElementManifests>
<ElementManifest Location="manifest.xml" />
</ElementManifests>
</Feature>

Como podemos notar cada archivo Feature.xml va a acompañado respectivamente de un archivo manifest.xml, el cual especifica la creación del control dentro del TAB y grupo que se especifiquen.

Para instalar la característica ejecutamos el siguiente comando en el Windows PowerShell:

Install-SPFeature FeatureId

Enable-SPFeature FeatureId -Url http://server/site/subsite

Donde el "FeatureId" será el ID que le asignemos a la característica. Luego de instalar una nueva característica mediante Windows PowerShell debemos reiniciar el IIS ejecutando la siguiente línea en la ventana de comandos:

iisreset

AGREGAR UN BOTON AL RIBBON

Para agregar un botón al Ribbon:

1) Crear una carpeta llamada "AgregarBoton" en la ruta: %ProgramFiles%\Common Files\Microsoft Shared\web server extensions\14\TEMPLATE\FEATURES.

2) En esta ubicación creamos el archivo featurexml como lo hemos descrito arriba.

3) Creamos el archivo XML manifest.xml siguiendo esta guía:

<?xml version="1.0" encoding="utf-8"?>
<Elements xmlns="http://schemas.microsoft.com/sharepoint/">
<CustomAction Id="Ribbon.Library.Actions.AddAButton" Location="ViewToolbar" RegistrationId="101" RegistrationType="List" Title="Agrega un boton al Ribbon">
<CommandUIExtension>
<CommandUIDefinitions>
<CommandUIDefinition Location="Ribbon.Library.Actions.Controls._children">
<Button Id="Ribbon.Library.Actions.NewRibbonButton"Command="NewRibbonButtonCommand" Image16by16="/_layouts/images/FILMSTRP.GIF" Image32by32="/_layouts/images/PPEOPLE.GIF" LabelText="New Button" TemplateAlias="o2" />
</CommandUIDefinition>
</CommandUIDefinitions>
<CommandUIHandlers>
<CommandUIHandler
Command="NewRibbonButtonCommand"
CommandScript="javascript:alert('este es un nuevo botón!');" />
</CommandUIHandlers>
</CommandUIExtension>
</CustomAction>
</Elements>

Este XML agrega un botón en el TAB de la librería en el grupo "Actions", luego de personalizarlo con nuestros datos lo guardamos como manifest.xml.

4) Instalamos la nueva característica usando Windows PowerShell como lo indicamos al principio.

5) Para probar la nueva característica navegamos hasta la librería de documentos en el sitio o sub-sitio, hacemos clic en el TAB "Library", buscamos en el grupo "Actions" y hacemos clic en el botón "New Button".

Este articulo esta basado en la documentación liberada hace un par de meses como: “SharePoint Products and Technologies: 2010 (Technical Preview) Developer Documentation” y la misma puede ser descargada junto con un vista previa del SDK para esta nueva versión SharePoint Services 14 desde este enlace de Microsoft: http://www.microsoft.com/downloads/thankyou.aspx?familyId=94afe886-3b20-4bc9-9a0d-acd8cd232c24&displayLang=en

No hay comentarios:

Publicar un comentario