Mostrando entradas con la etiqueta extremeCRM. Mostrar todas las entradas
Mostrando entradas con la etiqueta extremeCRM. Mostrar todas las entradas

sábado, 25 de junio de 2016

Añadir/Quitar usuarios de Equipos desde procesos (Workflow Tools)

Hoy he continuado con la solución de los Workflows.

El otro día, un colega MVP me recordaba que no había acciones para añadir/quitar usuarios miembros de equipos, así que obviamente, me puse a ello. Este tipo de pequeños “retos” me da vuelta en la cabeza hasta que los hago, así que no podía esperar mas…

Como siempre, todo el código y la solución para descargarla está en Codeplex: https://msdyncrmworkflowtools.codeplex.com/ 

La idea es simple, se puede pasar un usuario y un Team, y se puede añadir o quitar usuarios de los mismos.

Para su utilización, seleccionamos primero la acción que queremos ejecutar:

SNAGHTML2fd99e38

Y luego le pasamos los dos parámetros:

SNAGHTML2fda61a8

y listo Smile simple como siempre.

Espero seguir contribuyendo a que cada vez se escriba menos “código” en Dynamics CRM, y podamos juntos ir haciendo los proyectos mas fácil, rápido y mantenibles.

Un abrazo!

@demian_rasko

sábado, 18 de junio de 2016

Geolocalizando direcciones–Latitud/Longitud– con Bing Maps (WorkFlow Tools)

Hoy sigo con mi aventura de los Workflows, al final todo lo que se me ocurra lo meteré aquí, lo que permitirá que cada vez “piquemos” menos código Winking smile.

Esta vez, me meto de lleno en la Geolocalización. La idea es simple: dado un “string” con una dirección, vamos a obtener la Geolocalización desde Bing Maps, y devolver la Latitud y Longitud.

Estos valores son muy necesarios para hacer cálculos posteriores relacionados con Geo posicionamiento.

Como siempre, el código está disponible y abierto a todo el mundo en Codeplex: https://msdyncrmworkflowtools.codeplex.com/

La idea de su funcionamiento es simple, primero seleccionamos la nueva actividad:

SNAGHTML704a807

Pasamos los parámetros de entrada:

La dirección debe ser introducida como se completaría en los mapas de “Bing”. La clave de Bing Maps debe ser válida. para obtener una clave ver este enlace: https://msdn.microsoft.com/en-us/library/ff428642.aspx

SNAGHTML70508c5

Finalmente podemos utilizar el resultado que es de tipo “Decimal” de la Latitud y Longitud. En este ejemplo, los guardo en los campos correspondientes de la Cuenta:

SNAGHTML706fcf4

Espero les guste!! Tiren ideasss!!!

@Demian_rasko

viernes, 27 de mayo de 2016

Enviar emails a los miembros de un equipo (Workflow Tools)

Muy buenas a todos!

Hoy he añadido una nueva funcionalidad a las tools de Workflows. Muchas veces desde un Workflow es necesario enviar emails a varios usuarios, y estos estos usuarios son dinámicos. El problema es que de forma estándar, debemos entrar al workflow a modificarlo (despublicarlo, modificarlo, y volver a activarlo). Esto es un poco tedioso y difícil de mantener para los usuarios.

Por esto, hoy he añadido otra “tool” para hacer mas fácil la vida de la gente. La idea es que podamos crear un equipo, y de ese equipo añadir en el email de forma dinámica todos los integrantes del mismo como destinatarios.

Como siempre, esta funcionalidad está disponible en Codeplex, con toda la documentación disponible: https://msdyncrmworkflowtools.codeplex.com/

Adicionalmente esta vez he creado dos versiones de la solución para CRM 2016 (8.0) y CRM 2016 Update 1 (8.1).

Explico de forma rápida como funciona:

Primero, seleccionamos la acción que se llama “Email To Team”:

wf1

Luego pasamos los parámetros (Email y equipo):

SNAGHTML16ea89ad

Finalmente al ejecutarlo, en el Email, aparecen todos los destinatarios recogidos del equipo:

wf3

Espero les guste, y sobre todo, que lo veáis útil!

abrazo!

@demian_rasko

lunes, 9 de mayo de 2016

5 Nuevas funcionalidades en Workflow Tools

Buenas a todos, hoy he seguido trabajando con las Workflow Tools, y esta vez he añadido 5 nuevas funcionalidades que me ha compartido otro MVP que se llama Mitch Milam (https://mvp.microsoft.com/en-us/PublicProfile/37049?fullName=Mitch%20%20Milam). Mitch es uno de los mas antiguos MVP de CRM que hay, y es todo un honor el que el me lo haya compartido para añadir en las “tools”.

Como siempre, las he añadido aquí: https://msdyncrmworkflowtools.codeplex.com/

La solución no para de crecer, y ya tengo 31 acciones, mas de 2200 descargas, 8 incidencias reportadas resueltas y unos 17 hilos de discusión y unos cuantos seguidores en Codeplex. Intento responder y dar respuesta a todo el mundo, así que por favor sentiros libres de participar. Intento publicar cuando la inspiración me lo permite y desarrollar nuevas cosas. Actualmente ya tengo todo esto:

wf1.gif

En este caso, se han añadido estas 5 funcionalidades nuevas:

  • AddMarketingListToCampaign: Te añade una lista de Marketing a una Campaña de Marketing.
  • CopyMarketingListMembers: Para copiar los miembros de una lista de marketing a otra
  • CopyToStaticList: Para copiar a una lista estática una lista de marketing dinámica
  • IsMemberOfMarketingList: Para consultar si un registro (Lead, Cuenta, Contacto) está incluido en una lista de Marketing o no.
  • RemoveFromAllMarketingLists: Para quitar un registro (Lead, Cuenta, Contacto) de todas las listas de Marketing a las que pertenece.

Todo esto solamente me motiva para seguir añadiendo mas y pudiendo cubrir mas funcionalidades que se podrían hacer sin necesidad de desarrollar nada. Sigo recibiendo ideas o mas cosas, estoy abierto a vuestra imaginación Winking smile

un abrazo

@demian_rasko

domingo, 24 de abril de 2016

extremeCRM 2016 en Varsovia!

La pasada semana he tenido el placer de volver a poder disfrutar del que para mí es el MEJOR EVENTO DE CRM que hay, que es el extremeCRM: http://www.extremecrm.com/

Esta vez se ha celebrado en Varsovia, una ciudad muy bonita que además nos recibió con un clima genial.

Ha sido una semana genial, donde he podido compartir experiencias con otros partners y amigos de todo el mundo y tener contacto con otros MVPs con los que he compartido un par de sesiones.

Las sesiones han tenido un gran nivel, sobre todo porque partners comparten experiencias, mejoras prácticas y soluciones técnicas para que podamos adoptar las mejores decisiones al momento de enfocar proyectos de CRM.

En la primer jornada, he participado como “mentor” junto a otros MVPs en el Innovation Challenge, en donde se han construido una serie de soluciones durante todo el día, que han sido enseñadas el último día. Es una gran experiencia, sobre todo para aprender sobre tecnologías que uno no conoce, y para compartir conocimiento con otros como nosotros.

WP_20160418_09_14_29_Pro 1

WP_20160420_19_49_39_Pro

Por otra parte, ha participado activamente Microsoft, que en la Keynote a cargo de Jujhar Singh (CRM General Manager) y Param Khalon (General Manager Products, CRM) han presentado una serie de demos espectaculares y el enfoque de roadmap del producto para los próximos meses.

WP_20160419_11_56_07_Pro

Justo después de la Keynote, aprovechamos los MVPs para hacernos una foto con Jujhar Winking smile

IMG-20160419-WA0006

Foto con los MVPs despues de la sesión de pregunta a los expertos:

IMG-20160420-WA0084

Matt Barbour (responsable de plataforma en el equipo de producto) anunció la próxima disponibilidad del nuevo Developer Toolkit:

WP_20160420_09_49_18_Pro (1)

Parte de la delegación Española en Varsovia con la gente de Microsoft:

IMG-20160418-WA0004

Han sido unos días geniales en Varsovia, y sobre todo de volver a ver a viejos amigos y compartir experiencias del mundo de CRM. Sin duda el mejor evento de CRM para aprender, compartir y crecer!

un abrazo!

@demian_rasko

sábado, 26 de septiembre de 2015

Utilizando la Nueva Web API

Como ya os he contacto en un pasado POST (http://www.demianrasko.com/2015/08/nueva-web-api-en-update-1.html) la nueva Web API, ya está aquí, y llega para quedarse.

Esta nueva Web API abrirá un nuevo mundo en el desarrollo con Dynamics CRM, y hoy os voy a mostrar como poder empezar a “jugar” con ella desde una aplicación de consola. Tener en cuenta que está en preview y solo es para pruebas.

Lo primero que he hecho, es crearme una trial en CRM Online,o utilizar una existente pero hay que asegurarse que tiene Update 1, y luego habilitar la preview de Web API:

image

Para comprobar que funciona, podéis meter las URLs y probarlo por ejemplo:

image

SNAGHTML2f29100a

SNAGHTML2f28ce9c

Ok, ya funciona. Lo siguiente que hay que hacer es registrar nuestra aplicación de consola que vamos a desarrollar con Azure para poder dar permisos a la misma de acceder a datos de CRM. El paso a paso para hacer esto está descrito en este artículo: https://msdn.microsoft.com/dynamics/crm/mt149065.aspx

En realidad significa dos pasos:

1) Registrar el AD del CRM el de nuestro Azure, para que la autenticación de los dos ADs se “vean” bien

2) Registrar nuestra App y darle permisos

Para registrar el AD, básicamente vamos a Azure, y añadimos el AD de nuestra trial de CRM Online, y nos logueamos con las credenciales del CRM Online y autorizamos el enlace:

SNAGHTML2f2cc496

Seleccionamos “Usar directorio existente” (el de CRM Online)

SNAGHTML2f2d14aa

Nos autenticamos con las credenciales de nuestra trial:

SNAGHTML2f2d532a

SNAGHTML2f2db196

Confirmamos la relación entre ADs:

SNAGHTML2f2de884

Lo siguiente que hay que hacer es ir a ese AD, y añadir nuestra apliación y darle permisos. Como resultado tendremos un Aplication ID

SNAGHTML2f2f822f

Seleccionamos agregar la aplicación que estamos desarrollando (y seguimos los pasos siguientes):

SNAGHTML2f2fba47

Finalmente tenemos el Id de cliente, que utilizaremos en nuestro código:

SNAGHTML2f300058

Ahora hay que darle permisos a nuestra nueva aplicación, para conectarse al CRM:

SNAGHTML2f304baa

Seleccionamos Dynamics CRM Online:

SNAGHTML2f3097f5

Le damos los permisos:

SNAGHTML2f30dd1c

Genial, una “pequeña” parte del trabajo, ya está hecha.

Ahora vamos a abrir el Visual Studio por fin. En este caso voy a basarme en los ejemplo que hay en https://code.msdn.microsoft.com/Basic-Operations-with-web-67fc1d8f

Primero abrimos el proyecto y en el App.Config cambiamos lo siguiente (en ClienteID y en RedirectURL debemos introducir lo que pusimos en Azure al registrar la App):

SNAGHTML2f38ab66

Al ejecutar el código, en la línea que intenta autenticar con CRM para recoger el Token, nos aparecerá una ventana de autenticación con CRM:

SNAGHTML2f3c62a2

Luego viene la línea donde intenta crear una Cuenta, que es una petición simple de tipo “POST” con al jSON de la Cuenta a crear:

SNAGHTML2f3d3bad

Si ejecutamos esa línea podemos ver en nuestro “Fiddler” como esta Cuenta es enviada y la URL con la que nos responde:

SNAGHTML2f3dcb89

Que si la Copiamos y pegamos en nuestro navegador tenemos la misma:

SNAGHTML2f3ee5f2

Simple, sencillo, moderno, abierto y directo.

Por fin disponemos en Dynamics CRM de una API completamente RESTfull que implementa todos los métodos y actualizada a los estándares oData v4.

Emocionantes tiempos nos vienen en los próximos tiempos para los desarrolladores de Dynamics CRM. Sin duda un gran paso adelante en la plataforma y un gran trabajo del equipo de producto en este punto.

Creo que si bien este punto es muy “teki” (técnico) y no todos los implementadores de CRM son desarrolladores, el mensaje importante a destacar es que Dynamics CRM será convertida en una plataforma que si bien sigue siendo desarrollada en .NET por debajo, será abierta a todos los lenguajes de desarrollo y tecnologías y dispositivos. Será mucho mas fácil realizar integraciones, aplicaciones móviles, etc.

Espero les haya gustado!

Un abrazo!

@demian_rasko

viernes, 15 de febrero de 2013

Conociendo “Polaris” (Update Rollup 12): Nuevos Procesos en profundidad

Como todos sabrán, el nuevo “Polaris”, el último release de Dynamics CRM 2011 incluye nuevas funcionalidades que permiten la definición de Procesos.

Estos procesos en un principio son bastante limitados y según comentan serán ampliados y generalizados en futuras actualizaciones.

Actualmente solamente pueden ser creados procesos de :

  • Ventas:
    • Cliente potenciales
    • Oportunidades
  • Servicio:
    • Casos

Los procesos de momento están solamente disponibles en Dynamics CRM Online, aunque próximamente en OnPremise también, aunque no hay fecha (ya empezamos de nuevo…).

Los procesos simplemente pueden definirse de forma única (uno solo) para los Leads, y uno solo para las Oportunidades. Cada uno de los procesos contiene Fases y dentro de las mismas se pueden definir pasos, que pueden ordenarse. Cada paso consiste básicamente en un campo de la entidad (Cliente potencial u Oportunidad) que se propone para ser rellenado.

Las entidades habilitadas para los formularios de procesos son “lead”, “opportunity” e “incident”. Al abrir un registro de este tipo podemos ver los formularios de la siguiente manera:

Cliente Potencial:

image

Oportunidad:

image

Caso:

image

Como se ve anteriormente, en la parte superior de los nuevos formularios tenemos uno proceso, que en cada una de las fases nos va proponiendo una serie de campos a rellenar (pasos).

Estos procesos son muy cómodos para ir guiando a un usuario de lo que tiene que ir haciendo en cada una de las fases del proceso. Los procesos puedes ser definidos accediendo al botón superior “…”:

image

Una vez allí, se puede modificar el proceso actual, por ejemplo incluyendo un nueva nueva fase al comienzo, incluso con campos personalizados de cualquier tipo como se muestra a continuación:

image

una vez aceptada, simplemente se actualiza el proceso y ya están disponibles nuestros pasos con los campos personalizados:

image

Los formularios de procesos son muy ágiles, rápidos y reducen los “popups” y los “clicks”. En donde mas se nota esto, es en el momento de calificar un Cliente potencial (y creación de une Cuenta, Contacto y Oportunidad. Este proceso en versiones anteriores obligaba a abrir muchos formularios y seleccionar muchas opciones.

Bien, con Polaris, todo esto se ha simplificado, tanto desde los formularios “clasicos” o antiguos, como en los nuevos.

Cambiar al formulario clásico vamos de nuevo a “…” y “Cambiar a clásico”:

image

Desde los formularios clásicos la clasificación de un cliente potencial ahora es tan simple como lo siguiente:

imageimage

Y desde los formularios de proceso se vería así:

image

De esta manera, se refresca el formulario y ya estamos en la oportunidad (de forma muy transparente y rápido para el usuario):

image

Como ven, estos nuevos formularios de procesos, son muy rápidos, ágiles y cómodos para utilizar. Son un gran avance ante los formularios que teníamos hasta ahora, que la verdad ya necesitaban un lavado de cara, porque su rendimiento era muy “pesado”.

Como todo en la vida, nada es perfecto, y esto tiene ciertas limitaciones que creo que en futuro irán siendo resueltas:

  • Capacidad de personalizar muy limitada
  • Procesos solamente para 3 entidades
  • Un solo proceso general para toda la organización
  • No existen validaciones entre las fases, son simplemente orientativas
  • Cuidado con el “autosave” de los formularios (cada 30 segundos se guarda el formulario, disparando plugins, workflows, etc.)
  • No disponemos de Ribbon (para mi que esto es una ventaja, je)
  • Los procesos deberían poder disponer de validaciones y caminos condicionales dependiendo de valores
  • etc.

Según han comentado, para futuras releases, los formularios “clásicos” desaparecerán, para ser reemplazados por estos y toda la funcionalidad que hay actualmente será traslada a los mismos.

¿Se imaginan el CRM con este aspecto todo el tiempo? ya queda menos…

abrazo