Blog del CIIN

Blog del Centro de Innovación en Integración de Cantabria

This Blog

Syndication

Search

Tags

Community

Email Notifications

Archives

Enlaces Recomendados

September 2008 - Artículos

Depuración y Optimización Avanzada de Aplicaciones: Lo grabamos :-)!

Como os comentaba el otro día, este jueves tendremos en Santander un evento muy interesante: Depuración y Optimización Avanzada de Aplicaciones. En dicho evento contaremos con dos de los cracks de Plain Concepts: Pablo Álvarez Doval y Luis Guerrero....el caso es que el evento ha generado mucho interés tanto en Cantabria como fuera de la comunidad, por lo que como experiencia piloto tenemos para todos vosotros una gran noticia: vamos a tratar de grabar y transmitir on-line el evento por cortesía de Microsoft (y más en concreto de Milagros). Para ello, y dada la duración de la sesión (8 horas), se han habilitado dos enlaces:

Esperamos que seáis muchos los que también podáis asistir online al evento, y crucemos los dedos para que no aparezca Murphy y no haya problemas en la grabación y transmisión del evento. Si la experiencia va bien, seguramente a partir de ahora intentemos al menos grabar, y posiblemente transmitir, los eventos que realicemos en el futuro.

PlainConcepts - CIIN - Nuberos

Publicado 29/9/2008 14:48 por Juan Carlos González Martín | 8 comment(s)

Archivado en:

WSS 3.0 & MOSS: Mostrando el menú vertical en páginas de web parts!

Como os comentaba en este post, a la hora de visualizar información en la plataforma SharePoint, disponemos de un recurso bastante interesante: las páginas de web parts. Estas páginas de web parts se crean siguiendo el siguiente proceso:

  • Desde el menú Site Actions pulsamos la opción Create.
  • En la sección Web Pages elegimos Web Part Page.
  • En la pantalla que se abre (página spcf.aspx que reside en el directorio _layouts del serividor de SharePoint).

image

image

image

Así, el resultado que se obtiene tras el proceso anterior es el siguiente:

image

Ahora bien, si os fijáis en la página que acabamos de crear, resulta que no aparece el menú vertical que por ejemplo tenemos en nuestro sitio principal. Este se debe a qué el menú se encuentra contraido en la página como consecuencia de que se ha incluido un Place Holder especial, con ID PlaceHolderLeftNavBar, que es el causante de que no se muestre el menú vertical.

<asp:Content ContentPlaceHolderId="PlaceHolderPageImage" runat="server"></asp:Content>

<asp:Content ContentPlaceHolderId="PlaceHolderLeftNavBar" runat="server"></asp:Content>

<asp:Content ContentPlaceHolderId="PlaceHolderNavSpacer" runat="server"></asp:Content>

 

Por lo tanto, basta con qué hablamos la página con SharePoint Designer 2007 y eliminemos el place holder comentado para lograr que se visualice el menú (Nota: No podemos simplemente comentarlo, porque SharePoint no lo permite). Y de este modo, obtenemos el resultado esperado.

image image

Publicado 28/9/2008 10:12 por Juan Carlos González Martín | 2 comment(s)

Archivado en: ,

Disponible la primera Release Candidate de Silverlight 2.0!

Desde ayer por la tarde ya tenemos disponible la primera release candidate (RC) de Silverlight 2.0 tal y como nos anuncia Scott Guthrie en su blog. Como nos comenta Scott, en esta primera RC se liberan únicamente el Silverlight Runtime Developer Edition así como las tools de VS y Blend para soportarlo. Podéis descargaros ambos elementos de este enlace.

En cuanto a los cambios que vienen con esta RC:

  • A nivel de API, podéis encontrar toda la información en este post y este documento.
  • A nivel de controles, hay muchas novedades:
    • Tres nuevos controles: ComboBox, ProgressBar y PasswordBox. Con la release final de Silverlight, tendremos más controles añadidos a estos.
    • Nuevos template skin.

Publicado 26/9/2008 9:42 por Juan Carlos González Martín | con no comments

Archivado en:

Actualizado el VHD de MOSS!

Microsoft acaba de actualizar el el VHD pre-configurado con una instalación completa de MOSS de cara a evaluarlo. Aunque este VHD ya estaba disponible, caducaba a finales de este mes...lo que sin duda iba a poner en aprietos a más de alguno (me incluyo). Afortunadamente, desde Microsoft se han dado prisa y ya tenemos un nuevo VHD que estará operativo hasta enero de 2010. Lo único que necesitaremos es activar la licencia de Windows Server 2003. Como en la versión previa, este VHD viene con una instalación completa de MOSS, un directorio activo integrado (el famoso LITWAREDEMO), todo el paquete de Microsoft Office 2007 disponible y con Visual Studio 2005 instalado.

Podéis descargaros el VHD de este enlace.

image

Publicado 25/9/2008 16:59 por Juan Carlos González Martín | 5 comment(s)

Archivado en:

La batalla se traslada a la nube: Oracle 11g y Sun MySQL sobre Amazon AWS EC2!

Cómo sabéis, uno de los productos que estará dentro de la estrategia Software + Services (S+S) es SQL Data Services, o lo que es lo mismo, la plataforma de servicios over the cloud que permitirá a las organizaciones almacenar y consultar datos desde cualquier lugar y en cualquier momento. Pues bien, en el mundo de plataformas de datos, tenemos que además de Microsoft aparecen Oracle y Sun MySQL como jugadores clave.

image

En este sentido, tanto Oracle como Sun acaba de lanzar de manera simultáneamente sus plataformas de datos en la nuve: Oracle 11g and Sun MySQL on Amazon AWS EC2. Además, no se tratan de  servicios en versión beta, sino que ya están plenamente operativos y disponibles en la nube.

Sin duda, esta este anuncio es un impulso hacia el modelo de SaaS (S+S en mundo Microsoft). Además de la disponibilidad de estos servicios, Oracle ha anunciado que sus clientes pueden usar sus licencias existentes sin coste adicional para desarrollar productos que soporten estos servicios. Es más, Oracle ofrece Amazon Machine Images (AMIs) gratuitas para habilitar el desarrollo de estas aplicaciones con Oracle Application Express, Oracle JDeveloper, Oracle Enterprise Pack for Eclipse y Oracle Workshop para Weblogic. Podéis encontrar más información sobre Oracle sobre Amazon AWS EC2 en este enlace.

Oracle and AWS

En el caso de Sun MySQL sobre EC2, parece que no se ha generado el mismo movimiento ni existen las mismas ventajas que en el caso de Oracle aparte del anuncio comentado.

Publicado 24/9/2008 23:29 por Juan Carlos González Martín | 5 comment(s)

Archivado en:

WSS 3.0 & MOSS: Recopilatorio de enlaces interesantes (XXI)!

Una vez más, os presentamos el recopilatorio (con periodicidad mensual) de recursos interesantes que han aparecido sobre la plataforma SharePoint durante las últimas semanas. En esta ocasión, hemos seleccionado los siguientes contenidos.

Artículos, Recursos & Documentación

SharePoint Permissions

Tips & Tricks

Herramientas & Novedades

allmyalerts

CardioLog Lite for SharePoint 2007 client UI

Y hasta aquí llega esta nueva entrega del recopilatorio de recursos sobre SharePoint. Espero que os sirva de ayuda.

Publicado 23/9/2008 23:43 por Juan Carlos González Martín | 3 comment(s)

Archivado en: ,

Desarrollo en WSS 3.0: Novedades!

Si hace un momento os detallaba una serie de herramientas de qué disponemos para desarrollar en plataforma SharePoint, ahora le llega el turno a las últimas novedades que desde Microsoft nos llegan para facilitar el desarrollo en plataforma SharePoint:

  • La primera es qué desde el viernes tenemos disponible una nueva imagen VPC en la que tenemos instalado Windows SharePoint Services 3.0 SP 1 instalado, Visual Studio 2008, y las Visual Studio 2008 extensions for Windows SharePoint Services. Podéis descargaros la imagen de este enlace. Además, en la imagen encontraremos una serie de hand-on labs.
  • Se ha actualizado el Introduction to SharePoint Development site.
  • Los hand-on labs podéis encontrarlos en este enlace.
  • Se han actualizado las ppts de los web casts.

Todos estos recursos están en http://MSSharePointDeveloper.com.

Publicado 21/9/2008 23:42 por Juan Carlos González Martín | 4 comment(s)

Archivado en:

Herramientas de desarrollo para SharePoint!

Cuando personalizamos o desarrollamos elementos y soluciones para SharePoint, no sólo utilizamos SharePoint Designer 2007 y Visual Studio, sino que podemos ayudarnos de gran cantidad de herramientas disponibles en la red (gratuitas en su mayoría) y que han ido apareciendo en la comunidad para facilitar nuestro trabajo como implementadores de soluciones SharePoint. En este post, he pretendido recoger las herramientas que considero más importantes en el desarrollo de soluciones SharePoint.

Herramienta

Descripción

Uso

Windows Server 2008 Hyper-V

Permite hostear y administrar máquinas virtuales (MV’s).

Hoster de MV’s

Virtual PC 2007 SP1

Utilidad gratuita de Microsoft para la creación de MV’s.

Creación de MV’s

Windows Server 2003 / Windows Server 2008 (32 Bits)

Sistema Operativo (S.O) de la MV de desarrollo. Es necesario que sea la versión de 32 bits, puesto que las VSeWSS no funcionan en una máquina de 64 bits

S.O del entorno de desarrollo.

Visual Studio 2008 (SP1)

Entorno de desarrollo (IDE) dónde se crearán workflows, web  parts, menejadores de eventos, etc.

IDE

SQL Server Express / Standar /Enterprise

Para gestionar cualquier BD que se necesite integrar  en SharePoint, o bien las propias BD’s de SharePoint.

Plataforma de datos de Microsoft.

Office SharePoint Designer 2007

Entorno para la personalización y branding de sitios SharePoint.

Herramienta de Diseño

Microsoft Office Professional Edition

Suite de Office.

Suite de Office

Microsoft Office SharePoint Server 2007 SDK

Como todo SDK que se precie, viene equipado con documentación, demos y código para probar las capacidades de MOSS.

SDK

Windows SharePoint Services 3.0 SDK

Con menos contenido que el SDK de MOSS, pero con el mismo cometido.

SDK

VSeWSS 1.2

Visual Studio Extensions para WSS versión 1.2…sin duda, este Add-In es imprescindible para facilitar el desarrollo de los elementos típicos de SharePoint.

VS2008 Add-in

.NET Reflector

Herramienta imprescindible para saber que hacen muchos de los ensamblados que utiliza SharePoint. O simplemente analizar lo que hacen otras soluciones.

Herramienta de Ingeniería inversa.

U2U CAML Query Builder and Execution Tool

Una herramienta imprescindible para crear y probar consultas CAML.

Query Tool

CAML.NET

Otra herramienta que nos permite crear consultas CAML.

Query Tool

YACAMLQT

Otra herramienta que nos permite crear de manera sencilla consultas CAML.

Query Tool

Stramit SharePoint 2007 CAML Viewer

Otra herramienta que nos permite crear  y probar de manera sencilla consultas CAML.

Query Tool

SharePoint Manager 2007

Explorador del modelo de objetos de SharePoint, que permite desactivar features, actualizar propiedades y desgranar un sitio de SharePoint

Explorador de sitios SharePoint

WSPBuilder

Herramienta de creación de paquetes WSP para WSS 3.0 & MOSS.

Creador de paquetes WSP

SharePoint 2007 Features

Proyecto de Codeplex con una serie de features útiles para desarrollo de soluciones SharePoint: Debugger feature, Log Viewer, …

SharePoint 2007 Features

Application Pool Recycle Utility

Aplicación que permite realizar un reciclaje rápido  de los application pools de SharePoint.

Application Pool Recycle Utility

Smart Part de Jan Tielens

Web Part imprescindible para mostrar y utilizar de manera sencilla los controles de usuario que creemos para SharePoint

Smart Part

STSDEV

Utilidad que permite generar proyectos y soluciones de Visual Studio que faciliten el desarrollo de componentes para SharePoint.

STSDEV

SPDeploy

Otra herramienta más que permite realizar customizaciones de SharePoint en Visual Studio y luego llevarlas al servidor.

SPDeploy

STSADM

STSADM proporciona una gran flexibilidad a la hora de administrar e implementar soluciones SharePoint. Además, es extensible y se le pueden añadir nuevas opciones. Una referencia completa de STSAM la tenéis en este enlace.

STSADM

BDC Meta Man

Herramienta para la creación de archivos de definición de BDC’s de MOSS. El problema es que no es gratuita.

BDC Tool

Ejemplos de Ted Pattison

Ejemplos de desarrollos de SharePoint de Ted Pattison.

Ejemplos

Patterns & Practices SharePoint Guidance

Patrones y buenas prácticas para el desarrollo de soluciones SharePoint.

Patrones y buenas prácticas.

Fiddler

Un gran analizador para entender que información se está intercambiando entre el navegador y SharePoint.

HTTP Debugger

Internet Explorer Developer Toolbar

Add-On para Internet Explorer que nos permite visualizar fácilmente las CSS aplicadas, accede al DOM de manera sencilla, etc.

DOM/CSS/Browser Debugger

NotePad++

Muy útil para visualizar el código fuente de una página.

Ver código fuente, editor de texto

Otros enlaces sobre el tema:

Y hasta aquí llega este post sobre herramientas para el desarrollo en plataforma SharePoint. Espero que el post os resulte útil, y sobre todo que añadáis vuestras propias contribuciones.

Publicado 21/9/2008 22:54 por Juan Carlos González Martín | 10 comment(s)

Archivado en: ,

PPTFlex: Haciendo deep zoom en tus presentaciones!

Si hace unos días os hablaba del Chart Advisor para Excel 2007 y del E-Mail Prioritizer para Outlook 2007, hoy os voy a presentar otro excelente Add-On gratuito excelente creado por Office Labs y pensado para PowerPoint 2007: PPTFlex. Esta utilidad nos permite realizar presentaciones de manera espectacular gracias a que utiliza un canvas que permite realizar zoom a distintos niveles...de este modo, las presentaciones lineales pasarán a la historia...y como muestra, aquí os dejo un vídeo de PPTFlex.

Url del vídeo

Podéis descargaros PPTFlex de este enlace.

Publicado 18/9/2008 22:38 por Juan Carlos González Martín | 5 comment(s)

Archivado en:

ASP.NET: Añadiendo columnas programáticamente a un control GridView!

Recientemente en un proyecto en el que estamos trabajando en el CIIN (por supuesto, es un proyecto de SharePoint ;-)), surgió la necesidad de visualizar una serie de elementos de una lista de SharePoint en una web part...este listado tenía la peculiaridad de que los campos de información podían ser imágenes, links, etc. Entonces, lo primero que tuvimos que decidir es cuál de los elementos de visualización de ASP.NET nos podría resolver la papeleta...tras varias pruebas con distintos controles propios de ASP.NET, optamos por realizar una primera prueba con el control de datos GridView. Ahora bien, no es lo mismo utilizar un control de este tipo cuando desarrollamos una página ASP.NET que cuando desarrollamos una Web Part. En el primero de los casos, tenemos la opción drag & drop que nos da el diseñador de Visual Studio 2008, de manera que:

  • Basta con arrastrar un control de tipo GridView a la superficie de diseño.
  • Acceder a la opción Edit Columns disponible en el smart menú del control para añadir las columnas necesarias.
  • Especificar los campos del GridView y su tipo. Podemos disponer de 7 tipos de campos: BoundField, CheckBoxField, HyperLinkField, ImageField, ButtonField, CommandField y TemplateField.
ASP_NET_Add_Column_Gridview_1 ASP_NET_Add_Column_Gridview_2 ASP_NET_Add_Column_Gridview_3
  • Configuramos las propiedades de los campos añadidos y listo. Ya sólo tenemos que hacer el binding con los datos, y nuestro control GridView mostrará datos...fácil!

ASP_NET_Add_Column_Gridview_4

Pero, ¿Y qué pasa cuando desarrollamos web parts de SharePoint? Pues que no disponemos de ningún tipo de ayuda visual, por lo que no nos queda más remedio que intentar añadir los tipos de campo de las columnas de manera programática...¿es esto posible? Como no podía ser de otra forma, la respuesta es que sí, y tras indagar un poco en la red, llegué a la solución que a continuación os plasmo:

using System;

using System.Collections.Generic;

using System.Linq;

using System.Web;

using System.Web.UI;

using System.Web.UI.WebControls;

using System.Data;

 

namespace MouroWeb

{

    public partial class _Default : System.Web.UI.Page

    {

        protected void Page_Load(object sender, EventArgs e)

        {

            //Origen de datos

            DataTable dtDatos = new DataTable();

            dtDatos.Columns.Add("Imagen");

            dtDatos.Columns.Add("Url");

 

            DataRow dtRow = dtDatos.NewRow();

            dtRow["Imagen"] = "Imagenes/Logo_CIIN_pq.gif";

            dtRow["Url"] = "CIIN";

            dtDatos.Rows.Add(dtRow);

 

            //Añadiendo columnas al grid

            GridView1.AutoGenerateColumns = false;

            //Columna tipo imagen

            ImageField imfImagen = new ImageField();

            imfImagen.ShowHeader = true;

            imfImagen.HeaderText = "Imagen";

            imfImagen.DataImageUrlField = "Imagen";          

            DataControlField dcfControl = imfImagen;

            GridView1.Columns.Add(dcfControl);

            //Columna tipo Hyperlink

            HyperLinkField hlfLink = new HyperLinkField();

            hlfLink.ShowHeader = true;

            hlfLink.HeaderText = "URL";

            hlfLink.DataTextField="Url";

            hlfLink.NavigateUrl = "http://www.ciin.es";

            dcfControl = hlfLink;

            GridView1.Columns.Add(hlfLink);

 

            //Haciendo el binding...

            GridView1.DataSource = dtDatos;           

            GridView1.DataBind();          

 

        }

    }

}

Como veis, en el código anterior simplemente:

  • Definimos un origen de datos (un objeto de tipo DataTable) con unos datos de prueba.
  • Especificamos que la propiedad AutoGenerateColumns del objeto GridView utilizado esté a false.
  • Definimos objetos del tipo de campo a añadir que necesitemos y los configuramos según nuestras necesidades (y siguiendo la definición de la fuente de datos). En este caso he definido un objeto de tipo ImageField y otro de tipo HyperLinkField.
  • Añadimos las columnas con el tipo de dato al control GridView. Para ello usamos un objeto de tipo DataControlField.
  • Especificamos cuál es la fuente de datos para el control GridView (el objeto DataTable).
  • Hacemos el correspondiente DataBind.

Sin más, probamos la solución y ya está.

 image

Publicado 18/9/2008 20:04 por Juan Carlos González Martín | 3 comment(s)

Archivado en: ,

Se avecina otro gran evento: Depuración y Optimización Avanzada de Aplicaciones!

Cuando desarrollamos Software, pasamos por una serie de etapas, desde el diseño hasta el despliegue final, en las que buscamos proporcionar soluciones que resuelvan de forma excelente los problemas y requerimientos planteados. Sin embargo, el camino no es fácil y muchas veces nos olvidamos de aspectos muy importantes como son la depuración, la optimización y el testeo de nuestras aplicaciones como camino a lograr aplicaciones con el mayor nivel de calidad posible. Para cubrir esta etapa imprescindible en todo desarrollo de software, el CIIN en colaboración con Plain Concepts ha preparado una nueva jornada de la que se puede hablar durante días y días: Depuración y Optimización Avanzada de Aplicaciones.

La jornada que os proponemos será gratuita por cortesía de Plain Concepts y constará de un repaso de la depuración básica con Visual Studio, profiling de problemas de rendimiento y depuración avanzada con WinDbg. Se tocarán temas como análisis de rendimiento y pruebas de carga, localización de puntos calientes y cuellos de botella, resolución de problemas esquivos (cuelgues, pérdidas, bloqueos, CTDs…) tanto en vivo como de modo postmortem mediante el análisis de volcados de memoria y otras técnicas de depuración. También se abordarán, durante el transcurso de la sesión, aspectos de soportabilidad como la construcción de un servidor de símbolos sincronizados, la generación de volcados de memoria en nuestras aplicaciones, etc. Como viene siendo habitual, la parte teórica irá acompañada de demostraciones prácticas sobre escenarios habituales de optimización y resolución de problemas.

Depuración y Optimización Avanzada de Aplicaciones

En esta ocasión contaremos con la presencia de Pablo Álvarez Doval. Pablo ha estado vinculado a las tecnologías Microsoft desde el inicio de su carrera profesional, y fue miembro del GTSC de Microsoft en el equipo de SQL Server. Actualmente es uno de los plain boys de Plain Concepts, donde lidera la iniciativa DOT (Debugging & Optimization Team), destinada a ayudar a sus clientes en la resolución de problemas de rendimiento o problemas de difícil trazabilidad. Dispone de un blog en http://geeks.ms/blogs/palvarez, donde aborda principalmente temas de rendimiento, WinDbg y SQL Server.

Datos de interés del evento:

  • Audiencia: Desarrolladores, Jefe de Proyecto.
  • Requisitos previos: Conocimientos del entorno Visual Studio 2005 / Visual Studio 2008, lenguajes .NET en general y C# en particular.
  • Fecha: jueves 2 de octubre.
  • Hora: 09:00 a 18:30.
  • Duración aproximada: 8 horas.
  • Precio: Gratuito.
  • Ponente: Pablo Álvarez Doval (Plain Concepts, integrante del Debbuging and Optimization Team).
  •  Lugar:

Centro de Innovación en tecnología de integración (CIIN)

C/ Pasaje de la Peña Nº 4 2º Piso Local 16

39008 Santander

España

Podéis inscribiros al evento a través de este enlace...esperamos veros por Santander.

PlainConcepts - CIIN - Nuberos

Publicado 17/9/2008 8:43 por Juan Carlos González Martín | 7 comment(s)

Archivado en:

Social Bookmarking v1.0 for MSDN, TechNet y Expression!

Microsoft acaba de liberar la versión 1.0 de su aplicación de social bookmarking destinada a que los profesionales IT puedan compartir de manera sencilla favoritos, publicar contenido generado en la comunidad o buscar y conectar a estos profesionales entre sí. Esta primera release está disponible para MSDN, TechNet, y Microsoft Expression.

image

Entre las capacidades de esta aplicación, tenemos la posibilidad de suscribirnos a los tags que seleccionemos, soporte para 12 idiomas, acceso en todo momento a un resumen de nuestra contribución a la comunidad, herramientas de importación de otros servicios de bookmarking, además del uso de una preview de MSDN Code Search que nos anunciaba Bruno Capuano...por supuesto, para empezar a utilizar esta herramienta sólo se necesita un Windows Live ID.

Publicado 15/9/2008 22:52 por Juan Carlos González Martín | 2 comment(s)

Archivado en: ,

Visual Studio 2008 SP1 y .NET Framework 3.5 SP1 en castellano!

Desde el pasado 11 de septiembre tenemos disponible para descarga el SP1 en castellano de Visual Studio 2008 y .NET Framework 3.5. Los enlaces de descarga son los siguientes:

Publicado 15/9/2008 22:32 por Juan Carlos González Martín | 5 comment(s)

WSS 3.0 & MOSS: Usando una plantilla de sitio para crear un Site Collection!

Como sabéis, una de las posibilidades que ofrece la plataforma SharePoint para hacer backup & restore de sitios son las plantillas de sitio. Están son unos archivos .stp que contienen la estructura de un sitio y su subisitio, incluyendo listas, bibliotecas, etc...e incluso contenidos si así se ha especificado. Para crear una plantilla de sitio hay que seguir el siguiente proceso:

 

image image image

 

image image image

De esta forma, la plantilla aparece disponible en la galería de plantillas de sitio y la podemos utilizar para crear nuevos subsitios. Ahora bien, ¿es posible utilizar estas plantillas de sitio para crear Sitec Collections de SharePoint? La respuesta es que sí, y los pasos para hacer disponible esta plantilla en la creación de Site Collections de SharePoint (WSS 3.0 & MOSS) son los siguientes:

  • Guardar la plantilla en el directorio local de instalación de SharePoint. En mi caso, la he guardado directamente en el propio directorio dónde reside la utilidad stsadm: 

C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\BIN

  • Abrimos la interfaz de comandos y nos vamos al directorio dónde esta la utilidad stsadm.
  • Especificamos el siguiente comando: STSADM -o AddTemplate  -filename "Nombre Plantilla.stp" -title "Nombre Plantilla" (Podéis consultar la ayuda de esta opción medainte STSADM -Help AddTemplate).
  • Hacemos iisreset.

Una vez añadida la plantilla, verificamos que aparece como disponible para crear nuevos Site Collections.

image image image

Sin más, hasta aquí llega este artículo. Espero que el post os haya resultado interesante.

Publicado 15/9/2008 21:22 por Juan Carlos González Martín | 3 comment(s)

Archivado en: ,

Windows Live Video Messages Beta!

Como sabéis, entre las múltiples plataformas tecnológicas de Microsoft, últimamente está muy de moda la plataforma Windows Live que permite está compuesta por numerosos elementos que permiten enriquecer la web y proporcionar una serie de utilidades al usuario final...seguro que muchos conocéis los Windows Live Spaces, tenéis operativo vuestro Skydrive o utilizáis Windows Live Messenger...yo además de todos estos me he acostumbrado a utilizar otras herramientas muy útiles de la plataforma como Windows Live Writer para escribir de forma sencilla en Geeks.Ms y otros blogs, Windows Live Mail para gestionar mi correo de MSN o Windows Live Photo Gallery para gestionar mis fotografías...el caso es que la plataforma Live continuamente está generando nuevas e interesantes utilidades. La última es Windows Live Video Messages Beta.

image

Esta herramienta permite combinar el correo electrónico tradicional con la posibilidad de enviar/recibir mensajes como vídeos digitales a coste cero. Para utilizar este servicio (gratuito) necesitaremos:

  • Una Web Cam.
  • Una conexión de banda ancha.
  • IE 6 o posterior.
  • Tener instalado Microsoft Silverlight 2 Beta 2.
  • Tener una cuenta de Windows Live.
  • El sistema operativo ha de ser como mínimo Windows XP SP2.

image

Básicamente, podremos enviar mensajes de vídeo a nuestros contactos de Windows Live Messenger u otras cuentas de correo sin más que añadirlas como destinatarios y darle al play. Además, disponemos de 2 GB de almacenamiento para los mensajes de vídeo que recibamos. En mi opinión, esta utilidad es excelente y sin duda supone un paso más en la evolución en la forma que tenemos de comunicarnos con nuestros iguales.

Publicado 12/9/2008 0:22 por Juan Carlos González Martín | 1 comment(s)

Anunciada la especificación del Content Management Interop Services (CMIS)!

El equipo de SharePoint Enterprise Conten Management (ECM) acaba de anunciar el lanzamiento de la especificación del Content Management Interop Services (CMIS). Se trata de un esfuerzo de estandarización para sistemas ECM lanzado por Microsoft y el resto de grandes jugadores del mercado como IBM, EMC, Alfresco, OpenText, SAP y Oracle. El objetivo de CMIS es definir una serie de servicios web estándar que permitan la interoperabilidad de sistemas ECM como MOSS, EMC Documentun, IBM FileNet y otros.

Podéis encontrar más información respecto a este anuncio en los siguientes enlaces:

Publicado 11/9/2008 1:29 por Juan Carlos González Martín | 2 comment(s)

Archivado en: ,

ADO.NET Entity Framework: Algunos detalles (II)!

Siguiendo con las pruebas de ADO.NET Entity Framework (ADO.NET EF) comenzadas en este post, en esta nueva entrega vamos a hablar de uno de los elementos de EF: Entity Client. Se trata de un nuevo proveedor de datos que aparece con EF y que permite realizar consultas a entidades de un modelo conceptual. Para ello emplea el lenguaje Entity SQL (eSQL) que permite realizar consultas al modelo independientemente de la tecnología de base de datos subyacente. Empecemos.

Entity Client

Lo primero que tenemos que hacer es añadir una referencia al  espacio de nombres EntityClient.

 image

Añadimos las correspondientes sentencias using relativas a los espacios System.Entity y System.Data:

using System.Data;

using System.Data.EntityClient;

A continuación vamos a definir una consulta al EDM mediante Entity Client:

            var ecConexion =

                new EntityConnection();

 

            ecConexion.ConnectionString = "Name=AdventureWorksLTContext";

            var ecComando = ecConexion.CreateCommand();

            ecComando.CommandText

                = "SELECT VALUE p from AdventureWorksLTContext.Product AS p";

            ecConexion.Open();

 

            var ecReader =

                ecComando.ExecuteReader(CommandBehavior.SequentialAccess);

 

            Console.WriteLine("******Query******");

            Console.WriteLine(ecComando.ToTraceString());

            Console.ReadLine();

            Console.WriteLine("******Resultados******");

 

            while (ecReader.Read())

            {

                Console.WriteLine("Producto: {0}", ecReader["Name"]);

            }

 

            ecConexion.Close();

            Console.ReadLine();

Como vemos, lo que estamos haciendo en el código anterior es:

  • Definir una instancia de EntityConnection que representa la conexión al EDM. Esta conexión está plenamente identificada por el nombre del EntityContainer (AdventureWorksLTContext), si bien podríamos especificar la cadena de conexión completa (referenciar a las tres capas que constituyen el EDM). Sin embargo, no necesitamos especificar la cadena de conexión completa dado que el EDM está en el mismo ensamblado que el consumidor.
  • Definimos una instancia del objeto EntityCommand que representa la consulta que vamos a realizar al modelo. Esta consulta la estamos definiendo en Entity SQL (eSQL). De esta consulta destacaría que usa la palabra clave VALUE, lo que le indica al runtime que no envuelva el resultado de la consulta como una fila e datos.
  • Abrimos la conexión al modelo.
  • Ejecutamos el comando mediante un objeto de tipo EntityDataReader.
  • Mediante reflexión y el método ToTraceString, obtenemos la consulta que se envía a la BD subyacente al modelo.
  • Leemos el resultado de la ejecución del comando mediante el método Read() del objeto EntityReader.
  • Cerramos la conexión al modelo.

Tras ejecutar el código anterior:

  • Por un lado, tenemos la consulta enviada a la BD.
  • Por otro, tenemos el resultado de la consulta.
image image

Al igual que ocurre con T-SQL convencional, eSQL permite definir consultas parametrizadas. Por ejemplo, podemos realizar una consulta sobre la entidad Product aplicando un filtro a la columna Name:

            Console.ReadLine();

            Console.WriteLine("******Consulta parametrizada******");

            ecComando.Dispose();

            ecComando = ecConexion.CreateCommand();

            ecComando.CommandText =

                "SELECT p.Name FROM AdventureWorksLTContext.Product AS p " +

                "WHERE Length(p.Name)>@iLongitud";

            ecComando.Parameters.AddWithValue("iLongitud", 30);

 

            ecReader =

                ecComando.ExecuteReader(CommandBehavior.SequentialAccess);

 

            Console.WriteLine("******Query******");

            Console.WriteLine(ecComando.ToTraceString());

            Console.ReadLine();

            Console.WriteLine("******Resultados******");

 

            while (ecReader.Read())

            {

                Console.WriteLine("Producto: {0}", ecReader["Name"]);

            }

 

            ecConexion.Close();

            Console.ReadLine(); 

Como vemos en el código anterior:

  • En primer lugar liberamos los recursos que usa el objeto EntityCommand.
  • Creamos un nuevo comando que utiliza un parámetro.
  • Le añadimos el parámetro al EntityCommand a través de la definición de un EntityParameter.
  • Ejecutamos la consulta.
  • Mostramos la consulta enviada.
  • Ejecutamos la consulta.

Los resultados obtenidos en este caso son los siguientes:

image image

Como veis, la API EntityClient permite crear rápidamente consultas a un EDM utilizando un estilo similar al tradicional ADO.NET.

Publicado 11/9/2008 0:57 por Juan Carlos González Martín | 7 comment(s)

My Site al detalle. Parte 5: Compañeros

 

 

 

 

Cuando entramos por primera vez a My Site como usuario SharePoint nos muestrea una lista de posibles compañeros, esta lista se genera automáticamente filtrando todos los perfiles de usuario cuya propiedad manager y grupo de trabajo sean las mismas que las del usuario que se conecta.

webpartcolegas

 

Luego, el usuario tiene la posibilidad de elegir otros compañeros, eliminar los de la lista de sugerencias.

elegircompañeros

Además, si nos fijamos en esta WebPart podemos observar que existe un control de presencia representado por un circulo que se pone de color verde cuando el usuario está activo, me explico, este control de presencia esta representado por un control ActiveX que lo único que hace es dirigir consultas desde el sitio a la dirección de correo electrónico y representa el estado del usuario, si esta conectado en ese momento en Outlook, Messenger u Office Communicator con su cuenta.

control de presencia

Continuará...

Publicado 9/9/2008 13:28 por Patricia Paredes | con no comments

Archivado en:

My Site al detalle. Parte 3: Miembro de...

miembro de

En el apartado de "Miembro de..." se muestran los grupos o listas de distribución a los que el usuario pertenece. Este apartado podemos configurarlo, agregando más listas de distribución o cambiando a grupos de SharePoint. También podemos establecer el nivel de seguridad:

privacidad

agrupación

Continuará...

Publicado 9/9/2008 13:20 por Patricia Paredes | con no comments

Archivado en:

My Site al detalle. Parte 4: En común con otros usuarios

 

 

En común con otros usuarios

 

Esta WebPart de My Profile nos muestra en todo momento lo que tenemos en común con el usuario propietario del My Site que visitamos (Amy) desde la vista de nuestro usuario (Cesar). Si en nuestro caso visitamos nuestro propio My Site no nos mostrará nada de nada.

Los datos, una vez más, los recoge SharePoint de las propiedades de los dos perfiles de usuario y busca coincidencias:

- Mismo Supervisor (se da en nuestro caso: Patricia Doyle)

- Compañeros de trabajo

- Mismo Grupo de trabajo.

 

Continuará...

Publicado 9/9/2008 13:11 por Patricia Paredes | con no comments

Archivado en:

Más artículos Página siguiente >