SharePoint 2010: Como provisionar una DataFormWebPart existente!

Cómo sabéis, SharePoint Designer 2010 (SPD 2010) nos permite crear de forma sencilla vistas de datos a partir de orígenes de datos diversos como BD’s SQL (incluyendo SQL Azure), servicios web, servicios REST  o listas / bibliotecas de SharePoint. Estas vistas de datos se pueden personalizar vía transformaciones XSL…ahora bien, en el caso de que haga uso de estas vistas de datos a través de la DataFormWebPart: ¿Cómo puedo hacer que sean re-utilizables? Pues como siempre, paquetizándola si es posible:

  • En primer lugar, creamos una página de WebParts en el sitio de trabajo y desde SPD 2010 añadimos la vista de datos que personalizamos a nuestro gusto.
  • Guardamos los cambios y visualizamos la página de WebParts. A través de la pestaña de edición de la WebPart, podremos descargarnos el archivo .webpart que contiene toda la definición de la vista de datos.
  • Este archivo de datos lo vamos a llevar a una solución de Visual Studio 2010 RC (VS 2012 RC) que contenga un elemento de tipo Module en un proyecto de tipo SharePoint 2010 Project.
image image image
  • Este elemento de tipo Module nos permitirá desplegar el archivo .WebPart (cuyo contenido os recomiendo revisar) a la galería de WebParts de la colección de sitios dónde reside nuestro sitio.
  • En VS 2012 RC nos tenemos que dar cuenta de cambiar el ámbito de la característica correspondiente a Site (Colección de Sitios).
  • Tendremos también que modificar el archivo Elements.xml del módulo para especificar que vamos a provisionar un archivo .webpart en la galería de WebParts de forma que en tiempo de edición de la página de WebParts podamos insertarla WebPart en nuestra página.
image image image
  • La definición del archivo elements.xml tiene que ser como sigue. Como veis, en el atributo <Module tenemos que especificar que el destino del archivo .webpart es la galería de WebParts, cuya url relativa es _catalogs/wp.
   1: <?xml version="1.0" encoding="utf-8"?>

   2: <Elements xmlns="http://schemas.microsoft.com/sharepoint/">

   3:   <Module Name="SPDFWPModuleImporter" List="113" Url="_catalogs/wp">  

   4:       <File Path="SPDFWPModuleImporter\SQL_Azure_DS.webpart" Url="SQL_Azure_DS.webpart" Type="GhostableInLibrary" >

   5:       <Property Name="Group" Value="Azure WebParts" />

   6:     </File>

   7: </Module>

   8: </Elements>

  • Añadimos la WebPart a la página de WebParts y comprobamos que muestra la información del origen de datos de la misma forma que la vista de datos insertada desde SPD 2010.

image

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión /  Cambiar )

Google photo

Estás comentando usando tu cuenta de Google. Cerrar sesión /  Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión /  Cambiar )

Conectando a %s