SharePoint 2010 & Office 365: Uso de la OWA WebPart programáticamente!

De nuevo una pregunta, que ya surgió en tiempos de SharePoint 2007, en torno a la extensibilidad de la plataforma es la de si podemos de alguna forma usar WebParts existentes dentro de nuestras propias WebParts para poder por ejemplo configurar de forma dinámicas las propiedades que expone en su panel de herramientas. La respuesta es que sí, así por ejemplo podremos usar dentro de nuestra WebParts otras existentes por defecto como el PageViewer o la OWA WebPart entre otras. En torno a este tema se pueden encontrar varios artículos bastante explicativos como:

Algo importante, y de ahí este post, es que usar un WebPart de SharePoint dentro de nuestra WebPart en la práctica implica que estamos usando un control propio de SharePoint  en nuestra WebPart. La implicación de este echo es que no podremos usar WebParts existentes dentro de WebParts que vayamos a desplegar en modo Sandbox ya que a día de hoy sólo se permiten usar controles ASP.NET y no controles propios de SharePoint. Por lo tanto, no tendremos este escenario de uso de WebParts existentes en SharePoint Online (SPO) dentro de Office 365 (al menos de momento). Por lo tanto, lo primero que tendremos que hacer en nuestra solución es asegurarnos que el tipo de despliegue para la misma es SandBox:

image

A partir de aquí, usar por ejemplo la WebPart de OWA de SharePoint 2010 (Server) es tan sencillo como:

   1: using System;

   2: using System.ComponentModel;

   3: using System.Web;

   4: using System.Web.UI;

   5: using System.Web.UI.WebControls;

   6: using System.Web.UI.WebControls.WebParts;

   7: using Microsoft.SharePoint;

   8:  

   9:  

  10: using Microsoft.SharePoint.Portal.WebControls;

  11:  

  12: using Microsoft.SharePoint.WebControls;

  13:  

  14: namespace UCOWADemo.OWAWebPart

  15: {

  16:     [ToolboxItemAttribute(false)]

  17:     public class OWAWebPart : WebPart

  18:     {

  19:         protected override void CreateChildControls()

  20:         {

  21:             Label lblDatos = new Label();

  22:  

  23:             var owaIPinbox = new OWAInboxPart {

  24:                 MailboxName="mycorreo@miempresa.com",

  25:                 OWAServerAddressRoot = "https://<Direccion_OWA>"

  26:             };

  27:  

  28:             this.Controls.Add((Control)owaIPinbox);

  29:         }

  30:     }

  31: }

Y hasta aquí llega este artículo sobre como usar WebParts existentes de SharePoint en nuestras propias WebParts.

Publicado por

Juan Carlos González

Juan Carlos es Ingeniero de Telecomunicaciones por la Universidad de Valladolid y Diplomado en Ciencias Empresariales por la Universidad Oberta de Catalunya (UOC). Cuenta con más de 12 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 & Office 365. Juan Carlos es MVP de Office Servers & Services desde 2015 (anteriormente fue reconocido por Microsoft como MVP de Office 365 y MVP de SharePoint Server desde 2008 hasta 2015), coordinador del grupo de usuarios .NET de Cantabria (Nuberos.Net, www.nuberos.es), co-fundador y coordinador del Grupo de Usuarios de SharePoint de España (SUGES, www.suges.es), así como co-director de la revista gratuita en castellano sobre SharePoint CompartiMOSS (www.compartimoss.com). Hasta la fecha, ha publicado 8 libros sobre SharePoint & Office 365 y varios artículos en castellano y en inglés sobre ambas plataformas.

Un comentario en “SharePoint 2010 & Office 365: Uso de la OWA WebPart programáticamente!”

Deja un comentario

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