SharePoint HablaMoss 
El blog oficial del grupo de soporte de Microsoft SharePoint España

October, 2010

  • El equipo de soporte de SharePoint en España habla MOSS

    Disponibles los acumulativos de Octubre 2010 para SharePoint 2010 y 2007 [Actualización]

    • 0 Comments

    Ya están disponibles para su descarga las actualizaciones de Octubre, tanto de SharePoint 2010 como de 2007. Los artículos de KB tardarán unos días en ser publicados, pero una vez estén disponibles, se podrá acceder a ellos a través de los enlaces que se mencionan a continuación.

    SharePoint 2010

    SharePoint 2007

    Aviso! Esta actualización no se instalará si no se encuentra instalado ya el SP2 en el entorno.

    El orden, como siempre, será instalar primero las actualizaciones de WSS 3.0, y posteriormente las de MOSS 2007. 

    Si teneís SPS 2010 sólo debeís instalar el relativo a SPS 2010 ya que incluye el de Foundation.

    Tras instalar las actualizaciones se deberá ejecutar el Asistente de Configuración en cada servidor de la granja.

    Gracias.

    Héctor Calvarro Martín. SharePointDev. Microsoft Support Engineer for DEV EMEA

  • El equipo de soporte de SharePoint en España habla MOSS

    Nueva funcionalidad MUI en SharePoint 2010 y modificación campos título o descripción

    • 0 Comments

    Hola a todos.

    Últimamente los que hayáis desarrollado para entornos con language packs instalados o nativos en otros idiomas que no sean el inglés, os habreis percatado que cuando vuestro entorno de desarrollo ésta en inglés (VS y Windows Server), si procedéis a la modificación del campo título en una lista por medio del modelo de objetos éste no se produce.

    ¿Por qué ocurre esto? SharePoint 2010 ha sido rediseñado a nivel de manejo de lenguajes (Cultures) y provee una nueva funcionalidad llamada Multilingual User Interface (MUI). (http://msdn.microsoft.com/en-us/library/ff800886.aspx) . Básicamente significa que todas las propiedades visibles de objetos SharePoint (normalmente Títulos y Descripciones) se salvan en varios lenguajes si tienes language packs instalados. Entonces, si accedes a ellos mediante código (para leerlos o actualizarlos) se actualizará el valor correspondiente del CurrentUICulture del Thread que se este ejecutando. Normalmente, como los sistemas están en inglés , v. gr. stsadm, PowerShell y Visual Studio están ejecutando en "en-us culture", vuestros códigos sólo actualizarán los datos a la versión inglesa correspondiente al campo en cuestión. Por lo cual cualquier otro lenguage quedará intacto.

    Propiedades que se ven afectadas por esta modificación son SPfield.Title, SPfield.Description, Splist.Title, SPlist.Description entre otros.

    Como ejemplo, observad el remark del artículo de MSDN sobre SPLIST.Title que advierte de ello:

    http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.splist.title.aspx

    Finalmente, os comparto un ejemplo práctico. Pensad en un entorno con todos los productos en inglés y vuestro SharePoint instalado con Language Pack en español. Teneís dos site collection en dos web application distintos uno en inglés y otro en español.

    El siguiente trozo de código se ejecuta al activar unaFeature a nivel de site collection. Éste crea una lista basada en una plantilla de biblioteca de documentos y en teoría renombraría el campo título de la lista. 

            public override voidFeatureActivated(SPFeatureReceiverPropertiesproperties)

             {         

                SPSitesite = (SPSite)properties.Feature.Parent;

                SPWebweb = site.OpenWeb();

                try

                {

                    Guidguid = web.Lists.Add("Creacion Calvarro", "", SPListTemplateType.DocumentLibrary); 

                    SPListlist = web.Lists[guid];

                    list.Title = "Renombrado Calvarro";

                    list.OnQuickLaunch = true;

                    list.Update();

                }

                catch { }

            }

    Si desplegaramos la feature en el site collection en inglés la lista finalmente adoptaría el segundo nombre ya que la renombramos o sea el valor sería Renombrado Calvarro .Sin embargo en el caso del site collection en español adoptaría el primer nombre Creacion Calvarro ya que el culture sería diferente.

    ¿Cual sería la manera correcta de desarrollar ese código que sería valido en un entorno MOSS 2007 pero no en un entorno SPS 2010? Pues ya que MUI involucra a los cultures y a los threads, de primeras deberíamos añadir los respectivos namespaces

    usingSystem.Globalization;

    usingSystem.Threading;

    Luego modificaríamos el código anterior para iterar en cada culture y cambiaríamos el título de cada lista en los lenguajes presentes en el entorno.

         public override voidFeatureActivated(SPFeatureReceiverPropertiesproperties)

            {

                SPSitesite = (SPSite)properties.Feature.Parent;

                SPWebweb = site.OpenWeb();

                try

                {

                    Guidguid = web.Lists.Add("Creacion Calvarro", "", SPListTemplateType.DocumentLibrary);

                    SPListlist = web.Lists[guid]; 

                    foreach (CultureInfo culture inweb.SupportedUICultures)

                    {

                        Thread.CurrentThread.CurrentUICulture = culture;

                        list.Title = "Renombrado Calvarro";

                    } 

                    list.OnQuickLaunch = true;

                    list.Update();

                }

                catch { }

            }  

    Espero que os haya gustado este post ,un poco más extenso de lo normal, pero bastante interesante en mi opinión.

    Muchísimas Gracias a todos.

    Un saludo. 

    Héctor Calvarro Martín. SharePointDev. Microsoft Support Engineer for DEV EMEA

    "CVM TACENT, CLAMANT"

Page 1 of 1 (2 items)