No somos otra compañía de desarrollo de software o una agencia digital. Acá entendemos la web y la tecnología. Vivimos por eso. Pensamos diferente y hacemos posible el mejor espacio para su compañía en un mundo digital.

Conozca Más

3Metas Blog

Grid changes in Edit Event–Framework 4.0

Uno de los clientes de 3Metas utiliza un conjunto importante de controles GridView de ASP.Net para su aplicación de misión crítica, por diferentes consideraciones de diseño estas grillas utilizan unas imágenes para indicar la modificación de registros, pero en vez de editar el registro en la grilla misma cuando se hace clic en el icono se dirige al usuario a un formulario con más validaciones e información, cuando finaliza la edición el usuario regresa a la grilla, muy elegante en términos de usabilidad y experiencia de usuario.

Para controlar el evento de edición y obtener el id del registro que se está modificando se hace uso del evento RowEditing del control. En las versiones 2 y 3.5 del framework este comportamiento funcionaba perfectamente, sin embargo al migrar la solución al framework 4.0 y visual studio 2010 este flujo de navegación dejo de comportarse de la forma acostumbrada, ahora cuando el usuario termina el proceso de edición y regresa a la página con el control GridView toda la grilla esta en modo de edición.

Este cambio introducido en el Framework 4.0 y que afecta muchas líneas de código ya construido está reportado en Connect y en el foro de ASP.Net, para nosotros la solución más rápida y que introducía menos problemas fue cancelar la edición del registro al terminar el método usando

e.cancel = true; //cancelar el proceso de edición por cambios en el comportamiento del framework 4.0

 

Probablemente la mejor forma de lograr este efecto de navegación no era precisamente utiliza el evento RowEditing, sino utilizar un link o image column template, incluso para procesar algo antes de navegar al formulario de edición se hubiera podido usar un button template o un template personalizado, pero la aplicación de nuestro cliente ya estaba así y no era viable realizar ese cambio.


Comente este artículo

Conectando VS2010 a los servidores TFS de 3Metas

Los servidores Team Foundation Server (TFS) de 3Metas están hospedados en la nube, para conectar VS2010 a los servidores TFS asegúrese de tener instalado Team Explorer (puede descargarlo de aquí) y los Services Pack de Visual Studio.

Abra VS2010, seleccione la opción View, Team Explorer en el menú principal de la aplicación.  En el panel que se abre seleccione el icono conectar a Team Project, se abrirá el cuadro de dialogo Conectar a Team Project, seleccione el botón servidores en el cuadro de dialogo de adicionar / remover servidores seleccione el botón Adicionar y diligencie la información de conexión al servidor TFS.

Seleccione el proyecto en el que desea trabajar de la lista de proyectos autorizados.

A partir de este momento VS2010 está conectado al servidor TFS de 3Metas.

Si tiene problemas con este procedimiento escribanos a tfs.support@3metas.com

Tags: , ,


Comente este artículo

Redes Sociales: Marcas y Mercados

Las nuevas influencias

Hoy en día todas las marcas y productos están (o debería estar) realizando actividades en las redes sociales en línea. Tener presencia en Facebook, ser un tópico de conversación en Twitter, tener miles o millones de seguidores se ha convertido en un elemento más de una estrategia de publicidad que antes solo incluía televisión, radio y prensa escrita. En 3Metas creemos que esta repentina importancia de estos nuevos medios para las agencias de publicidad (y sus anunciantes) no es cuestión de moda o de usar una tecnología en furor, hay toda una serie de elementos que confluyen para afirmar que las redes sociales están aquí para cambiar la forma como interactuamos con los productos que usamos diariamente y las empresas que los fabrican.

La necesidad de las marcas de cambiar la forma como interactúan con los clientes no es precisamente nueva, después de estar expuestos a millones de horas de televisión, radio, periódicos y revistas los consumidores empezaron a cambiar y ser mucho más analíticos y difíciles de convencer (engañar) por la publicidad.  Ya en 1999 (que en años de internet es una eternidad) los autores Chris Locke, Doc Searls, David Weinberger, Rick Levine presentaron una serie de conclusiones sobre la forma como se estaban cambiando los mercados: The Cluetrain Manifesto: The End of Business as Usual , un interesante libro donde exponen una serie de tesis orientadas a cambiar la forma como los mercados y los consumidores interactúan, cada una de ella es una idea poderosa y simple pero que en general giran en torno a compartir conocimiento, establecer conversaciones entre los representantes de la marca/producto y los consumidores  y  a tener más información de los productos disponible para el consumidor final.

Era claro a partir de entonces que las marcas y productos necesitaban una manera directa y personal de establecer comunicaciones con sus usuarios (clientes), ningún medio del momento podía ofrecer esa oportunidad,  todos los medios tradicionales son medios de una sola vía, no se escucha al otro, y aun en los casos que se le escuchara esta conversación no era enriquecida por la masa de consumidores o conocedores del producto. Era el momento de utilizar nuevos canales de comunicación.

En un artículo anterior discutimos la relevancia de las redes sociales en línea como una evolución de las redes sociales que los seres humanos hemos construido desde siempre, los estudios sobre los que nos basábamos también han demostrado aspectos interesantes dela interacción que los seres humanos tenemos como grupo frente a los mercados.  Uno de los conceptos más interesantes de analizar tiene que ver con la generación del precio del producto o servicio basado en la demanda;  En general sabemos que el precio de un producto depende de las leyes de oferta y demanda enunciadas entre otros por Adam Smith en 1776, si un fabricante logra aumentar la demanda sobre sus productos o servicios el precio se elevará siempre que no haya una mayor oferta y esa es la mayor y más interesante forma de aporte de las redes sociales a los mercados: hacer crecer la demanda y por lo tanto hacer crecer el valor del producto tanto en precio como en percepción de valor.

La importancia entonces de las redes sociales en línea para las marcar se manifiesta en la posibilidad de construir una conversación con los consumidores, interactuar con ellos en nuevas formas, escucharlos y reaccionar, es la posibilidad de aplicar los principios del Manifiesto Cluetrain usando nuevos canales de comunicación

La oportunidad es inmensa para cualquier compañía, es la oportunidad de liderar nuevos medios de comunicación, de construir grupos inmensos de seguidores y de personas dispuestas a hablar bien (y mal) de un producto o servicio.  Sin embargo también los riesgos son grandes, algunos de los principales:

  • No responder a la conversación, pensar que las redes sociales son otro canal de televisión y no darse cuenta que el éxito es la interacción en dos vías (Tal vez el más importante)
  • No ser autentico,  los usuarios actuales son inteligentes y reconocen las diferencias entre el mundo real y virtual, no pueden haber contradicciones entre los niveles de servicio y  las promesas de valor que se promocionan en línea y la experiencia que tiene el consumidor con el producto final.
  • Ejecutar una campaña y abandonar la comunicación una vez se han logrado los objetivos (algo muy común en el escenario político pero que da lugar a otro artículo posterior)

Conclusión

Todas las marcas y productos explorar actualmente las nuevas oportunidades que ofrecen las redes sociales en línea, a pesar de lo que pueda pensarse no es un tema pasajero, es la constitución de un nuevo canal de comunicaciones entre el mercado y los productores que explota la transformación de la relación entre el consumidor y producto manifestado en el manifiesto cluetrain de 1999, en 3Metas creemos que el mayor aporte que hacen las redes sociales a las marcas lo constituye el aumento de la demanda y su consecuente impacto en el precio o en la percepción de valor del producto o servicio. Es la oportunidad unica de conquistar un nuevo medio de comunicación donde todo esta por inventar y definir

Referencias:

David Armano Blog

Acerca de

Social Media Lounge es un espacio para la construcción e intercambio de ideas relacionadas con Social Media, su aplicación en escenarios de negocios, sus herramientas y casos de éxito. Semanalmente abordaremos un tema. Esta es nuestra primera temporada.

3Metas es una compañía de estrategia digital que diseña, implementa y ejecuta planes de utilización de tecnologías digitales que ayudan a sus clientes a alcanzar objetivos estratégicos. El trabajo de 3Metas se ve reflejado en aplicaciones orientadas a servicios (SOA), sitios web, aplicaciones en dispositivos móviles, aplicaciones en redes sociales como Facebook, personalización de redes sociales como YouTube, Twitter y en la forma como construimos y monitoreamos la reputación de nuestros clientes en línea.


1 Comentario

Redes Sociales

Social Networks Cloud

Actualmente cada vez más personas pasan más tiempo en Internet que viendo televisión o leyendo periódicos y revistas, de este tiempo en línea la mayor parte se destina a redes sociales como Facebook o YouTube. En 3Metas no vemos esto como una moda pasajera sino como la evolución del concepto de redes sociales que se aplica en el mundo real y que ha sido analizado en estudios científicos durante años.  Este artículo desarrolla las bases teóricas sobre las cuales en 3Metas creemos que las redes sociales en línea están aquí para quedarse y seguir evolucionando creando inmensas oportunidades de negocios.

El concepto de redes sociales no es nuevo, pensadores como Hobbes y Rousseau han tenido ideas asociadas a los términos de “contrato social” y han teorizado acerca de qué acciones o procesos resultan en la mejor y más beneficiosa forma de interacción entre los seres humanos. Posteriormente Stanley Milgram desarrolló un experimento que dio lugar a una teoría muy popular en la actualidad: los 6 grados de separación (six Degrees of Separation) que concluye que todos los seres humanos estamos conectados con un máximo de 6 grados de separación con cualquier persona del mundo.
En los últimos 30 años el trabajo de los profesores  Nicholas A. Christakis y James Fowler en el estudio de las redes sociales permitió un mejor entendimiento de la dinámica como nos conectamos los seres humanos a la vez que introdujo las siguientes definiciones:

  • Una  Red Social: se compone de todas las conexiones y enlaces entre un grupo o una colección de grupos de personas.  En estas redes la forma de la red es lo que se conoce como estructura o topología.
  • Un Contagio: es lo que fluye entre las conexiones  (gérmenes, dinero, violencia, moda, felicidad, obesidad, etc.)
  • Una Conexión: es una relación, quien está conectado con quien (enlaces a familiares, amigos, compañeros de trabajo, etc.)

Como resultado de estos estudios se concluyó que existe una influencia estadísticamente significativa que afecta nuestra red hasta en 3 grados de separación, dicha influencia se denominó como los tres grados de influencia (Three Degrees of Influence), es decir las acciones, emociones, hábitos de los amigos (grado 3)  de los amigos (grado 2) de sus amigos (grado 1) le afecta,  en la práctica significa que somos afectados por personas que ni siquiera conocemos.

Flujos de Información

Uno de los elementos más interesantes de la dinámica de las redes sociales es la forma como la información fluye a través de ellas, cuales son los caminos que sigue la información en las redes sociales, que tan relevante se vuelve y como se retrasmite.  Un tema interesante que se ha potenciado en los últimos años con la aparición de Internet y las redes sociales en línea y en el que profundizaremos en las próximas semanas.

Consecuencias

Los efectos del conocimiento en las dinámicas de las redes sociales, su definición y su estudio, junto con la utilización de redes sociales introduce ideas interesantes, por ejemplo, si todos estamos conectados en 6 grados y nuestra influencia afecta hasta un 3 grado básicamente estamos afirmando que podemos alcanzar con nuestras acciones, hábitos, ideas y emociones a la mitad del planeta.

Por ejemplo los estudios respecto a la felicidad concluyen cosas muy interesantes respecto al alcance de una emoción cuando se transmite por la red social, en resumen se afirma:
•    Si usted quiere ser feliz y está conectado con una persona feliz, aumenta su probabilidad de serlo en un 15% (grado 1)
•    En grado 2 la probabilidad es del 10%
•    Y en grado 3 la probabilidad es del 6%
•    Por el contrario cada amigo que no es feliz con el que usted esté conectado disminuye su probabilidad de ser feliz en un 7%.

Otros estudios demuestran que un aumento en los ingresos de 20 millones al año solo incrementa su probabilidad de ser feliz en un 2%, versus el 15% de tener un amigo feliz o el 6-10% de que alguien que usted ni siquiera conoce, pero con el que está unido  de forma indirecta, sea feliz.  Es decir es más probable que Ud. sea feliz gracias a su red social que sus ingresos.

Aplicaciones prácticas

Conceptos abstractos, aunque medibles, como la felicidad y la obesidad son interesantes pero estos estudios también han servido de base para aplicaciones prácticas, una de las más conocidas es la desarrollada por Muhammad Yunus quien ganó el premio nobel de la paz en 2006 por el desarrollo e implantación de un sistema bancario de micro-créditos que usaba grupos, generalmente de mujeres, como respaldo de los créditos, algo que en la práctica significa que las personas que accedían al crédito usaban su red social y sus conexiones como un activo para acceder al crédito.

Una aplicación práctica del concepto de las redes sociales permitió la construcción y consolidación de la red social en línea más popular de la actualidad: Facebook que tiene la ambiciosa visión de ser la primera compañía que logre construir el grafo completo de las interacciones sociales.  A partir de la aparición de estas y otras redes sociales en línea las marcas y personas comienzan un proceso de ajuste para encontrar la mejor forma de comunicar y distribuir información en estas redes.

Hoy cada marca del planeta se pregunta (o debería estarse preguntando) como comunicarse con audiencias que ya no ven televisión y que consume pocas revistas y periódicos.  Es en este campo donde 3Metas ve una oportunidad enorme de construir nuevos canales y formas de comunicación de explorar una nueva forma de interacción social y de ser líderes y pioneros en desarrollo de herramientas para redes sociales en línea.

Conclusiones.

Quienes piensan que las redes sociales son únicamente una manifestación en Internet de aplicaciones como MySpace, Facebook o Youtube están equivocados, las redes sociales son un elemento intrínseco a la naturaleza humana y está presente incluso a nivel genético, hoy sabemos que las redes sociales han existido y existirán siempre solo que en este momento la tecnología aumenta el número y alcance de las interacciones entre los miembros de la red. Esto significa básicamente que las redes sociales en línea están aquí para quedarse y representan tanto un reto como una oportunidad para los individuos y las marcas en la forma como introducen y distribuyen información al fin de cuentas hay que tener presente que las redes sociales no son únicamente acerca de la influencia que otros tiene sobre nosotros, es también la forma en que nosotros afectamos a los otros.  En 3Metas trabajamos investigando y explorando estas nuevas áreas no solo desde las perspectivas técnicas o de seguimiento de tendencias sino desde el fundamento teórico para entender e imaginar usos futuros de la tecnología.

Referencias:

http://connectedthebook.com/index.html

http://christakis.med.harvard.edu/

http://jhfowler.ucsd.edu/

Más información sobre el trabajo de los profesores Nicholas A. Christakis y James Fowler , los invitamos a ver su conferencia en TED.

Social Media Lounge es un espacio para la construcción e intercambio de ideas relacionadas con Social Media, su aplicación en escenarios de negocios, sus herramientas y casos de éxito. Semanalmente abordaremos un tema. Esta es nuestra primera temporada.

3Metas es una compañía de estrategia digital que diseña, implementa y ejecuta planes de utilización de tecnologías digitales que ayudan a sus clientes a alcanzar objetivos estratégicos. El trabajo de 3Metas se ve reflejado en aplicaciones orientadas a servicios (SOA), sitios web, aplicaciones en dispositivos móviles, aplicaciones en redes sociales como Facebook, personalización de redes sociales como YouTube, Twitter y en la forma como construimos y monitoreamos la reputación de nuestros clientes en línea.


Comente este artículo

Evitar peticiones de autenticación cuando se conecta a los servidores TFS de 3Metas

Los servidores de Team Foundation Server (TFS) de 3Metas se encuentran hospedados en la nube y no están integrados con los directorios activos (LDAP) o sistemas de autenticación de los clientes lo que significa que las credenciales de la red o dominio local no son válidas y se hace obligatorio el uso del usuario asignado por 3Metas para acceder a los servicios de TFS, sin embargo resulta incómodo que cada vez que se abre Visual Studio se presenta la pantalla de autenticación.

Para evitar esta pantalla se puede ir al panel de control de la máquina del usuario (Sistemas basados en Windows), opción User Account and Family Safety, la opción Credential Manager, en esa pantalla se puede seleccionar Add Windows Credentials, se llena la información del servidor, usuario y contraseña y listo.

Ahora cada vez que se conecte al TFS no será necesario digitar la contraseña.

Si tiene problemas con este procedimiento escribanos a tfs.support@3metas.com

 

Tags: , ,


Comente este artículo

Configuración de máquinas de desarrollo para acceder a los servidores TFS de 3Metas

Los servidores Team Foundation Server (TFS) de 3Metas están hospedados en la nube posibilitando un modelo de trabajo distribuido entre equipos de desarrolladores en diferentes ubicaciones geográficas y husos horarios. Para conectarse desde VS2008, VS2010 o cualquier otro cliente a los servicios del TFS deben realizarse las siguientes verificaciones / modificaciones.

  1. Verifique que no está bloqueado por la seguridad de la red la dirección 67.192.120.72
  2. Si es posible, cree a nivel de DNS en la red local el host vmtfs01 apuntando a la dirección 67.192.120.72
  3. Si no es posible modificar el DNS de la red local, puede modificar con permisos de administrador el archivo host de la maquina local, este archivo se encuentra ubicado en la dirección C:\Windows\System32\drivers\etc, adicione el registro correspondiente al servidor vmtfs01 apuntando a la dirección 67.192.120.72. Reinicie la máquina.
  4. Para verificar que la maquina reconoce el nuevo host haga una prueba ping al host vmtfs01 o escriba el nombre del host en cualquier browser de internet, si el browser solicita autenticación ha podido resolver correctamente el nombre.

 Si tiene problemas con este procedimiento escribanos a tfs.support@3metas.com

Tags: , ,


Comente este artículo

El valor de tener el cliente de nuestro lado

Cuando se trabaja en web uno de los errores más comunes es decir que el cliente no entiende el negocio, que no sabe lo que le conviene, que no escucha, que no está abierto a nuevas formas de hacer las cosas. A veces pasa, es innegable, pero a veces no. Este mes con la entrega del rediseño del sitio web del CEA nos dimos cuenta de eso. Nuestro trabajo en este rediseño consistió en realizar una arquitectura de información que transmitiera mejor el mensaje que el CEA quiere proyectar, cambiar los etiquetados, ordenar los contenidos repartidos sin razón en secciones que nada tenían que ver con ellos y lograr un concepto gráfico que hiciera ver vigente a la empresa.

De entrada el sólo hecho de involucrar arquitectura de información es arriesgado porque eleva los costos de los proyectos y hacer que los clientes entiendan la importancia de esa inversión no es fácil. Sin embargo, nos hemos dado cuenta en el ejercicio diario que hay que saber vender la idea y no dejar solos a los ejecutivos de cuenta en el proceso. Un cliente siempre reaccionará diferente frente a un ‘experto’ que frente a la persona que le lleva los tiempos de entrega.

Así fue que logramos el proyecto de CEA fluyera sin tropiezos. Tuvimos el voto de confianza del cliente para organizar de cero todo el contenido y lograr, por ejemplo, la aprobación de un home page que difería diametralmente de su versión anterior. Lo mismo pasó cuando sugerimos cambiar el CMS de Joomla a WordPress, dado que lo consideramos más seguro y sobretodo más claro para el webmaster.

En resumen había que preparar al cliente para recibir algo diferente a lo que estaba acostumbrado a manejar. De ahí la necesidad de que en proyectos como este se pueda contar con el equipo indicado, lleno de argumentos para defender cada una de las decisiones que considerábamos importante tomar. En todos los proyectos, el equipo de trabajo completa un número de victorias y derrotas. Esta vez podemos decir con satisfacción que las victorias fueron muchas más y que se hizo lo que había que hacer para defender cada uno de los nuevos caminos que tomamos.


Comente este artículo

Imágenes del toolbar del Crystal ReportViewer no se muestran

Esta semana cuando uno de nuestros clientes estaba realizando las pruebas de un proyecto en asp.net que tenía un conjunto de reportes embebidos, las imágenes del toolbar del Crystal ReportViewer no se mostraban o se perdían.

Teniendo en cuenta la experiencia que habíamos tenido ya una en un cliente con algo parecido revisamos nuestro anterior post sobre: Como publicar un reporte embebiendo ReportViewer en una página aspx sobre IIS7, realizamos todos los pasos allí descritos, pero esto no solucionó el tema de las imágenes. Así que decimos investigar un poco más en internet y nos encontramos que este problema se presenta comúnmente cuando el sitio web se ha creado en una ruta de disco diferente a: ..\inetpub\wwwroot, debido a que la aplicación trata de buscar los recursos que corresponden al ReportViewer en la carpeta: ..\inetpub\wwwroot\aspnet_client\system_web\2_0_50727

Así que una solución muy útil y práctica para este caso fue copiar la carpeta aspnet_client dentro de la carpeta de la aplicación, de tal forma que ahora está también en una ruta como esta: D:\\MiAplicacionWeb\aspnet_client

El truco nos funcionó, pero de repente no es la solución no es la solución más idónea para el tema, así que si alguien conoce alguna otra forma de hacerlo, por favor ¡cuéntenos! nos gustaría mucho que la compartiera aquí.


Comente este artículo

Integrando Visual FoxPro con Windows Communication Foundation

Uno de los clientes de 3Metas tiene una base instalada muy importante de aplicaciones construidas en Visual Fox Pro 7, 8 y 9. Durante los últimos meses hemos trabajado en conjunto para desarrollar una estrategia de migración de estas aplicaciones hacia una arquitectura orientada a servicios (SOA) construida con WCF y el Framework 3.5 de .Net.

Uno de los aspectos claves de un proceso como estos consiste en evitar al máximo que se siga construyendo funcionalidad en Visual Fox Pro (VFP) así que el primer paso de la estrategia consiste en la integración de VFP con servicios de Windows Communication Foundation (WCF) de forma tal que las aplicaciones actuales se vean beneficiadas de las mejores en la lógica de negocios o de nuevas funcionalidades que se construyen con la última tecnología disponible.

1. Lo primero que debe hacerse es construir un servicio de WCF en lo que no profundizare especialmente.

2. En nuestro caso una vez que tuvimos construido el servicio construimos una fachada para su utilización desde VFP.

3. En esta fachada establecemos las referencias a los servicios por medio de la herramienta de Visual Studio, allí verificamos el tipo de conversión que se realizará sobre las colecciones genéricas. Como queremos proteger la inversión del cliente en este proyecto esta fachada deberá poderse usar desde VFP pero también desde aplicaciones desarrolladas con .Net hoy y en el futuro.

4. Creamos una clase que estará visibles por COM desde VFP y que será la fachada para esta herramienta.

5. Esta clase debe estar decorada como COM visible [ComVisible(true)] y para asegurar las opciones de Intellisense también agregamos la decoración de generación de la Interfaz [ClassInterface(ClassInterfaceType.AutoDual)]

6. Aunque visual Studio 2008 (VS2008) crea el constructor de forma predeterminada preferimos asegurarnos así que agregamos el constructor, tener presente aquí que el constructor no puede sobrecargarse ni recibir parámetros para evitar problemas en COM

7. Luego creamos los métodos que serán consumidos por VFP y se los decora como visibles para COM [ComVisible(true)].

8. En nuestro caso los métodos del servicio de WCF devuelven colecciones genéricas de tipos específicos, por ejemplo la colección de colores de la entidad color: [CollectionDataContract(Name = "Colores", Namespace ="http://myDomain.com/Data/2010/01")] public class Colores: Collection<ColorEntity> {}, para que estos métodos puedan ser consumidos desde VFP y teniendo en cuenta la restricción de COM para el manejo de genéricos se realiza una modificación al método para que no retorne la colección sino que retorno un arreglo de objetos que es algo que si puede ser manejado por VFP, la posibilidad de convertir la colección genérica en un arreglo se adiciono con LINQ, así que debe establecerse la referencia a LINQ en el proyecto y la clase, al final debe quedar algo como esto:

   1:  using System;
   2:  using System.Collections.Generic;
   3:  using System.Linq;
   4:  using System.Text;
   5:  using System.Runtime.InteropServices;
   6:  using ServicioProducto;
   7:  
   8:  namespace ServicesFacade
   9:  {
  10:  
  11:      [ComVisible(true)]
  12:      [ClassInterface(ClassInterfaceType.AutoDual)]
  13:      public class ProductoFacadeVFP
  14:      {
  15:          //default constructor
  16:          public ProductoFacadeVFP() {}
  17:  
  18:          /// <summary>    
  19:          /// Metodo trae los colores del Sistema
  20:          /// </summary>
  21:          /// <returns></returns>
  22:          [ComVisible(true)]
  23:          public Color[] GetColores()
  24:          {
  25:              Colores colores = null;
  26:  
  27:              try
  28:              {
  29:                  ServicioProductoClient srv = new ServicioProductoClient();
  30:                  colores = srv.GetColores();
  31:                  srv.Close();
  32:              }
  33:              catch (Exception ex)
  34:              {
  35:                  throw ex;
  36:              }
  37:  
  38:              return colores.ToArray();
  39:          }
  40:       }
  41:  }

9. Al compilar este proyecto se obtendrá una DLL y un archivo de configuración que corresponde a la forma como se establecerá la comunicación con el servicio (Address y Bindings), estos dos archivos son los que deben entregarse a los desarrolladores de VFP para que consuman los servicios.

Completada la fase de preparación y construcción de los servicios y su fachada los desarrolladores de VFP ya pueden integrar estos componentes en sus aplicaciones, para ello deben realizarse las siguientes actividades:

1. Registrar la Interfaz COM de la fachada de los servicios por medio del comando regasm, idealmente debería utilizarse el parámetro CODEBASE, la instrucción sería algo como esto si se corre desde el directorio del Framework 2.0 de .Net: C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727>RegAsm.exe “C:\3Metas\Clients\Cliente\Proyecto\ServiceFacade\ ServicesFacade.dll” /CODEBASE

2. Uno de los aspectos más importantes de WCF es la separación de la configuración del servicio del código, el address y el binding del servicio que están definidos en el archivo de configuración, este archivo de configuración se generó al compilar la fachada. Para cada proyecto en el que va a utilizarse la fachada se debe copiar el archivo de configuración del servicio en la misma ruta del ejecutable de la aplicación de VFP o para depuración en la ruta donde reside el proyecto, este archivo debe renombrarse con el nombre de la aplicación de VFP y la extensión .config, en nuestro caso queda algo como esto: aplicaciondelcliente.exe.config. Muchos de los errores que se pueden presentar al usar la fachada tienen que ver con el hecho de que la aplicación no encuentra el archivo de configuración.

3. Registrada la interfaz COM de la fachada y renombrado y ubicado correctamente el archivo de configuración del servicio ya está todo listo para que el desarrollador pueda utilizar los servicios desde VFP. Solo debe utilizar el método CREATEOBJECT con el nombre de la clase de la fachada. Por ejemplo:

   1:  LOCAL Colores
   2:  LOCAL MyColor as ServiceFacade.ServicioProducto.Color
   3:  LOCAL ProductoFacade as ServicesFacade.ProductoFacadeVFP
   4:  
   5:  ProductoFacade = CREATEOBJECT("ServicesFacade.ProductoFacadeVFP")
   6:  Colores = ProductoFacade.GetColores()
   7:  
   8:  OPEN DATABASE "C:\3Metas\Clients\Integration\sampledata" EXCLUSIVE
   9:  USE color IN 0 EXCLUSIVE ALIAS tblColor
  10:  ZAP
  11:  
  12:  FOR EACH Item IN Colores
  13:      INSERT INTO color (ColorId) VALUES (Item.ColorId)
  14:  ENDFOR

Listo, el equipo de desarrolladores de VFP está consumiendo servicios de WCF.

Aclaraciones importantes:

· Con Visual Fox Pro se pueden consumir servicios Web, así que si se exponen los servicios de WCF con un binding básico HTTP el servicio de WCF se ve exactamente igual que un servicio web y por tanto se consume sin problemas desde FoxPro, sin embargo desde la perspectiva técnica puede llegar a tener problemas con objetos de negocios que VFP no entienda o que el servicio de WCF este expuesto por otro binding lo que haría imposible consumirlo desde VFP nativo, en nuestro caso las aplicaciones no estaba construidas consumiendo servicios web y el cliente no quería invertir tiempo de los desarrolladores en que aprendieran a consumir servicios web desde VFP, de allí tenía sentido que ellos consumieran objetos COM que les son familiares.

Al crearse el proyecto de fachada podría configurarse por medio de VS2008 la conversión de las colecciones genéricas en arreglos (ARRAYS). Sin embargo, eso haría que la fachada perdiera tipos de datos que podrían ser utilizados por clientes de .Net


3 Comentarios

Hogar, dulce hogar

Las preguntas infaltables al momento de crear empresa siempre son ¿dónde será la oficina? ¿Cuántos metros debe tener? ¿De qué color comprar los muebles? Eso nos pasó en 3Metas también y no sabíamos si buscar una oficina como la mayoría de empresas u optar por un modelo de trabajo distinto. Buscando alternativas encontramos dos conceptos que nos conquistaron: el teletrabajo y la oficina virtual. Al entenderlos quisimos que todos trabajaran desde sus casas y contratamos a su vez los servicios de una oficina virtual.

No fue una decisión fácil. A favor, ahorraríamos en costos fijos gracias a que hoy en día existen herramientas para el trabajo remoto que funcionan muy bien en una empresa de servicios como la nuestra. Aportaríamos también al cuidado del medio ambiente al disminuir los desplazamientos de las personas. Y lo más importante brindaríamos la opción de organizar de manera diferente el tiempo y aún así obtener -con responsabilidad- buenos resultados gracias a empleados con más tiempo para otras actividades que les generen felicidad y satisfacción.

En contra, tendríamos la tarea de romper con esquemas mentales muy arraigados en las personas, había que ceder control sobre las actividades y comportamientos de los empleados y sobre todo, no tendríamos un espacio físico común que ayudara a la identidad corporativa. Pese a estas dificultades seguimos adelante con la idea.

Tomada la decisión nos enfocamos en el principio de “trabajar por objetivos”, damos la libertad en cómo y a qué horas se desarrollan las tareas. La clave es cumplir a la hora y día acordado. Por eso buscamos personas con capacidad de autogestión, con mentes creativas que propongan soluciones efectivas y sin temor a pedir ayuda en situaciones críticas. A la par creemos necesario definir principios, reglas y ayudas tecnológicas que garanticen la productividad y calidad en lo que hacemos. Estas son algunas:

  • Definir un horario de trabajo y descansos, así como un espacio de trabajo en casa.
  • Estar conectados en Skype o Messenger de 8:30 a 6:00 pm. En caso de estar en otra actividad, avisar y estar pendientes del celular.
  • Asistir a reuniones virtuales entre los equipos de trabajo o a reuniones físicas de las áreas, con el fin de establecer objetivos y tareas y revisar avances o retrasos.
  • Diligenciar reportes de actividades.
  • Contestar prontamente los mails recibidos.
  • Contar con horas de trabajo en la oficina virtual de 3Metas en caso de una reunión con un cliente o con el equipo mismo.

Somos conscientes de que es un terreno nuevo que no todos comparten, pero queremos seguirlo explorando y realizando esfuerzos para adaptarnos. Tal vez en el futuro continuemos bajo el mismo sistema o dado el tamaño y otras coyunturas, tengamos un sistema híbrido entre el modelo de trabajar en la casa y una oficina propia. No lo sabemos, pero al final lo importante es sentirnos felices con lo que hacemos y por ahora nos está dando resultado.

Photo by: TypeFiend’s


9 Comentarios

Ellos hablan por nosotros

“En el rediseño de la página web del CEA el equipo de 3Metas demostró esmero, entusiasmo, creatividad, puntualidad, dedicación y una gran actitud de servicio, aspectos que vimos reflejados satisfactoriamente en el resultado final. Estamos complacidos por un trabajo que sin duda alguna es muy atractivo, de mucha utilidad y de un fácil manejo para nuestros afiliados”

Esperanza González, CEA

3metas en twitter

No public Twitter messages.


Better Tag Cloud