January 2011 - Artículos
Siguiendo con la serie de posts sobre mejoras en Web Content Management (WCM) en SharePoint 2010 (puedes ver el primer post de la serie aquí), en esta ocasión os voy a enumerar otras características nuevas presentes y que mejoran la experiencia de WCM con respecto a SharePoint 2007:

Y hasta aquí llega este segundo post sobre mejoras en WCM en SharePoint 2010.
Como decía hace unos meses: SharePoint está de moda y nadie lo pone en duda
…y si no, fijaros la cantidad de eventos que tenemos previstos para el mes de febrero sobre nuestro servidor favorito…ni que decir tiene que espero veros por alguno:

Ya tenemos disponible para descarga la versión 1.3 de los Office and SharePoint Products Network Monitor Parsers que permiten examinar y analizar con mayor detalle el tráfico de red generado por SharePoint facilitando la identificación de posibles problemas, monitorizar las comunicaciones de los protocolos de SharePoint o tener un mayor detalle del t´trafico generado. Podéis encontrar más información de los parsers en este enlace.

Sin duda, esta es una de las preguntas que más frecuentemente uno se hace cuando se entera que hay una nueva cumulative update (CU) de SharePoint y sobre todo cuando en los entornos de SharePoint con los que se trabaja hay algún problema grave que se espera que dicha CU solucione. Pero claro, la pregunta clave es: ¿instalamos la CU en nuestros entornos justo cuando esté disponible para descarga? La respuesta es que sí y no. Sí en cuanto a que la podemos instalar en algún entorno de pruebas cuya pérdida no nos ocasione ningún prejuicio y podamos así testear los efectos de la instalación de la CU en cuanto a que solucione problemas y sobre todo que no introduzca otros no esperados. No en cuanto a que no es conveniente instalar la CU en entornos de producción de forma inmediata, al menos hay que esperar a que estemos seguros de que su instalación no nos va a producir ningún problema en dichos entornos gracias a las pruebas realizadas y a que ha pasado un tiempo prudencial que indique que podemos proceder a la instalación y no nos encontremos con sorpresas como está: SharePoint 2010- Importante, no instaléis la CU de octubre de 2010!. En cualquier caso, mi recomendación con respecto a las CUs es la siguiente:
-
Realizar un test exhaustivo de las mismas en varios entornos de pruebas (mejor opción que hacerlo sólo en uno).
-
Esperar a un tiempo prudencial por si Microsoft o terceros encuentran algún issue importante con la CU (que no deja de ser un paquete que contiene un conjunto de parches y hotfixes creados por el equipo de SharePoint).
-
Sólo entonces, pensar si es vital instalar la CU en el entorno de producción o podemos permitirnos esperar a que llegue el correspondiente Service Pack (SP).
En cualquier caso, os dejo un excelente artículo en el que se discute este tema en profundidad:
http://www.chandima.net/Blog/archive/2011/01/21/sharepoint-server-updates-for-sp2010-aka-cumulative-updates%e2%80%93should-i-apply-them.aspx

Como sabéis, SharePoint está completamente basado en SQL Server de ahí que muchas veces surja la pregunta de si es una alternativa de solución de Base de Datos comparado con otras posibilidades que ofrece Microsoft como es el propio SQL Server, SQL Azure o Microsoft Office Access. La respuesta es que depende, y depende de factores más de negocio como pueden ser los requerimientos de la solución a modelar, la facilidad a la hora de modelar soluciones, la agilidad para el uso de las soluciones creadas, … pero también de factores más puramente técnicos como la disponibilidad, la escalabilidad, la seguridad, … Por suerte, de vez en cuando nos encontramos con estupendos WhitePapers que ayudan a tener una perspectiva más clara de cuando interesa usar una tecnología u otra y que nos dan pautas que facilitan la elección de la tecnología de BD a usar. Os dejo la referencia al post del equipo de Microsoft Access en el que localice el WhitePaper Microsoft Database Solutions.

Una de las grandes novedades de SQL Server Reporting Services 2008 R2 (SSRS 2008 R2) es que posibilita la creación de informes a partir de listas tanto de SharePoint 2007 como de SharePoint 2010 ya sea utilizando el diseñador de informes o el Business Intelligence (BI) Management Studio. Esto es posible gracias a que se ha añadido un nuevo origen de datos de tipo “Lista de Microsoft SharePoint”, lo que sin duda es un valor añadido sobre todo cuando tenemos escenarios de SSRS 2008 R2 integrado con SharePoint 2010. En este artículo os mostraré como crear un informe con parámetros utilizando un origen de datos definido a partir de una lista de SharePoint 2010:
-
Desde una biblioteca de documentos de SharePoint configurada para usar el tipo de contenido del diseñador de informes, ejecutamos el diseñador.
-
Creamos un origen de datos basado en una lista de Microsoft SharePoint indicando los datos necesarios para la cadena de conexión: Url del sitio y credenciales de acceso.
-
Creamos un conjunto de datos (dataset) basado en el origen de datos definido y lanzamos el diseñador de consultas. En este diseñador seleccionamos la lista con la que vamos a trabajar y los campos que mostraremos en el informe.
-
Para añadir un parámetro, pulsamos el botón con la imagen de filtro que aparece en la sección “Filtros aplicados” del diseñador.
-
Aquí podremos seleccionar el campo en el que basar el parámetro, el operador a aplicar, el valor por defecto y lo más importante, marcar que este filtro será un parámetro a utilizar en la visualización del informe.
-
Antes de seguir, podemos hacer una ejecución de la consulta generada e incluso visualizarla.
-
Esta consulta, como ya sabemos, es una consulta de tipo CAML que en este caso incorpora un filtro en base al parámetro añadido.
- El detalle de la consulta CAML generada en este caso es el siguiente:
1: <RSSharePointList xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
2: <ListName>Ventas x Zona</ListName>
3: <ViewFields>
4: <FieldRef Name="Title" />
5: <FieldRef Name="Modelo" />
6: <FieldRef Name="A_x00f1_o" />
7: <FieldRef Name="Ventas" />
8: </ViewFields>
9: <Query>
10: <Where>
11: <Contains>
12: <FieldRef Name="Title" />
13: <Value Type="Text">
14: <Parameter Name="Zona" />
15: </Value>
16: </Contains>
17: </Where>
18: </Query>
19: </RSSharePointList>
-
Una vez que tenemos creado el conjunto de datos, ya podemos crear nuestro informe utilizando alguno de los asistentes del diseñador o bien desde cero. En el caso del asistentes, se facilita mucho la ubicación de los campos de detalle, agrupamiento, etc y el aspecto visual del informe.
-
Concluido el asistente, se muestra el informe diseñado al que podemos aplicarle algún formato adicional.
-
Ejecutamos el informe y como era de esperar, aparece el parámetro definido.

Cómo sabéis y ya he comentado en este blog, en SharePoint 2010 tenemos grandes mejoras a la hora de integrar datos de sistemas externos mediante los Business Connectivity Services (BCS). Para integrar estos datos, tenemos dos entornos posibles:
De los dos entornos, sin duda es VS 2010 el que permite modelar escenarios más complejos y nos da cierta flexibilidad a la hora de crear modelos de BDC que nos faciliten la integración de esos sistemas externos. En el caso de que queramos integrar datos de una BD, lo más lógico es intentar usar Entity Framework (EF) para facilitar el modelado de operaciones como listar elementos, visualizar elemento, crear elemento, actualizar elemento o borrar elemento. Si os lanzáis a crear un modelo de EF y lo usáis en el modelo de BDC os encontraréis conque al desplegarlo (al contrario de lo que pasa con un modelo de LINQ To SQL) y probarlo el BCS no se puede conectar a la BD porque no encuentra la cadena de conexión correspondiente…pero como casi siempre, todo problema tiene solución:
-
La primera opción, y para hacer pruebas rápidas, pasa por añadir la cadena de conexión al archivo web.config (acordaros de hacer una copia de seguridad antes) de la aplicación web dónde vais a probar el conector de BDC creado:
1: <connectionStrings>
2: <add name="CRM_BDEntities" connectionString="metadata=res://*/ContactosModel.ContactosModel.csdl|res://*/ContactosModel.ContactosModel.ssdl|res://*/ContactosModel.ContactosModel.msl;provider=System.Data.SqlClient;provider connection string="data source=.;initial catalog=CRM_BD;integrated security=True;multipleactiveresultsets=True;App=EntityFramework"" providerName="System.Data.EntityClient" />
3: </connectionStrings>
-
La segunda y mejor opción, aunque hay que tener mucho cuidado, es añadir esta cadena de conexión de forma programática al web.config en el momento de activación de la feature que despliega el modelo. Un ejemplo de esto lo tenéis en
este enlace.
Hace un tiempo os comentaba desde dónde os podíais descargar una serie de iFilter disponibles para Office 2010. Como sabéis, estos iFilters nos permiten buscar dentro de los documentos con la extensión para la que aplican. Aparte de los iFilter de Office que vienen por defecto en la plataforma, tenemos otros iFilters gratuitos como puede ser el de Adobe para documentos PDF, y otros de pago que nos permiten ir todavía más allá. En este sentido, os quería dejar una página de una empresa especializada en iFilters de pago que seguramente cubran escenarios no tan habituales en cuanto a búsqueda de información como puede ser el caso de documentos CAD: http://www.ifiltershop.com/products.html

Ya tenemos para descarga una nueva release del proyecto CKS (Community Kit for SharePoint) disponible para descarga en Codeplex y a través del Extension Manager de Visual Studio. Este proyecto es sin duda un gran ejemplo de como podemos extender Visual Studio 2010 con nuevas funcionalidades aplicadas al desarrollo para SharePoint 2010 en este caso. Las novedades de esta nueva versión, que podéis encontrar en este enlace son las siguientes:
-
WSPBuilder conversion tool (WCT) beta - This 'beta' release of the WSPBuilder project importer project template allows a developer to migrate a SharePoint root based project structure to the new SharePoint Tool SPIs based file layout. The WCT is packaged with both Foundation and Server editions of CKSDev.
-
Improved Quick Deploy - Stability improvements to the Quick Deploy features.
-
Keyboard shortcuts - Introduction of Keyboard shortcuts for the menu items provided by the extension.
-
Updated Full Trust Proxy SPI - Improvements to the Full Trust Proxy SPI to include the deployment feature receiver.
-
Restart processes menus - Restart the Timer service, User code process and the VS host process.
-
Attach to processes menus - Attach to the Timer service, User code process and the VS host process.
-
Solution level Package all - Package all SharePoint projects within your solution from the Solution context menu.
-
Improved import Content Types - Improved to now support importing from subsite content types.
-
Branding SPI - New SPI providing branding with masterpage, css and deployment feature receiver.
-
Improved Fluent visual web part SPI - Improved code output to provide a more robust example code base.
-
Basic service application SPI - New SPI for a basic service application.
-
WCF service SPI - New SPI to produce a WCF service hosted within SharePoint.
-
SharePoint PowerShell cmdlet SPI - New basic PowerShell cmdlet SPI.
-
SharePoint PowerShell pipe binding SPI - New basic PowerShell pipe binding SPI.
-
Improved copy assembly name menu - Includes build project call during copy.

Fuente: SharePoint CKS Project new Release 1.2
A menudo cuando estamos creando soluciones para SharePoint 2010 nos podemos encontrar con la limitación de que tengamos que hacer cierta extensibilidad en el lado del cliente (con JavaScript) ya que por la circunstancias que sean no tengamos posibilidad de subir desarrollos ni el servidor ni en la galería de soluciones Sandbox o simplemente porque queremos que la experiencia de usuario sea lo más flexible posible. Esta situación se puede dar por ejemplo cuando necesitamos introducir validaciones en formularios de lista adicionales a las que nos da por defecto la plataforma. En este artículo y siguientes trataré de cubrir este tema sobre como añadir cierta lógica en cliente mediante BLOCKED SCRIPT
-
Lo primero que vamos a hacer es disponer de una lista en la que hay ciertos campos a validar. Por ejemplo, en este caso no queremos que el campo Title esté vacío y además queremos que el valor del campo Numero3 no sea inferior a la suma de los campos Numero1 y Numero2.
-
A continuación, tenemos que analizar lo que nos devuelve el servidor cuando abrimos el formulario de creación de elemento o de edición para saber como identificar los controles a validar. Como podéis ver, más o menos tenemos un cierto patrón que nos permite identificar estos controles a través de:
-
El tipo de campo, que es “INPUT”.
-
El atributo id, que es un churro de caracteres que termina en un patrón conocido que en este caso es el tipo de campo TextField.
-
El atributo title, que contiene el nombre del campo.
- El detalle del código HTML devuelto para el campo “Title” es el siguiente:
1: <tr>
2: <td nowrap="true" valign="top" width="190px" class="ms-formlabel"><h3 class="ms-standardheader">
3: <nobr>Numero1</nobr>
4: ></td>
5: <td valign="top" class="ms-formbody">
6: <!-- FieldName="Numero1"
7: FieldInternalName="Numero1"
8: FieldType="SPFieldNumber"
9: -->
10: <span dir="none">
11: <input name="ctl00$m$g_c529ad40_bd17_4408_807b_3871c31df6c1$ctl00$ctl05$ctl01$ctl00$ctl00$ctl04$ctl00$ctl00$TextField" type="text" id="ctl00_m_g_c529ad40_bd17_4408_807b_3871c31df6c1_ctl00_ctl05_ctl01_ctl00_ctl00_ctl04_ctl00_ctl00_TextField" title="Numero1" class="ms-input" size="11" style="ime-mode:inactive;" /><br />
12: an>
13:
14:
15: </td>
16: >
-
Una vez que tenemos claro como poder acceder a los campos de interés, ya podemos pasar a la fase de desarrollo de nuestro código JavaScript. En este caso, lo que haremos es usar Visual Studio 2010 y crearnos un archivo de tipo JavaScript para aprovechar sobre todo el IntelliSense.

- Y el código a añadir es el que aparece debajo. Como véis, la clave de todo está en la función getTagFromIdentifierAndTitle que nos permite localizar el control buscado a partir del tipo de campo, el patrón para el id y el valor de la propiedad title.
- Con la salida de esta función, obtenemos el control en cuestión mediante la llamada a document.getElementById.
- Y a partir de aquí, a implementar la lógica que corresponde.
1: function PreSaveAction()
2: {
3: //Empty field
4: var lsTitle = document.getElementById(getTagFromIdentifierAndTitle("input","TextField","Title"));
5: if(lsTitle.value == "")
6: {
7: alert("El título no puede estar vacío");
8: return false; // Cancel the item save process
9: }
10:
11: //Checking fields
12: var lsNumero3= document.getElementById(getTagFromIdentifierAndTitle("input","TextField","Numero3"));
13: var lsNumero1= document.getElementById(getTagFromIdentifierAndTitle("input","TextField","Numero1"));
14: var lsNumero2= document.getElementById(getTagFromIdentifierAndTitle("input","TextField","Numero2"));
15: if (parseInt(lsNumero3.value) < parseInt(lsNumero1.value) + parseInt(lsNumero2.value) ) {
16: alert("Numero3 no puede ser menor que la suma de Numero1 y Numero2");
17: return false;
18: }
19: return true; // OK to proceed with the save item
20: }
21:
22:
23: function getTagFromIdentifierAndTitle(tagName, identifier, title)
24: {
25: var len = identifier.length;
26: var tags = document.getElementsByTagName(tagName);
27: for (var i=0;i<tags.length;i++) {
28: var tempString = tags[i].id;
29: if (tags[i].title == title && (identifier == "" || tempString.indexOf(identifier) == tempString.length - len))
30: {
31: return tempString;
32: }
33: }
34: }
Referencias sobre este tema:
Cómo sabéis, Visual Studio 2010 incorpora una serie de herramientas que facilitan el desarrollo para SharePoint 2010 a través de una serie de plantillas de proyecto que permiten crear elementos como WebParts, manejadores de eventos, flujos de trabajo, etc…vamos, que podemos crear casi de todo para SharePoint 2010. Y digo “casi” porque aunque si bien es cierto que podemos extender VS 2010 para crear nuestras propias plantillas, una que Microsoft no ha incluido dentro de las que vienen por defecto es la de creación de un Timer Job, o lo que es lo mismo, trabajos programados de la plataforma…el caso es que aunque no tengamos esa plantilla, podemos aprovechar las plantillas y herramientas de VS 2010 para crear fácilmente un Timer Job. Un ejemplo de esta idea lo podéis encontrar en este enlace.

Hace tiempo os comentaba que la utilidad ULS Viewer es una herramienta interesante e imprescindible para visualizar la información de los logs de SharePoint de una forma más amigable y facilitar además la búsqueda de ciertos errores. En este mismo sentido, otra herramienta similar que he descubierto recientemente es el SharePoint Log Reader disponible en Codeplex y que facilita también la lectura de los logs de SharePoint. Como siempre, una imagen vale más que 1.000 palabras
:

Sin duda, a la hora de integrar datos externos en SharePoint 2010 la opción más adecuada es la proporcionada por los Business Connectivity Services que facilitan dicha integración. Ahora bien, la plataforma dispone de otras opciones como:
Para ampliar estas opciones, os recomiendo la lectura de este articulo en CMS Wire.

Una pregunta que me han realizado últimamente es la de si se puede iniciar de forma programática un flujo de trabajo desplegado en un sitio de SharePoint sin esperar a que tenga lugar un cierto evento. Por ejemplo, estoy pensando en iniciar un flujo utilizando una simple aplicación de consola, un servicio de Windows o un Timer Job de SharePoint. La respuesta a la pregunta es que sí, ya que el modelo de objetos nos proporciona lo necesario para instanciar un cierto workflow desplegado en nuestro sitio e iniciarlo. Por ejemplo, el código siguiente muestra como asociar automáticamente un flujo de trabajo de sitio a un sitio en el momento de creación y nos da las pistas para ver como podemos hacer lo mismo en los escenarios mencionados. Como veis, todo pasa por:
-
Crear una instancia de SPWeb, que en este caso obtenemos a partir de las propiedades del manejador.
-
Crear las listas de tareas e historial para el flujo de trabajo si este las necesita.
-
Crear una instancia del flujo de trabajo, para lo que necesitaremos su ID y definir un objeto de tipo SPWorkflowTemplate.
-
Definir la asociación del workflow mediante un objeto de tipo SPWorkflowAssociation.
-
Añadir el workflow en este caso al sitio.
-
Y finalmente arrancar el flujo.
1: static readonly Guid TemplateID =
2: new Guid("abd1d6cc-72a8-4c2f-a567-3118d28f5862");
3:
4: public override void WebProvisioned(SPWebEventProperties properties)
5: {
6:
7: SPWeb newSite = properties.Web;
8: Guid taskListID = newSite.Lists.Add(
9: "Tasks for auto-start workflow", "",
10: SPListTemplateType.Tasks);
11: Guid historyListID = newSite.Lists.Add(
12: "History for auto-start workflow", "",
13: SPListTemplateType.WorkflowHistory);
14:
15: SPWorkflowTemplate template = newSite.WorkflowTemplates[TemplateID];
16: SPWorkflowAssociation association =
17: SPWorkflowAssociation.CreateWebAssociation(template,
18: "Auto-start workflow",
19: newSite.Lists[taskListID],
20: newSite.Lists[historyListID]);
21: newSite.WorkflowAssociations.Add(association);
22: newSite.Site.WorkflowManager.StartWorkflow(
23: newSite,
24: association, "", SPWorkflowRunOptions.Synchronous);
25:
26: }
Finalmente, os dejo una serie de enlaces relacionados con este tema:
Parece que febrero es el mes de SharePoint, y más concretamente la primera semana del mes por la cantidad de eventos que van a tener lugar en España en torno a nuestro servidor favorito según Gustavo, y un simple upload/download según El Bruno
. El caso es que en esta ocasión os anuncio un nuevo evento que tendrá lugar en torno al desarrollo en plataforma SharePoint el próximo 3 de febrero. Se trata del evento Light Up SharePoint – WE SharePoint Developer Roadshow que forma parte de una gira europea que Microsoft llevará a cabo por varios países europeos y en la que tendré ocasión de participar como ponente (escapándome de La Finca ese día y dejando a Gustavo y Ángel solos ante el peligro
). Los detalles del evento son los siguientes:
¿Qué es?
Light Up SharePoint es un evento gratuito donde le mostraremos lo fácil que es llevar su inversión en SharePoint al siguiente nivel. Este evento de un día le revelará nuevas oportunidades y le proporcionará información y algunos consejos para poder empezar el apasionante viaje para el desarrollo de SharePoint con Visual Studio 2010, Team Foundation Server, Microsoft Expression y Microsoft Silverlight.
Las herramientas avanzadas de desarrollo de Visual Studio 2010 junto con las de Silverlight ayudan a los desarrolladores a crear experiencias verdaderamente impresionantes para los usuarios de las webs dentro de la comunidad de SharePoint , tableros de mandos, indicadores KPI y otros tipos de escenarios para aplicaciones de negocios.
¿A quién va dirigido?
Este evento está dirigido a gerentes y jefes de equipo de desarrollo, desarrolladores individuales, LOB y arquitectos de aplicaciones de empresa y cualquier persona interesada en la ampliación de la plataforma de SharePoint para crear soluciones potentes y personalizadas.
Agenda
-
9:00 Registro y entrega de documentación.
-
9:30 Introduction to SharePoint 2010/BPOS development. (Inglés) Michael Koster. Microsoft.
-
10:15 Light Up SharePoint with Silverlight Michael Koster. (Inglés) Microsoft.
-
11:15 Coffee Break
-
11:45 Professional SharePoint development with VS2010 (Castellano) Juan Carlos González Martin Arquitecto de Soluciones – MVP de SharePoint. Centro Innovación de Cantabria.
-
12:45 Team Development and ALM for SharePoint projects (Inglés)
-
13:30 Comida
-
14:30 Testing SharePoint solutions - Overview (Castellano) Test House.
-
15:15 Partner Slot – Case Study or technical session (Castellano) Roberto Gonzalez. Aventia Renacimiento.
-
16:15 Wrap-Up
Desde aquí agradecer a Antonio Gómez y Aurelio Porras de Microsoft por invitarme a participar en el Roadshow…espero veros por allí.

La nueva versión de SharePoint en la nube está a la vuelta de la esquina y una de las grandes novedades es que tendremos muchas posibilidades de extensión mediante desarrollo. Ahora bien, dado que SharePoint Online vendrá con varios tipos de licencia función a su vez del tipo de versión (Enterprise y Small Business), es importante tener en cuenta que no podremos las mismas posibilidades de desarrollo para todos los tipos de licencia. Por suerte, Microsoft está empezando a liberar información preliminar en cuanto a que se puede desarrollar en función del tipo de licencia de SharePoint Online tal y como podéis ver en esta página.

Gracias a mi amigo Ricardo Muñoz, ya tenemos disponibles para descarga desde el sitio de SUGES los materiales del WebCast: SUGES & HISPAPOINT- Como migrar a SharePoint 2010 y no morir en el intento!. Podéis descargar los materiales desde este enlace de SUGES. Agradecer a Ricardo la presentación realizada y a los asistentes su presencia y las preguntas que se realizaron al final del WebCast.

SharePoint 2010 incorpora importantes novedades en lo que a Web Content Management (WCM) se refiere. Muchas de estas novedades se han hecho para facilitar la experiencia de publicación de páginas por parte de los usuarios de forma que puedan crear páginas de una forma muy similar a como crean un documento de Office. En este primer artículo sobre mejoras en WCM veremos algunas de estas novedades:
-
Como en todo SharePoint 2010, tenemos disponible la Ribbon para facilitar el trabajo con páginas de publicación. Desde la Ribbon podremos dar formato al texto a publicar, insertar imágenes, etc, pero también revisar si hemos cometido algún error ortográfico gracias a la funcionalidad de “Revisión ortográfica” que nos permite revisar de forma rápida el texto a publicar y seleccionar el idioma del mismo.
-
La funcionalidad de “Revisión ortográfica” comprueba nuestro texto y nos dice el número de errores ortográficos encontrados.
-
Una vez pasado el corrector, tendremos resaltados los errores detectados y podremos corregirlos al más puro estilo word con las correspondientes sugerencias.
-
Esta misma funcionalidad de corrección entra en juego en el momento de publicar la página a través de la correspondiente ventana emergente que nos indica de nuevo si se han detectado errores ortográficos.
-
Por supuesto, en todo momento podemos decidir si corregir los errores o continuar con la publicación a pesar de todo.
Finalmente, os dejo otros posts relacionados con este tema:
Parece que la versión RTM del primer service pack (SP) para Windows 7 está a punto de caer y que incluso ya hay una versión filtrada “ruiando” por la red que si te atreves puedes a probar puedes descargar desde este enlace. Yo prefiero esperar por si las moscas unos días a que el SP1 esté para descarga en MSDN o a través de Windows Update
.

Este post surge a raíz de una cuestión que surgió hace poco en torno a sí Office 365 va a incluir los clientes de Office 2010 o no. Yo estaba seguro de que la respuesta era que sí para la versión Enterprise de Office 365, pero necesitaba contrastar la información algo que conseguí rápidamente gracias al bueno de Oscar Maqueda (muchas gracias crack). Por suerte, no me equivoqué aunque es necesario introducir un cierto matiz: los clientes de Office estarán disponibles dentro de los planes E3 y E4 que forman parte de la versión Enterprise de Office 365.

Más artículos
Página siguiente >