WSS vs MOSS

9 November 2009 at 3:45 AM Leave a comment

En dias recientes he estado trabajando con dos proyectos de Windows SharePoint Services (WSS), algo que no habia hecho antes, y me topé con varias cosas que no sabía que estaban “fuera del alcance” de WSS en comparación con MOSS.

Hay varios blogs que hablan sobre las diferencias puntuales que hay entre WSS y MOSS, pero les quiero comentar sobre las pocas con las que me he topado en estos proyectos, y cómo las solucioné :)

Creación de sitios. Hay varias plantillas de sitios que puedes bajar e instalar para WSS, pero lo que no vas a encontrar es la plantilla de publicación. Ésto es algo que sólo MOSS tiene, por lo que tendras que trabajar con las plantillas de colaboración que provee WSS, como los “Team Sites“.

Site manager. Esta es una de las cosas que daba por hecho al usar MOSS, el personalizar la navegación y el “look and feel” con simples dropdowns, etc. Con WSS, lo unico que tienes es un editor de “top navigation” y del “quick launch” y esta es toooda la navegación que necesitas. Para el cambio del tema que propone SharePoint out-of-the-box, como el default, wheat, etc, puedes cambiar la masterpage que tiene el sitio (default.masterpage) y listo, le das el estilo que quieras. Si además quieres que todo el sitio (incluyendo las páginas de aplicación, que usan el “application.master”) tenga tu nuevo tema, puedes hacer uso de un pequeño truco, usando un HTTPModule en el archivo web.config de tu sitio, y un pequeño código como el siguiente:

using System;
using System.Web;
using System.Web.UI;
using System.IO;

namespace ChangeAppMaster
{
public class MasterPageModule : IHttpModule
{
public void Init(HttpApplication context)
{
context.PreRequestHandlerExecute += new EventHandler(context_PreRequestHandlerExecute);
}
void context_PreRequestHandlerExecute(object sender, EventArgs e)
{
Page page = HttpContext.Current.CurrentHandler as Page;
if (page != null)
{
page.PreInit += new EventHandler(page_PreInit);
}
}
void page_PreInit(object sender, EventArgs e)
{
Page page = sender as Page;
if (page != null)
{
if (page.MasterPageFile != null)
{
if (page.MasterPageFile.Contains(“application.master”))
{
page.MasterPageFile = “/_catalogs/masterpage/CustomApplication.master“;
}
}
}
}

public void Dispose()
{
}
}
}

Tienes que crear un archivo “masterpage” en tu galería, llamado “CustomApplication.master” (o el nombre que tú elijas, siempre que cambies esta información en el código de arriba) y luego de copiar la librería de código en el GAC, se tiene que agregar algo como esto en el archivo web.config:

<httpModules>

<add name=”AppMasterChange” type=”MasterPageModule, MasterPageModule, Version=1.0.0.0, Culture=neutral, PublicKeyToken=3ndu7331dkm11783″/>
</httpModules>

Workflows. Algo que no he solucionado aun, es el uso de workflows de aprobación, que vienen por default en MOSS, y que WSS no trae. Lo único que he hecho es activar la aprobación un elemento cada vez que se sube a una libreria/lista, y eso es todo.

Content Query Web Part. Uno de los web parts más versátiles es sin duda el Content query web part (CQWP), sin embargo, solo MOSS tiene la version de este elemento, y en WSS lo que podemos utilizar es XML para imitar el comportamiento de este web part.

En fin, supongo que hay otras limitantes con WSS, pero hasta el momento, en estas dos semanas de trabajar en mis proyectos, las más importantes han sido las que les acabo de comentar :P

Espero que les sirvan… saludos!

Advertisement

Entry filed under: How to, Microsoft Office SharePoint Services, MOSS, SharePoint, SharePoint Español, Windows SharePoint Services, WSS. Tags: , , , .

Como crear tu Blog personalizado en SharePoint Como crear una carpeta con imagen en una librería de SharePoint

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Connecting to %s

Trackback this post  |  Subscribe to the comments via RSS Feed


Feeds

Enter your email address to subscribe to this blog and receive notifications of new posts by email.


Follow

Get every new post delivered to your Inbox.