[VIDEO] Qué es xRM??

Muchas veces me han preguntado de qué va eso de xRM, pues aquí está la respuesta en un video genial que Microsoft ha subido a YouTube. Realmente vale la pena verlo.

 

Nunca me cansaré de predicar las capacidades de Dynamics CRM como plataforma para aplicaciones de línea de negocio. De hecho todo lo que he estado haciendo en el último año ha estado relacionado con esto: cursos, eventos, workshops y paseos por media Europa

Y aquí seguimos al pie del cañón ayudando a llevar Dynamics CRM a todas partes, desde concesionarios de Ferrari (en serio), hasta a la mismísima Policía, pasando por todo tipo de sectores (Universidades, Finanzas, Música, Seguros, etc.) de lo más variopinto… aunque la verdad es que el de “Cow Management” como en el video aún no me ha tocado. Todo se andará :o)

Por cierto, hoy mismo AlfaPeople ha sido reconocido como Partner of the Year 2009 en Europa Occidental en el WPC´09. Un gran reconocimiento al trabajo y pasión que todos mis compañeros ponen en Dynamics CRM. Y justo en el mejor momento en el que Microsoft acaba de anunciar que Dynamics CRM ha pasado la marca de 1 Millón de usuarios.

Aprovecho también para felicitar a Daniel Sabater, recién estrenado MVP de Dynamics CRM en España. Estad atentos porque estamos preparando alguna que otra cosilla para mover más la comunidad de Dynamics CRM en Español.

Un saludo.

Mostrar mensajes de advertencia personalizados Microsoft Dynamics CRM

Utilizar JavaScript es una técnica bastante común en Microsoft Dynamics CRM para realizar validación e interacción en lado cliente. En muchas ocasiones necesitamos notificar o avisar al usuario sobre alguna situación o condición excepcional en valores de los campos del formulario. Normalmente para hacer esto usaríamos un JavaScript alert para mostrar un diálogo con el mensaje deseado, esto puede llegar a convertirse en algo realmente pesado para los usuarios si continuamente están recibiendo mensajes y alertas.

Microsoft Dynamics CRM tiene una forma interna bastante más agradable de notificar al usuario mediante mensajes en la cabecera del formulario con un fondo amarillo y un texto en rojo, es lo que se puede ver en la siguiente imagen.

 

image

Después de una pregunta en los foros de Microsoft Dynamics CRM he estado dándole un par de vueltas a esto y he creado un pequeño snippet de JavaScript que se puede utilizar para mostrar advertencias a los usuarios siguiendo el mismo estilo que CRM.

El código consiste en una función llamada addNotification que nos permite añadir un nuevo mensaje con el mismo estilo que los de Microsoft Dynamics CRM, y usando el mismo área de notificaciones que está incluida en los formularios de las entidades de Microsoft Dynamics CRM.

Una vez que hemos añadido la declaración de esta función en el evento OnLoad ya podemos llamarla desde cualquier otro lado, ya sea dentro del propio OnLoad o en algún evento OnChange de un campo, para proporcionar avisos al usuario sin tener que molestarlos con los típicos alerts. El resultado es el que se puede ver en la siguiente imagen.

 

image

 

 

Aquí va el código. Disfrutadlo!

/*============== addNotification function =============

Adds a warning message on the top of the entity form using
the same visual style as Microsoft CRM

Params: message to be shown to the user
=======================================================*/

addNotification = function(message) {

var notificationHTML = '<DIV class="Notification"><TABLE cellSpacing="0" cellPadding="0"><TBODY><TR><TD vAlign="top"><IMG class="ms-crm-Lookup-Item" alt="" src="/_imgs/error/notif_icn_crit16.png" /></TD><TD><SPAN>' + message + '</SPAN></TD></TR></TBODY></TABLE></DIV>';

var notificationsArea = document.getElementById('Notifications');

if (notificationsArea == null) return;

notificationsArea.innerHTML += notificationHTML;

notificationsArea.style.display = 'block';

}
/*============= END addNotification function ===========*/


//Example of utilizations
addNotification('Some warning message that you want to show to the user ');

 

English version at http://marcoamoedo.com/blog/show-custom-warning-messages-on-microsoft-dynamics-crm/

[Eventos] Dynamics European University Tour en Madrid y CRM en MAD.NUG

Aquí estoy acabando la gira de cursos de Dynamics CRM Discovery Days, y ya preparado para tragarme nueve horas de vuelo para ir al MVP Summit 2009 mañana.

Pero antes de salir por ahí cual Willy Fog (es mi nuevo alias después de tanto viaje en los últimos meses), quería contaros sobre un par de eventos que tendrá lugar en Madrid el Miércoles 11 de Marzo sobre Dynamics y en los que participaré dando la lata sobre Dynamics CRM como siempre :o)

Microsoft Dynamics European Tour

clip_image002

Este evento es una gran apuesta por acercar la familia Dynamics a los estudiantes, y mostrar de primera mano las plataformas de Software Empresarial que los estudiantes se podrán encontrar en su mundo profesional. En el evento hablaremos de Dynamics CRM y Dynamics NAV, proporcionando información a los estudiantes y profesores sobre que herramientas y materiales Microsoft pone a su disposición para aprender más sobre ellos.

Sin embargo, este evento también está abierto a profesionales tanto técnicos y no técnicos que tengan interés en conocer más sobre la familia Dynamics y sus capacidades. De hecho, en el evento tengo el placer de salir a escena con Luis Panzano para hablar sobre Microsoft Dynamics CRM como plataforma de desarrollo (xRM) y cómo podemos crear robustas aplicaciones de línea de negocio sobre ella utilizando las últimas tecnologías para que sea más sexy… vamos Silverlight, WPF, Windows Live, SharePoint, Office Communicator, etc.

El cotarro tiene lugar en la Escuela Técnica Superior de Ingenieros de Telecomunicación de la Universidad Polítecnica de 9:30 a 13:30.

Más información y registro (por cierto es gratis) en Microsoft Dynamics European Tour.

 

MAD.NUG: Microsoft Dynamics CRM ¿Qué tiene de interesante?

clip_image003

Este evento, también el miércoles 11 en horario de 19:30 a 21:30 (que ya sabéis que la cosa no está para derrochar pasta así que aprovechamos el mismo viaje y nos hacemos dos eventos), hablaremos sobre Microsoft Dynamics CRM como plataforma de desarrollo.

Pondré todas mis habilidades para convencer a herejes como mi amigo Luis Fraile de que Dynamics CRM es mucho más que Outlook Corporativo y que hasta podemos usar Team Foundation cuando desarrollamos sobre CRM ;o)

Este evento será más distendido y enfocado a una audiencia más técnica. Veremos cómo se puede extender esta plataforma de forma sencilla para cubrir nuestro modelo de datos, como podemos automatizar y dar consistencia a los procesos de negocio utilizando Worfklows, como podemos ofrecer acceso a la aplicación utilizando varios tipos de clientes tanto online como offline e integrar aplicaciones externas, como podemos personalizar el Interfaz de Usuario e integrar nuevas funcionalidades, y sobre todo como utilizar el Framework .Net para extender la plataforma y la lógica de negocio fácilmente.

Más información y registro. Dynamics CRM ¿Qué tiene de interesante?

Espero veros por alguno de estos eventos,

Saludos,

Marco

Feliz año nuevo!! y los Discovery Days

Bueno, ya hace casi un mes que ha empezado el año para el resto del mundo. Ya lo sé. Pero como llegaba tarde se me ocurrió celebrar el año nuevo Chino. En fin, parece ser que va a ser un 2009 movidito en muchos frentes, y la verdad es que soy de lo peor y todavía no he escrito nada en el blog, ni siquiera para comentar que he sido renovado como Microsoft Dynamics CRM MVP para 2009. Que por cierto estoy muy agradecido por este honor y espero estar a la altura del mismo otro año más (que ya van tres del tirón).

Tengo mis excusas, aunque como siempre son simplemente eso, excusas. Pero, sin embargo en estos últimos meses, como dicen mis amigos, parezco Willy Fog de tanto viajar. En AlfaPeople hemos tenido el placer de recibir el encargo de preparar un curso de “choque” para ISVs en la utilización de Microsoft Dynamics CRM como plataforma de desarrollo, se llama Dynamics CRM Discovery Days. Y digo de “choque” porque se trata de un curso intensivo de 2 días (16 horas) en el que se cubren todos los aspectos de personalización y extensión de Dynamics CRM siguiendo el punto de vista de la idea de xRM. Es decir, dejar de pensar en Microsoft Dynamics CRM como un producto orientado exclusivamente a la gestión de relaciones con los clientes, y aprovecharse de la potente plataforma que ofrece para crear casi cualquier otra aplicación de línea de negocio.

El colofón del curso es un capítulo muy especial en el que he puesto mucho mimo, se trata de cómo empaquetar soluciones o productos para su distribución sobre la plataforma Dynamics CRM. Durante los Labs de ese capítulo los asistentes crean un instalador que empaqueta todas las personalizaciones y extensiones con .Net realizadas a lo largo de los dos días obteniendo un Instalador (msi) capaz de desplegarlas automáticamente.

Este curso me ha llevado hasta ahora por Moscú, París, Copenhague, Praga y Bucharest; desde donde estoy escribiendo estas líneas. Pero si eres un ISV interesado en la plataforma Dynamics CRM, o un partner de Microsoft que tiene interés por este curso no dudes en mandar un email a dynamisv@microsoft.com para registrarte en alguno de los próximos cursos de la gira. Fijaos que también paso por Madrid, así que ya sabéis 🙂

Moscow 24-25 November 2008
Paris 1-2 Dec 2008
Copenhagen 12-13 January 2009
Prague 20-21 January 2009
Bucharest 21-22 January 2009
Amsterdam 5-6 February 2009
Zurich 16-17 February 2009
Athens 23-24 February 2009
Munich 30-31 March 2009
Madrid 2-3 April 2009
London TBD
 

Este road show, gira o como que le queráis llamar me está ocupando gran parte de mi tiempo, que junto con muchos proyectos e ideas que estamos ejecutando en AlfaPeople, pues va a ser que no me dejan demasiado tiempo. Ojalá los días tuvieran más horas y yo no tuviese el vicio de dormir. De cualquier manera, uno de mis propósitos firmes para este año, dejar de fumar y hacer más deporte se encuentran en los no firmes típicos, es publicar todas esas ideas que tengo en el tintero a medio hacer, y seguir dándole caña al blog.

De cualquier forma, este año también estaré en el MVP Summit y espero ver a muchos vecinos de comunidad por allí. Si alguien va en el vuelo de British Airways desde Londres que me avise.

Bueno os dejo por ahora, que voy a ver qué tal está la cerveza Rumana. Como parte de la gira estoy haciendo un estudio sobre los mejores sitios de Europa para beber Cerveza, afición a este brebaje que he adquirido viviendo en tierras británicas, de momento gana República Checa. Aunque si tuviese que valorar también por la amabilidad de la gente ganarían mis amigos los rusos. Se aceptan recomendaciones.

Feliz año del buey a tod@s

Marco Amoedo

www.marcoamoedo.com

Convergence EMEA 20008

convergence08Yas sólo faltan tres semanas para Convergence EMEA 2008! Y este año tengo el placer de poder asistir otra vez, y teniendo el honor de participar como speaker en un par de sesiones.

Para los despistados, Convergence es el evento más importante del año para partners y clientes de la familia de productos Microsoft Dynamics. Al igual que en la anterior edición la conferencia tendrá lugar en el Bella Center de Copenhaguen. Una ciudad muy bonita, y en esta época del año hasta puede que nieve 🙂 En la página del evento podréis encontrar mucha más información sobre las sesiones, registro y demás Convergence EMEA 2008

Este año tenemos una sesión muy especial sobre la que llevamos ya un tiempo trabajando, IDCRM05 Microsoft Dynamics CRM: Ask the Community Experts. Se trata de una especie de mesa redonda sobre Microsoft Dynamics CRM en la que contaremos con la presencia de un grupo de MVPs CRM para tratar de responder a preguntas, compartir experiencias y en general intentar acercar un poquito más las magnificas comunidades online que hay sobre Microsoft CRM.

Como paso previo a la conferencia, hemos querido aportar un poco de interactividad y pedirle a la gente que plantee algunas preguntas de antemano para ir preparando la sesión. Eso sí, hay tener claro que tenemos un tiempo limitado de 60 minutos y que seguro que algunas cosas se van a quedar en el tintero, además de recalcar que no se trata de una sesión exclusivamente ténica para nada. Cualquiera con dudas sobre como empezar con Microsoft Dynamics CRM, ´con dudas sobre la funcionalidad o como adaptarlo a sus procesos de negocio es más que bienvenido.

Para dejar vuestras preguntas podéis utilizar este hilo en los foros de Microsoft Dynamics CRM en inglés, o si estáis muy vagos como para traducir pues dejarme un comentario aquí y yo me encargo. Por cierto, esto va dirigido tanto a gente que tiene pensado ir al Convergence como a lo que no quieren o pueden. Trataremos de recopilar las respuestas y las ideas que se discutan en la sesión para compartirlas en linea.

Bueno yo ya tengo mi viaje reservado, y salvo sorpresa de última hora, estaré por Copenhaguen desde el Lunes por la tarde hasta el Jueves por la noche. Si alguien que leas esto está por allí y le apetece tomarse una cerveza y charlar sobre CRM que me mande un email y quedamos.

 

Un saludo,

Marco

The CRM Book

BookFrontTN Soy probablemente el último en comentar el lanzamiento de este libro, pero más vale tarde que nunca. Como ya sabréis, mi compañero MVP David Yack ha publicado recientemente un libro llamado «CRM as a Rapid Development Platform» que es un trabajo muy completo sobre desarrollo en la plataforma Microsoft Dynamics CRM.

Mi primer contacto con este libro fue en Junio de este año cuando David pidió ayudo para revisar el libro a todos los MVPs de Dynamics CRM. La respuesta de los MVPs fue increíble como el propio David reconoce en su libro, en cuestión de una hora todos nos habíamos ofrecido para revisar algunos capítulos del libro (Tengo que dedicar un post a este fantástico grupo de profesionales, estoy realmente orgulloso de tener la oportunidad de ser parte de él). Yo me ofrecí para revisar algunos capítulos dedicados a los Plug-ins ya que había estado trabajo mucho con ellos y estaba muy interesado en ver como David presentaba estos temas en su libro.

La primera impresión no pudo ser mejor. Aquellos capítulos eran realmente completos en cómo trabajar con Plug-ins and cubrían profundamente todos los temas que cualquiera podría esperar encontrar. Tuve el placer de añadir mi granito de arena con algunos pequeños comentarios y consejos que finalmente fueron incluidos en la versión final al igual que hicieron los demás compañeros MVPs.

Tan pronto como el libro fue publicado, David y Julie nos dieron acceso a una versión electrónica del mismo gratuitamente y un precio muy especial para la versión en papel. Me fui corriendo a descargarme algunos capítulos de libro que estaba interesado en leer y mi opinión sobre el libro se volvió incluso mejor. No tardé más de media hora en ir al sitio web del libro y pedir dos copias para mí. Si dos, una para tener en la oficina y otra para casa ya que soy demasiado vago para llevar en la mochila ese pedazo de libro. Se me olvidaba mencionar que son más de 600 páginas.

Bueno, dejadme intentar dar una opinión más formal sobre el libro y quien lo debería de leer. Este libro es definitivamente el más completo hasta la fecha sobre desarrollo en la plataforma Microsoft Dynamics CRM. Cubre en profundidad todos los temas relacionados con desarrollo, desde Java Script hasta consejos en empaquetamiento y despliegue de soluciones para ISVs incluyendo por supuesto todos los demás temas relacionados con Plug-ins, Workflows, e incluso CRM Online. Podéis echarle un vistazo a la lista de capítulos del libro aquí «The CRM Book» TOC.

El libro esta principalmente pensado para desarrolladores, consultores técnicos y arquitectos de soluciones que trabajen con Microsoft Dynamics CRM pero va un paso más allá que el puro desarrollo y siempre mantiene la idea de cómo sacar provecho de Microsoft Dynamics CRM como plataforma de desarrollo. Así que podéis esperar encontrar consejos muy valiosos sobre temas tan interesantes como crear un entorno para un equipo de desarrollo, depuración y testing, rendimiento y empaquetado y despliegue de soluciones.

Esto no es todo, el libro viene con un monto de librerías y ejemplos de código muy útiles y listos para utilizar en nuestras soluciones lo que puede ayudar bastante a acelerar nuestros desarrollos. Hay librerías para plug-ins, Java Script y montones de ejemplos muy útiles.

Bueno, si tienes conocimientos de desarrollo en .Net y estás trabajando con Microsoft Dynamics CRM definitivamente este libro es algo que deberías tener en tu escritorio… I no, no me pagan ni un duro por esto, este post es nada más que mi humilde opinión sobre un libro que de verdad me ha sorprendido gratamente.

Saludos,

Marco

English Version – The CRM Book

Botón para RE-Abrir una acitvidad en Microsoft CRM 4.0

Ya han pasado muchas lunas desde que empecé a trabajar con Microsoft Dynamics CRM, pero aun hoy en día me sigue sorprendiendo de vez en cuando. La verdad, hay que reconocer que es un producto prácticamente sinfín dónde existen tantas posibilidades de personalizar y extender como imaginación. De hecho, como algunos saben, cuando me preguntan “es esto posible en CRM?”, mi respuestas es prácticamente siempre si [ahora mismo no consigo recordar ningún no, pero por si acaso :o) ] el caso es encontrar la forma de hacerlo.

Sin embargo, a veces las sorpresas son para mal cuando descubres que algo que dabas por supuesto que estaba ahí no está. Hace ya tiempo me pasó esto con las actividades. Como sabéis todas todas las entidades en CRM puedes tener varios estados, normalmente activo o inactivo (por aquello de evitar borrar datos valiosos), las actividades no son una excepción. Además casi todas ellas pueden pasarse de un estado a otro, por ejemplo de activo a inactivo o de abierta a cerrada. La sorpresa aparece cuando por casualidades de la vida das con un requerimiento de un cliente que te pide poder re-abrir actividades cerradas y piensas sin problema, para luego darte cuenta de que esa opción no aparece por ningún lado en la interfaz de usuario. Sus razones habrá, estoy seguro, pero es algo que se echa de menos.

Lo bueno, es que como siempre (al menos que recuerde) todo puede solucionarse en CRM. A veces de formas complejas otras de formas más sencillas. En este caso revisando el SDK vemos que es posible cambiar el estado de una actividad utilizando el mensaje SetState, y añadiedo a la mezcla a nuestro viejo amigo JavaScript y el fichero ISV.config obtenemos rápidamente una solución en forma de un botón que nos permitirá añadir la opción perdida de reabrir una actividad cerrada.

Aquí está el código que añadido al ISV.config permite reabrir una llamada telefónica cerrada, como véis va incluido dentro de la definición de un botón listo para ser añadido a nuestro ISV.config Este código puede ser modificado fácilmente para aplicarse a otro tipo de actividades, basta con substituir toda las apariciones de “phonecall” por el nombre de esquema del tipo de actividad que queráis i.e. “task”.

   1: <Entity name="phonecall">
   2:                     <ToolBar ValidForCreate="0" ValidForUpdate="1">
   3:                         <Button Icon="/_imgs/ico_16_exportCustomizations.gif" JavaScript=" if(crmForm.FormType==4){ var xml = &apos;&apos; + &apos;&lt;?xml version=&apos;1.0&apos; encoding=&apos;utf-8&apos;?&gt;&apos; + &apos;&lt;soap:Envelope xmlns:soap=&apos;http://schemas.xmlsoap.org/soap/envelope/&apos; xmlns:xsi=&apos;http://www.w3.org/2001/XMLSchema-instance&apos; xmlns:xsd=&apos;http://www.w3.org/2001/XMLSchema&apos;&gt;&apos; + GenerateAuthenticationHeader() + &apos;  &lt;soap:Body&gt;&apos; + &apos;    &lt;Execute xmlns=&apos;http://schemas.microsoft.com/crm/2007/WebServices&apos;&gt;&apos; + &apos;      &lt;Request xsi:type=&apos;SetStatePhoneCallRequest&apos;&gt;&apos; + &apos;        &lt;EntityId&gt;&apos;+crmForm.ObjectId+&apos;&lt;/EntityId&gt;&apos; + &apos;        &lt;PhoneCallState&gt;Open&lt;/PhoneCallState&gt;&apos; + &apos;        &lt;PhoneCallStatus&gt;-1&lt;/PhoneCallStatus&gt;&apos; + &apos;      &lt;/Request&gt;&apos; + &apos;    &lt;/Execute&gt;&apos; + &apos;  &lt;/soap:Body&gt;&apos; + &apos;&lt;/soap:Envelope&gt;&apos; + &apos;&apos;; var xmlHttpRequest = new ActiveXObject(&apos;Msxml2.XMLHTTP&apos;); xmlHttpRequest.Open(&apos;POST&apos;,&apos;/mscrmservices/2007/CrmService.asmx&apos;, false); xmlHttpRequest.setRequestHeader(&apos;SOAPAction&apos;,&apos;http://schemas.microsoft.com/crm/2007/WebServices/Execute&apos;); xmlHttpRequest.setRequestHeader(&apos;Content-Type&apos;, &apos;text/xml; charset=utf-8&apos;);  xmlHttpRequest.setRequestHeader(&apos;Content-Length&apos;, xml.length); xmlHttpRequest.send(xml); var resultXml = xmlHttpRequest.responseXML; window.location.reload();}">
   4:                             <Titles>
   5:                                 <Title LCID="1033" Text="Re-Open Activity" />
   6:                             </Titles>
   7:                             <ToolTips>
   8:                                 <ToolTip LCID="1033" Text="Re-Opens the activity if it is closed." />
   9:                             </ToolTips>
  10:                         </Button>
  11:                     </ToolBar>
  12:                 </Entity>

Espero que os sea de utilidad,

 

Un saludo.

Marco

Hoja de Ruta para Microsoft Dynamics CRM

DynamicsCRMParece que está de moda esto de las hojas de ruta… El caso es que como muchos ya habréis leído en el blog del equipo del CRM, Microsoft ha decidido crear un documento llamado “CRM Statement of Direction” que esta accesible en CustomerSource y PartnerSource.

El documento no tiene desperdicio, a lo largo de 18 páginas se comentan novedades muy interesantes aunque sin comprometerse a una fecha exacta. Muchas de ellas han sido anunciadas durante el WPC ’08 en Houston. Pero antes de acceder al documento, en la descripción ya hay un par de detalles interesantes. Se trata de un documento que tiene el objetivo de transmitir las direcciones futuras para Microsoft Dynamics CRM cuya próxima versión, V.Next (aún no tiene nombre), se prevé que coincida en tiempo con la release de Office 14 en torno a finales de 2009 principios de 2010. Además de dejar claro que se trata de un documento “vivo” que se mantendrá actualizado periódicamente.

Bueno, pasemos a la parte interesante. ¿Qué novedades hay? Básicamente las podemos desgranar en unas cuantas categorías: CRM Mobile, Aceleradores, Sharepoint, Bizztalk, CRM Online y CRM V.Next

CRM Mobile

Bueno, la verdad es que ya se estaba tardando en dejar claro las intenciones en este apartado. Había mucha gente preguntándose dónde estaban los clientes para dispositivos móviles en CRM 4.0, y si bien es verdad que hay dos fantásticos clientes para dispositivos móviles de la mano de partners como CWR Mobility y Ten Digits, la curiosidad era saber que tenía pensado hacer Microsoft. Y en este documento se dan algunas respuestas bastante claras, dejando claro que el objetivo es dotar a Microsoft Dynamics CRM de clientes móviles que permitan trabajar online y offline en plataformas Windows Mobile y Blackberry, además de acceso total desde cualquier dispositivo con un navegador compatible con HTML 4.0. Los anuncios más interesantes son:

CRM Mobile Express: Una nueva versión del cliente que Microsoft lanzo para CRM 3.0 como Open Source. Este cliente está orientado a trabajar a través de internet, es decir online, en cualquier dispositivo que soporte HTML 4.0. La principal novedad es que Microsoft dará soporte completo a este cliente. Se prevé que esté disponible durante en los próximos meses (Q3 2008)

Alianza con Ten Digits: Microsoft ha anunciado una alianza con Ten Digits para ofrecen un cliente para dispositivos móviles basados en Windows Mobile y BlackBerry capaz de trabajar offline. Poco se sabe todavía de esta alianza, se supone que durante los próximos meses se arán a conocer los detalles de su funcionamiento.

Aceleradores, Sharepoint y Bizztalk

Microsoft repasa en este documento los aceleradores de soluciones o “plantillas” que han sido anunciadas en el WPC’08 y que serán liberados en los próximos meses. Estas plantillas tendrás todo lo necesario, incluido el código, y vendrás lista para funcionar incluso con instalación. Los “solution accelerators” son:

Analytics: Continuando con la versión libreada para CRM 3.0, un paquete de Business Intelegence para CRM 3.0. Aunque con la diferencia de que esta vez se incluirán funcionalidades para distintos niveles de madurez proporcionando un rango de soluciones de BI que cubran diferentes tamaños de organizaciones.

  • eService: Se trata de una aplicación web lista para crear un portal de atención al cliente utilizando como backend Microsoft Dynamics CRM.
  • Event Management: Una aplicación con las correspondientes personalizaciones para CRM que permitirá a una empresa gestionar eventos. Incluyendo invitaciones, registro vía web, control de asistencia, etc.
  • Enterprise Search: Basada en la utilización de la tecnología incluida en el Business Data Catalog de Microsoft Sharepoint. Permitirá crear portales en Sharepoint integrando la información de Microsoft CRM y permitiendo utilizar las funcionalidades de búsqueda.
  • Sales Methodologies: Una plantilla que permitirá incluir plantillas e integración de procesos de ventas tales como: Account Selling (TAS), SPI Solution Selling y Miller Heiman.
  • Extended Sales Forecasting: Un acelerador para aumentar las cap acidades de los procesos de venta en Microsoft CRM y dar mayores facilidades a los usuarios de ventas para gestionar sus oportunidades. De momento no hay mucha información.
  • CRM Notifications: Este acelerador retoma la idea de los feeds RSS que se había liberado para CRM 3.0 y permitirá a los usuarios crear alertas mediante su lector de RSS favorito para seguir los feeds con, por ejemplo, las últimas oportunidades o los últimos casos creados.
  • Business Productivity: Se tratará de un kit de personalizaciones variadas de utilidad en casi cualquier organización. Aunque su enfoque no está todavía definido.

SharePoint. En el documento también se anuncia la liberación del “CRM List Web Part” para CRM 4.0. Se trata de una versión actualizada del Web Part existente para 3.0 que permitía : seguridad de Microsoft CRM. La principal novedad es que soportará CRM 4.0 Hosted y en el futuro CRM OnLine.

Bizztalk. Ahora mismo está disponible un adaptador de BizzTalk para CRM 3.0 y 4.0. Sin embargo este adaptador no utiliza el nuevo end point de Servicios Web de CRM 4.0 con lo cual no aprovecha las características de CRM 4.0 como multi organización. Microsoft prevé lanzar una nueva versión que utilice todas las características de CRM 4.0

Bueno, esto es todo por hoy. Habrá que permanecer atentos a próximas noticias entorno a este documento y las fechas finales de publicación de las funcionalidades prometidas.

En un próximo post comentaré las características que se van esbozando para la siguiente versión de Microsoft CRM y algunas cosas más sobre la evolución de CRM Online. Si no podéis esperar y tenéis acceso a PartnerSource o CustomerSource, consultad el documento completo allí.

Un saludo

Cambiar la vista por defecto de la historia de actividades

Para abrir la segunda era de este blog, me gustaría compartir con vosotros un pequeño código en JavaScript para Microsoft Dynamics CRM 4.0 que permite fijar la vista por defecto del histórico de actividades de “Los últimos 30 días” a “Todas”.

Este es un requisito que me he encontrado bastante a menudo en organizaciones que hacen un uso intensivo del CRM para registrar las interacciones con sus clientes, y en el que las interacciones en forma de actividades ocurren con una frecuencia no demasiado alta.

El caso es que por defecto Microsoft Dynamics CRM 3.0 y 4.0 en la vista de historia filtran por defecto las actividades cerradas en los últimos 30 días. Esto quiere decir que al abrir la vista de historial, por ejemplo en un contacto, puede ser que no se muestre ninguna actividad ya que estas han sido completadas hace más de treinta días.

clip_image002

Este comportamiento es para muchos usuarios es un poco inconveniente, ya que han de acordarse de cambiar el filtro de “Últimos 30 días” a “Todas” para poder ver las últimas actividades realizadas con este cliente.

Probablemente algunos conoceréis un código publicado por mi amigo Michael Höehne que permitía solventar este problema para el caso de CRM 3.0. Por si no os acordáis aquí está un post en su blog explicando cómo cambiar la vista por defecto en CRM 3.0.

Lo malo, es que este código no funciona en Microsoft Dynamics CRM 4.0, es lo que tiene utilizar personalizaciones no soportadas, a veces dejan de funcionar al actualizar la versión J Sin embargo, la buena noticia es que después de pelearme un poco con este código y utilizando Visual Studio para depurar el JavaScript, he dado con la causa del fallo en CRM 4.0 y la solución.

Antes de nada pongamos el código.



   1: /*************************************************************
   2: BEGIN SET THE DEFAULT VIEW OF ACTIVTY HISTORY TO ALL
   3: **************************************************************/
   4: if (crmForm.FormType==2 || crmForm.FormType==3 || crmForm.FormType==4)
   5: { 
   6: var DEFAULT_VIEW = «All»;
   7: /**************************************************************
   8: * Change the default view of a view selection combo box
   9: **************************************************************/
  10: SetDefaultView = function(viewCombo, viewName) { 
  11:  
  12:     /* If the view has already been set, we don’t need to do it again. */
  13:     if (viewCombo.value != viewName) { 
  14:  
  15:         /* Set the new view */
  16:         viewCombo.value = viewName; 
  17:  
  18:         /* Call FireOnChange to run the code in the appropriate HTML control.
  19:          * Without this call, only the selection in the combo box changes,
  20:          * but not the content of the grid */
  21:         viewCombo.FireOnChange();
  22:     }
  23: } 
  24:  
  25: /**************************************************************
  26: * Event handler. Called whenever the ready state of the 
  27: * areaActivityHistoryFrame changes. 
  28: **************************************************************/
  29: areaActivityHistoryFrame_OnReadyStateChange = function() { 
  30:  
  31:     /* Waiting until the frame has finished loading */
  32:     if (this.readyState == «complete») { 
  33:  
  34:         /* This is the frame we’re interested in */
  35:         var frame = document.frames(«areaActivityHistoryFrame»); 
  36:  
  37:         /* And this is the view combo box */
  38:         var viewCombo = frame.document.getElementById(«actualend»); 
  39:  
  40:         /* The view combo box uses a style sheet that references a HTML
  41:          * control. We have to wait until the htc file is loaded, 
  42:          * otherwise the call to FireOnChange in the SetDefaultView
  43:          * method will fail. */
  44:         if (viewCombo.readyState == «complete») { 
  45:  
  46:             /* If the control already has finished loading, we can
  47:              * directly set the new view. */
  48:             SetDefaultView(viewCombo, DEFAULT_VIEW);
  49:         } 
  50:  
  51:         else {
  52:             /* Otherwise we have to register another event handler
  53:              * waiting until all of the include files used by the 
  54:              * combo box are loaded as well. */
  55:             viewCombo.onreadystatechange = function() {
  56:                 if (this.readyState == «complete») {
  57:                     SetDefaultView(this, DEFAULT_VIEW);
  58:                 }
  59:             }
  60:         }
  61:     }
  62: } 
  63:  
  64: /**************************************************************
  65: * loadNavItem. Instead of using the function LoadArea 
  66: * available in the CRM intenal code we have to use this modified 
  67: * function to avoid a problem loading the breadcrumb.
  68: **************************************************************/
  69: loadNavItem = function (navItemName)
  70: {
  71:     var o = document.getElementById(navItemName);
  72:     crmNavBar.down(o);
  73: } 
  74:  
  75: /* Load the history area.*/
  76: loadNavItem(‘navActivityHistory’); 
  77:  
  78: /* Immediately switch back to the main form. The previous line is needed
  79: * to initialize the history frame. This line switches back immediately,
  80: * so you see the main application form while the history frame is loaded
  81: * in the background. 
  82: */
  83: loadNavItem(‘navInfo’); 
  84:  
  85: /* We have to wait until the the history frame was completely loaded, so
  86: /* we register a new event handler, calling the code above. */
  87: document.frames(«areaActivityHistoryFrame»).document.onreadystatechange = areaActivityHistoryFrame_OnReadyStateChange; 
  88:  
  89: }
  90: /*************************************************************
  91: END SET THE DEFAULT VIEW OF ACTIVTY HISTORY TO ALL
  92: **************************************************************/ 

NOTA: AL principio del código se define una variable llamada DEFAULT_VIEW con el valor “All”. No estoy seguro, pero podría ser necesario cambiar este valor al nombre concreto de la opción de la lista en la vista del Historial. Por ejemplo “Todas”, o similar en español. Ahora mismo sólo tengo a mano CRM 4.0 en inglés así que no lo puedo comprobar. Si alguien lo prueba por favor que deje un comentario.

La explicación

Como podéis comprobar el código es básicamente el mismo que el que en su día creo Michael Höehne, ya que no me voy a parar a explicar en detalle el funcionamiento. El único cambio por mi parte para hacerlo funcionar en CRM 4.0 ha sido incluir una nueva función loadNavItem(name) y utilizar esta función en lugar de llamar a la función interna de CRM LoadArea() ya que provocaba un error.

La principal causa del fallo del código diseñado para 3.0, es el “breadcrumb” (nunca he sabido como traducir esto al español). Vamos ese texto que nos dice “History”, o el área en la que nos encontremos, en azul debajo de “Contact: Marco Amoedo”. El caso es que la función LoadArea utilizada en el código original falla al llamarla nosotros directamente no es capaz de tomar el nombre del área a mostrar y falla al actualizar el texto de cabecera.

Después de rebuscar un poco por el código JavaScript que incluye Microsoft Dynamics CRM 4.0, me encontré con un objeto la mar de interesante. Se llama crmNavBar, y como comentaré en futuros posts, nos va a proporcionar muchas funciones para manejar la barra de navegación que aparece a la izquierda de la mayoría de los formularios en Microsoft CRM.

En este caso, como se ve en el código, para crear la nueva función para cargar áreas simplemente uso un método del objeto crmNavBar llamado down, al que pasándole el objeto del menú lateral que queremos mostrar se encarga de hacer todo el trabajo tal cual si el usuario hiciese click en ella.

La única pega, es que el usuario puede percibir un parpadeo como resultado de provocar la carga del área del histórico de actividades si la respuesta del servidor no es lo suficientemente rápida L

Espero, que esta pequeña pieza de código os sea de utilidad.

Un saludo,

Marco

NOTA: El código mostrado en este post es una personalización no soportada. Esto quiere decir que no es posible obtener soporte técnico de Microsoft sobre esta personalización, y que además puede dejar de funcionar sin previo aviso al realizar una actualización.


UPDATE: Justo cuando publicaba este post me dí cuenta de que Michael Höehne acababa de publicar una nueva versión de este código para CRM 4.0. Le he hechado un vistazo, y sigue una aproximación mejor que la explicada en este post. Os recomiendo que utlicéis el código publicado allí en vez de este ya que es más sencillo y evitaréis el parpadeo al cargar el formulario http://www.stunnware.com/crm2/topic.aspx?id=js33


De todas formas continuaré hablando del objecto crmNavBar, que como veréis nos habrirá algunas posibilidades muy interesantes.

El del CRM 2.0?

Han pasado muchas lunas desde la última vez que escribí algo en este blog. Podría dar las mil y una excusas para justificarlo, sin embargo creo que ni merece la pena hacerlo. Lo que si tengo claro es que quiero retomarlo, así que aquí estoy de nuevo. La verdad es que durante todo este tiempo han sido mil y una las veces que me he propuesto continuar con escribiendo, espero que esta vez se la definitiva. Aunque he de reconocer que estoy un poco oxidado :o) Me refiero a escribir, no a trabajar con Microsoft Dynamics CRM, en esto último estoy en mejor forma que nunca.

Bueno, a modo de resumen he de decir que ahora trabajo en AlfaPeople UK, Gold Certified Partner especializado en Dynamics CRM, y estoy de forma permanente en Londres. Por aquí tengo el placer de colaborar con gente con un gran conocimiento y sobre todo mucha pasión por Microsoft Dynamics CRM. Prueba de ello son algunas de las cosas que hemos estado haciendo los últimos meses, y que han culminado con la presentación de dos de las soluciones creadas por AlfaPeople en el World Partner Conference hace un par de semanas en Houston.

Para daros una idea os dejo un par de enlaces a video sobre Crm Alive (que no CRM Live! o CRM Online). Se trata de una plataforma para ISVs que está dando mucho que hablar. En próximos post os comentaré con más detalle en que consiste.

Video: CRM Alive para el ISV

Video: CRM Alive para el usuario final

Y sin más, espero que aquí comience la segunda era de este blog. Ahora que está de moda todo esto del 2.0 no sé si cambiarle el nombre a “El del CRM 2.0” :o)

Un Saludo a todos,

Marco