Sección personalizada de configuración administración central de Sharepoint 2007

En el artículo publicado el día 18/04/2009, Sección de configuración en configuraciones del sitio– WSS 3.0 y MOSS 2007 estuvimos hablando de cómo podíamos una sección de configuración personalizada dentro de las configuraciones del sitio de Sharepoint, como podemos ver en la imagen 1.

[Imagen 1]
clip_image002

En esta oportunidad lo que vamos hacer es crear una sección personalizada de configuración pero dentro de sección “Configuración de Aplicaciones” de la administración central de nuestra instalación Sharepoint 2007.
Para crear esta sección, lo primero que vamos hacer es crear una característica de Sharepoint para que la misma sea instalada en el portal web de nuestra administración central. Esta característica, lo que posibilitara es activar o desactivar la misma según nuestras necesidades, en la imagen 2 podemos ver la característica instalada en nuestro portal web de la administración central de Sharepoint.

[Imagen 2]
clip_image004

Comencemos por analizar el archivo elements.xml que es el archivo donde se encuentra el nodo Elements que es donde vamos a definir toda nuestra sección personalizada de configuración. El archivo feature.xml, podemos dejar el que se nos crea por defecto cuando creamos un feature usando el template de Visual Studio 2008. En la sección 1 podemos ver el código completo del XML para crear la sección personalizada y sus opciones de configuración.

[Sección 1]

<Elements xmlns="http://schemas.microsoft.com/sharepoint/">
  <CustomActionGroup
  Id="63418BE2-75A9-4fc2-88CC-21BBE7B3BB63"
  Title="Custom Administration Setting"
  Location="Microsoft.SharePoint.Administration.ApplicationManagement"
  Sequence="110">
  </CustomActionGroup>
  <CustomAction
  Id="F85ED83E-45DA-4467-9DA2-56F376BF7A88"
  Title="Configuracion 1"
  Location="Microsoft.SharePoint.Administration.ApplicationManagement"
  GroupId="63418BE2-75A9-4fc2-88CC-21BBE7B3BB63"
  Sequence="120"
  RequireSiteAdministrator="FALSE">
    <UrlAction Url="_admin/Siderys/CustomAdminSettings.aspx"/>
  </CustomAction>
  <CustomAction
  Id="E33599E2-E1C3-48c3-BCEB-9B36BD596C25"
  Title="Configuracion 2"
  Location="Microsoft.SharePoint.Administration.ApplicationManagement"
  GroupId="63418BE2-75A9-4fc2-88CC-21BBE7B3BB63"
  Sequence="130"
  RequireSiteAdministrator="FALSE">
    <UrlAction Url="_admin/Siderys/CustomAdminSettings.aspx"/>
  </CustomAction>
</Elements>

Lo primero que tenemos que hacer es crear un nodo llamado CustomActionGroup, que es el que definirá nuestra sección personalizada, al mismo tenemos que asignarle valor a los siguientes atribtutos:

  • Id = Identificador, en esta caso utilizamos un guid.
  • Title = Texto que queremos que aparezca como titulo de la sección de configuración.
  • Location = En este caso, vamos a definir en qué sección de nuestra administración central deseamos que aparezca.
  • Sequence = Valor numérico para indicar en qué posición deseamos que aparezca dentro de la sección configurada, cuanto más grande es el número, mas hacia el final se cargara nuestra sección.

Los próximos dos nodos que se muestran en el archivo XML, son las dos opciones de configuración que estamos creando, para lo cual para cada opción de configuración que queremos crear debemos definir el elemento CustomAction, a continuación se detallan los atributos que se deberían cargar para el nodo.

  • Id = Identificador, en esta caso utilizamos un guid.
  • Title = Texto que queremos que aparezca como titulo de la sección de configuración.
  • Location = En este caso, vamos a definir en qué sección de nuestra administración central deseamos que aparezca.
  • GroupId = El id del grupo donde queremos que aparezca la sección de configuración, en este caso, vamos a colocar el Id establecido para el nodo CustomActionGroup, puesto que queremos que aparezca en dicho sección.
  • RequireSiteAdministrator = Acá debemos establecer si se tiene que ser administrador de la colección de sitios para poder acceder a dicha opción de configuración.
  • UrlAction = Sub nodo dentro del nodo CustomAction y que el único atributo que vamos a establecer es URL, donde vamos a indicar la ruta relativa a nuestra página de configuración.

Una vez realizados los cambios y las modificaciones que nosotros queremos, lo próximo que vamos hacer es crear nuestra página de configuración que será cargada cuando el usuario seleccione nuestra opción. A diferencia de los artículos anteriores, la página deberá estar instalada en una sección específica del servidor, ya que todas las páginas de configuración de la administración central, se ejecutan en un contexto diferente a la que usamos en la configuración del sitio. También tenemos que cambiar la herencia de la clase que implementa el código de la página, puesto que dicha clase debe heredar de la clase de Sharepoint llamada ApplicationsManagementPage que se encuentra en el espacio de nombre Microsoft.SharePoint.ApplicationPages y que está dentro del ensamblado llamado Microsoft.SharePoint.ApplicationPages.Administration.dll

En la imagen 3 podemos ver nuestra sección personalizada dentro la administración central de Sharepoint.

[Imagen 3]

clip_image006

La imagen 4 nos muestra la pagina de configuración ejecutándose cuando uno de los usuarios presione una de las opciones (para este ejemplo, las dos opciones cargan la misma página de configuración) de nuestra sección personalizada.

[Imagen 4]

clip_image008

Una vez que tenemos todo pronto y empaquetado, vale la pena destacar que estamos subiendo todo a nuestro portal de Sharepoint mediante un WSP, lo que tenemos que hacer es instalar todo, para lo cual, en la sección 2 les dejo el código del archivo bat que estoy utilizando para instalar la solución en el servidor y activar la característica, lo que deben hacer ustedes es cambiar el valor de la variable llamada URL y poner la ruta de la administración central donde quieren instalar dicha característica.

[Sección 2]

@echo off

set URL=http://<Servidor>/

set STSADM="C:Program FilesCommon Files

Microsoft SharedWeb Server Extensions12BINstsadm.exe"

set SOLUTION_NAME= WspAddGroupSectionAdminSettings.wsp

set FEATURE_NAME= AddGroupAdminSetting

echo *

echo * Installing solution… ‘%SOLUTION_NAME%’

echo *

%STSADM% -o addsolution -filename %SOLUTION_NAME%

echo *

echo * Activating solution … ‘%SOLUTION_NAME%’in %URL%

echo *

%STSADM% -o deploysolution -name %SOLUTION_NAME%

-url %URL% -immediate -allowGacDeployment –force

%STSADM% -o execadmsvcjobs

iisreset

rem ***********************************************

echo *

echo * Activating feature… ‘%FEATURE_NAME1%’ in ‘%URL%’

echo *

%STSADM% -o activatefeature -name %FEATURE_NAME% –url

%URL% –force

echo *

echo * Install Completed.

echo *

Dentro de la solución que se pueden descarga, encontraran un bat llamado unistallSolution.bat, que desinstala la característica y remueve la solución completa del nuestro Sharepoint.

clip_image009

Descargar Solución Completa con Instalador

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *