Hace unos días teníamos disponible la Beta 1 de Visual Studio LightSwitch. ¿Pero qué es esto de LightSwitch?
Microsoft define LightSwitch como una forma sencilla de crear aplicaciones de negocio para la nube y el escritorio. Provee una gran variedad de plantillas y herramientas para construir aplicaciones de negocio cuyo destino es Windows Desktop o Windows Azure, utilizando más código o menos código, según se desee o sea necesario.
Nos permite crear aplicaciones comenzando con una única decisión, Visual Basic o C#.
Una vez que se crea el proyecto de Visual Studio, nos permite crear formularios desde plantillas existentes y enlazarlos con los datos, que incluye como origen SQL Server, SQL Azure, SharePoint y otros. En unos minutos, podemos tener una aplicación básica lista para desplegar y utilizar por el usuario.
Al final de todo el proceso, lo que obtenemos es una aplicación Silverlight que puede ser ejecutada en un navegador, desde fuera del navegador o en la nube.
La gran ventaja que tiene este tipo de proyectos es que cuando nuestra aplicación crezca y necesitemos de implementación de negocio o formularios más personalizados, vamos a tener la capacidad de extender el código creado usando el proyecto desde Visual Studio Professional, Premium o Ultimate.
Vamos a ver un ejemplo de cómo podemos conectar datos de una base de datos SQL Server con documentos almacenados en SharePoint.
El siguiente paso que nos ofrece LightSwitch, al crear el proyecto, es crear una tabla o conectar con una base de datos externa.
Vamos a crear una nueva tabla con los campos necesarios para almacenar clientes.
Como vemos, al definir los campos tenemos diversas opciones para configurar si es un campo por el que se va a realizar búsquedas, si es un campo requerido, la longitud máxima del campo e incluso poder escribir código para realizar una validación personalizada del campo.
El siguiente paso sería crear una pantalla para esta tabla que nos permite ver y editar la información de la misma. Para esto sólo tenemos que pulsar en el botón +Screen en la ventana de edición de la tabla.
El asistente de creación de pantallas nos preguntará por el tipo de pantalla que queremos crear en función de las plantillas que estén disponibles. Vamos a crear una pantalla de búsqueda (Search Data Screen) y una de creación (New Data Screen).
Y ya podemos ejecutar la aplicación (pulsando F5) y vamos a poder buscar clientes y darlos de alta.
Tenemos una serie de opciones que nos permite personalizar estas pantallas, añadir acciones y botones, renombrar los nombres de los campos, etc. Incluso hay una opción que nos permite, en modo depuración, editar online la apariencia del formulario (ese botón Customize Screen que tenemos arriba a la derecha de nuestra aplicación).
Otras de las capacidades de LightSwitch es que nos permite añadir múltiples orígenes de datos, para esto vamos a añadir como origen de datos una biblioteca de documentos de SharePoint que tiene un campo que se relaciona con el email del cliente.
Ahora que tenemos un origen de datos enlazado con la biblioteca de documentos de clientes en SharePoint, tenemos que crear la relación entre la tabla de clientes y sus documentos.
Nos creamos una nueva pantalla, del tipo List and Details Screen para poder visualizar los clientes junto con los documentos que estén relacionados y lo probamos para ver el resultado.
Reconozco que la primera vez que leí sobre este producto, no me gustó la idea. Me imaginaba una aplicación tipo Access, orientada al usuario que le permitiría crearse sus propias aplicaciones. El problema nos lo íbamos a encontrar cuando esta aplicación creciera, se quedara pequeña y nos pidan a nosotros, los desarrolladores, que le hagamos algunas mejoras y cambios.
Aunque todavía no he podido probar todas las funcionalidades, reconozco que la capacidad que ofrece para extender el código y ampliar las funcionalidades usando Visual Studio es, de momento, una buena noticia. Tengo algún que otro proyectito en el que me voy a plantear seriamente utilizar LightSwitch a ver qué pasa.
Ya contaré más según vaya probando el producto.
Saludos a todos…