jueves 19 de noviembre de 2009

Macro actualizar campos Ms Word

Algo muy común cuando usamos Sharepoint, sobretodo WSS para intranets, es tener plantillas de documentos con campos en los que se muestran algunos metadatos del ítem.

El otro día me comentó un cliente que estos campos no se actualizaban automáticamente y muchos usuarios guardaban el documento sin actualizar los campos, lo cual era un problema para ellos. La solución fue práctiacamente instantánea; una macro que actualice dichos campos al abrir el documento de forma automática:

 Dim rango As Range 
Dim campo As Field
For Each rango In ActiveDocument.StoryRanges
For Each campo In rango.Fields
campo.Update
Next campo
Next rango

Espero que os resulte útil.

Un saludo.

Subir archivos grandes a Sharepoint

El otro día me encontré con una migración de documentos de un gestor documental a Sharepoint. Sabía que por defecto, el tamaño máximo de los archivos que puedes subir es 50 mb pero a pesar de haber cambiado esto el proceso no funcionaba como debía. Buscando un poco vi que había que modificar un par de cosillas más y tras este cambio funcionó todo perfectamente.

Para poder subir arhivos grandes (en mi caso los más grande tiene unos 500 mb) hay que realizar otros dos cambios:

  • Incrementar el tiempo de espera de la aplicación en el IIS (en la pestaña sitio web, apartado conexiones).
  • Modificar en el web.config, dentro del apartado System.Web, los atributos executionTimeout y maxRequestLength de la etiqueta httpRuntime:



domingo 25 de octubre de 2009

SPQuery no filtra, devuelve todos los elementos de la lista

Cuando usamos un objeto de SPQuery para filtrar elementos de una lista con el método GetItems(query) y éste nos devuelve todos los elementos de la lista no es porque el método falle sino porque nuestra consulta está mal.

Para construir las querys hay un programa muy útil de U2U llamado Caml Query Builder, pero hay que tener cuidado, ya que este programa devuelve la query incluyendo la etiqueta <query></query> y si queremos que la consulta funcione debemos quitarla, es decir, debería quedar así:


SPQuery query = new SPQuery();

query.Query = "Item1";

SPListItemCollection collItems = list.GetItems(query);

Un saludo.

miércoles 23 de septiembre de 2009

Cómo escribir en el event log

Escribir una entrada en el event log es tan simple como:

System.Diagnostics.EventLog.WriteEntry("Source", "Message");

Si queremos usar esto para mostrar excepciones, podemos poner el siguiente código en lugar de "Message":

"Excepción: " + ex.Message

Saludos.

viernes 3 de abril de 2009

Definir propiedades de Webparts en MOSS

Si alguna vez os habéis puesto a desarrollar una webpart, seguro que os habréis preguntado cómo se añaden esas cajas de texto que aparecen en el panel de herramientas y que sirven para configurar la webpart.

Pues bien, si el objetivo es mostrar una caja de texto es tan simple como poner el siguiente código:

[WebBrowsable(true),
Personalizable(PersonalizationScope.User),
WebDescription("News number you want to show"),
WebDisplayName("News number you want to show")]

public int NewsNumber
{
get { return _newsNumber; }
set { _newsNumber = value; }
}

Esto es la definición básica de la propiedad pero hay que tener en cuenta que en función de cómo hayamos desarrollado la webpart, si estas propiedades no tienen un valor inicial comprendido en un cierto rango puede no funcionar como queremos. Para solucionar esto podemos dar a esa propiedad un valor por defecto como se muestra a continuación:

[WebBrowsable(true),
Personalizable(PersonalizationScope.User),

DefaultValue(2),
WebDescription("News number you want to show"),
WebDisplayName("News number you want to show")]


public int NewsNumber
{
get { return _newsNumber; }
set { _newsNumber = value; }
}

Al igual que esta, hay muchas otras propiedades, también muy interesantes que os invito que descubráis.

Saludos!

miércoles 25 de marzo de 2009

Intalar Windows 7 en una máquina virtual con Virtual PC

Estos días de atrás me han preguntado muchas veces como he creado la máquina virtual en la que instalé Windows 7 y estaba preparando una entrada explicándolo cuando he visto este Webcast de Microsoft en castellano y, por supuesto, una imagen vale más que mil palabras, así que os dejo la url del webcast:

http://msevents.microsoft.com/CUI/WebCastEventDetails.aspx?EventID=1032405053&EventCategory=5&culture=es-ES&CountryCode=ES

Espero que os resulte útil.

Saludos.

Cursos Microsoft

Os dejo un montón de cursos que ha publicado Microsoft y que son completamente gratis. Como veréis hay para todos los gustos.

http://www.microsoft.com/spanish/msdn/spain/cursosonline.mspx

Un saludo!!