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

domingo, 12 de febrero de 2017

Insertando valores en OptionSets de forma automatizada (Workflow Tools)

Buenas a todos, hoy he añadido una nueva funcionalidad en las Workflow tools.

¿Cuántas veces elegimos optionsets en lugar de lookups porque se rellenan mas fácil a nivel de usuario? El problema surgía porque la limitación aparece porque los valores del OptionSet no son “mantenibles” por usuarios finales, sino que son metadatos…

Ok con la nueva funcionalidad que he creado, esta limitación la resolvemos. La nueva acción se llama “Insert Option Value”. Esta acción nos permite añadir valores en campos de tipo OptionSet, tanto locales como globales.

De esta manera, por ejemplo podríamos crear una entidad que contenga los valores de un OptionSet, y cada vez que cree un registro en esta entidad, con un simple workflow podemos ir añadiendo de forma automatizada los valores en el desplegable que se desee.

OJO!!!: esta nueva funcionalidad puede ser un poco “peligrosa” y tener cuidado al volver a importar soluciones, ya que estos valores podrían ser perdidos entre un entorno y otro…

Como siempre, toda la funcionalidad está desarrollada y compartida en todo su código fuente en Codeplex: https://msdyncrmworkflowtools.codeplex.com

Para utilizar esta actividad de workflow, se puede hacer de la siguiente manera, primero seleccionando la entidad:

image

Luego debemos introducir los valores de los parámetros:

image

Los parámetros son:

  • Global Option Set: set if the OptionSet is Global or not
  • Attribute Name: name of the local or global OptionSet
  • Entity Name: (optional) with the name of the entity. Only required for local optionsets
  • Option Text: Text of the new option to be added (label)
  • Option Value: Value of the new option to be added
  • Language Code: Language Code of the label

Adicionalmente, he resuelto una incidencia que había en las acciones de Associate y Dissasociate (N-N).

Espero les guste Winking smile

@demian_rasko

sábado, 24 de diciembre de 2016

Eliminar relaciones N-N o desasociando registros (Workflow Tools)

Buenos días a todos!

Hoy es nochebuena, y como “regalo” de navidad, una nueva actualización de las Workflow Tools.

Hace unos meses, en julio, cuando publique la funcionalidad de asociación de registros (http://www.demianrasko.com/2016/07/creacion-de-relaciones-n-n-desde.html) quise publicar también la des asociación de estos. El problema es que en esos días tuve alguna incidencia y no conseguí hacerlo funcionar. Posiblemente sea a causa de las altas horas de la noche en las que suelo hacer esto, y probablemente mi mente estaba ya demasiado agotada. La cuestión es que a petición de algún usuario en Codeplex (https://msdyncrmworkflowtools.codeplex.com/discussions/660101) he decidido volver a intentarlo, y esta vez si que ha ido bien.

Por lo tanto, esta nueva versión ya lo incluye. Como siempre, todo el código fuente y documentación esta disponible en Codeplex: https://msdyncrmworkflowtools.codeplex.com/

Para utilizar esta funcionalidad, primero seleccionar la acción:

SNAGHTML9831c5d

Y luego rellenar los dos parámetros:

image

Los parámetros son:

  • Relationship Name: donde debemos introducit el nombre de esquema de la relación N-N
  • Record URL: con la URL del registro que queremos relacionar al registro principal del contexto de ejecución del workflow.

En esta release, también he incluido un “arreglo” a una incidencia que había con los “Query Values”. Resulta que en la versión inicial había un error al ejecutar esta acción en los casos en que el parámetro “Attribute2” estaba vacío. Daba un error de Null…. El tema es que parece que al haber parámetros opcionales en la entrada que están vacíos, luego en los parámetros de salida daba una exception. Si se rellena un valor de un campo (aunque no se quiera utilizar), se resuelve. En la nueva verión los dos parámetros son obligatorios, con lo cual esta resuelto.

Espero paséis todos una feliz nochebuena y que esto les sea útil!

Sigo abierto a recibir feedback de nuevas funcionalidades a crear!

Un abrazo a todos

@demian_rasko

domingo, 11 de diciembre de 2016

Actualización masiva de registros hijos desde Procesos (Workflow Tools)

Buenas a todos, hoy vuelvo a escribir aquí con una nueva funcionalidad en mis Workflow Tools, que espero os guste.

Como siempre, mis herramientas están publicadas en Codeplex con todo el código y documentación disponible: https://msdyncrmworkflowtools.codeplex.com/

Hoy he realizado unos cambios en el proyecto, en el código y luego he añadido una nueva funcionalidad muy muy buena y compleja.

Primero he cambiado mi proyecto, para que pueda ser probado por fuera del plugin desde una aplicación de consola, posiblemente algún día publique algún post en este sentido para explicarlo en detalle.

Segundo, he añadido una nueva funcionalidad que he llamado “Update Child Records” permite actualizar todos los registros hijos de un registro padre. Permite la actualización de un campo de cada uno de los hijos basado en dos criterios:

1) Copiando dinámicamente el valor de un campo padre a un campo hijo, proporcionando el nombre del campo en la entidad padre

2) Copiando un valor estático como string pasado como parámetro en el workflow

Para utilizarlo, primero seleccionamos la acción:

image

Y luego debemos rellenar los parámetros:

image

Los parámetros son:

  • Parent Record URL: con la URL del registro (recogerla del propio workflow)
  • Relationship Name: nombre de esquema de la relación entre registro padre e hijo
  • Parent Field Name: (opcional) nombre del campo padre a copiar en los hijos
  • Value to Set: (opcional) si el campo anterior no se ha rellenado, podemos poner aquí un valor fijo en formato string
  • Child Field Name to Update: Nombre del campo de la entidad hija que vamos a actualizar masivamente

Notas:

1) La relación debe existir (tener cuidado cuando se escriba)

2) Los tipos de campos de la entidad padre e hija deben ser iguales.

sábado, 19 de noviembre de 2016

Dynamics 365, cambio del statuscode y consulta de relaciones (Workflow Tools)

Buenas a todos, últimamente he estado un poco apartado, principalmente por falta de disponibilidad para escribir y sobre todo porque estoy terminando de asimilar las previews de todo lo nuevo que viene.

Como todos saben, Dynamics 365 ya está aquí y espero poder escribir en breve acerca de esto. La semana pasada he estado en Seattle con el equipo de producto, y la verdad que es increíble todo el gran trabajo que está haciendo Microsoft en la mejora continua de la plataforma.

En este post de hoy, voy a retomar mis soluciones de workflows. En las últimas semanas me han reportado una serie de pequeños “bugs” y muchas propuestas de mejoras de funcionalidades existentes, además de ideas para nuevas funcionalidades.

Siento insistir sobre esto, pero por si alguien no lo conoce, tengo compartido en Codeplex (https://msdyncrmworkflowtools.codeplex.com) una solución con ya 45 funcionalidades para ejecutar desde workflows. Todo el código fuente, descargas y documentación está disponible allí.

Acabo ahora mismo de publicar la versión 1.0.34.0 con los siguientes cambios:

  • - SDK 8.2.0 (dynamics 365): ya lo tengo compilado y probado para Dynamics 365 (SDK version 8.2) y además dejé soluciones para CRM 2016 Update1 (8.1) y CRM 2.16 (8.0). Así que no hay excusas para utilizarlo Winking smile
  • BUG: Añadido un control de errores en la geolocalización con Bing Maps
  • Nueva funcionalidad para comprobar si ya existe una relacion N-N: “Check Associate Entity”
  • Nueva funcionalidad para cambio de estado y razón para el estado: “Set State”
  • Mejora: en el método de “String Functions” el parámetro "Replace: New Value" ya no es obligatorio, y permite hacer reemplazos por valores vacíos
  • Mejora: Ignorar errores al añadir por relaciones N-N repetidas

Todos estos cambios han sido recogido en el área de Discusiones de Codeplex, o sea que son 100% resultado de atender a las comunidades: https://msdyncrmworkflowtools.codeplex.com/discussions. Por favor seguir apoyando y dando ideas, yo intentaré atender todo lo que pueda y me dé tiempo Winking smile

un abrazo a todos!

@demian_rasko

sábado, 10 de septiembre de 2016

Encriptar Campos en Dynamics CRM con MD5 (Workflow Tools)

Muchas veces necesitamos almacenar en Dynamics CRM campos como contraseñas, que por temas legales o de seguridad no deberían ser almacenadas en texto plano para que no san leídos.

Para esto, algo bueno es disponer de la posibilidad de encriptar cadenas de texto con MD5, ya que de esta manera almacenamos una imagen de ese valor original.

Esta vez he utilizado un código bastante estándar disponible en la clase MD5CryptoServiceProvider  (https://msdn.microsoft.com/en-us/library/system.security.cryptography.md5cryptoserviceprovider(v=vs.110).aspx)

Lo he añadido como una nueva funcionalidad en las Workflow Tools, que son las herramientas que estoy evolucionando y compartiendo en las comunidades desde Codeplex. Todas las funcionalidades, código fuente y documentación está disponible aquí: https://msdyncrmworkflowtools.codeplex.com/

Para utilizar esta nueva funcionalidad de encriptación, seleccionamos la acción:

wf1.gif

Luego debemos pasar el string o text que queremos encriptar:

wf3.gif

Luego podemos obtener el parámetro de salida con el valor encriptado y utilizarlo como parte del workflow:

wf4.gif

Y aquí les dejo un ejemplo donde lo añado como dentro del campo de comentarios de la cuenta:

wf5.gif

Sinceramente, esto es una funcionalidad que muchos de nosotros ya hemos desarrollado en muchos proyectos, pero seguro que teniéndola en las workflow tools, no la desarrollaremos mas Winking smile

NOTA: Solamente un tema mas, como parte de esta versión de las Workflow Tools, he añadido una nueva pequeña funcionalidad, que nos devuelve el usuario que ha iniciado el flujo de trabajo, para mas detalle ver: https://msdyncrmworkflowtools.codeplex.com/wikipage?title=Get%20Initiating%20User&referringTitle=Documentation

Espero les guste!!

un abrazo

domingo, 4 de septiembre de 2016

Actualización de Objetivos desde Workflow (Workflow Tools)

Buenas a todos. El verano se esta acabando y mis vacaciones ya son historia, así que me toca volver de nuevo a reactivar mi blog y contribuciones a la comunidad.

Siguiendo la línea de mis publicaciones de este año, voy a seguir mejorando la herramienta de workflows que está teniendo una gran aceptación, unas 400 descargas mensuales me indican que es una solución que al menos despierta interés en la comunidad.

Esta vez sigo mejorando los workflows para poder hacer algo que solo se puede hacer o por código o manualmente en Dynamics CRM. O al menos hasta hoy.

Como todos saben, el módulo de objetivos tiene una funcionalidad “asíncrona” que va recalculando como se va con el objetivo, sumando los valores reales definidos en el mismo. Este recalculo se hace en el server y solo puede ser forzado mediante este botón en la barra de comandos de los objetivos:

SNAGHTML3ca387be

Hoy he decidido que podamos hacer que este recalcular se pueda automatizar a través de un Workflow.

Como siempre, esta nueva funcionalidad ha sido añadida a las Dynamics CRM Workflow Tools, disponible en Codeplex: https://msdyncrmworkflowtools.codeplex.com

Todo el código fuente, descargas y documentación están disponibles allí.

Para utilizar el mismo, debéis instalar la solución en vuestro entorno de CRM, y seleccionar la acción de Goal Recalculate:

SNAGHTML3ca5bd1c

Luego, podéis simplemente pasarle un parámetro con el Objetivo que queréis recalcular:

SNAGHTML3ca63058

Listo, así de simple. La librería sigue creciendo y espero ideas para añadir cosas, por favor compartir vuestras ideas para hacerlo mejor!!

abrazo!

@demian_rasko

domingo, 3 de julio de 2016

Creación de Relaciones N-N desde Workflow–Asociaciones (Workflow Tools)

Hola, hoy he añadido una de esas funcionalidades que son muy necesarias en los Workflows.

Cuando creamos relaciones de tipo N-N, muchas veces nos olvidamos que este tipo de relaciones luego no pueden ser creadas desde Workflows. La sorpresa nos llega tarde, cuando necesitamos crear una de estas y no lo podemos hacer. Entonces empiezan los desarrollos.

En este caso, he añadido una nueva función que permite asociar entidades. Como siempre todo esta documentado y disponible el código para ser seguido en Codeplex: https://msdyncrmworkflowtools.codeplex.com/

Como siempre explico como funciona. Primero seleccionamos la accion:

SNAGHTML54516534

Y luego introducimos el nombre de esquema de la relación N-N y la URL del registro a asociar:

SNAGHTML54520211

Espero les guste esta nueva funcionalidad, que creo muy necesaria.

abrazo!

@demian_rasko

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

lunes, 30 de mayo de 2016

Cambio de Fase en procesos de negocio (Workflow Tools)

Este fin de semana he dedicado algo mas de tiempo, y he añadido otra nueva funcionalidad a las ya conocidas Workflow Tools (https://msdyncrmworkflowtools.codeplex.com/)

Hoy he mejorado algo la funcionalidad de cambio de procesos que publiqué en diciembre pasado (http://www.demianrasko.com/2015/12/cambiando-el-proceso-de-negocio-de-un.html).

Esa funcionalidad servía para cambiar de proceso de negocio, y la de hoy es para cambiar de fase dentro del mismo proceso de negocio. La verdad, esta vez me ha inspirado mi amigo MVP Pablo Peralta (https://twitter.com/pabloperalta), al cual agradezco que me ha compartido casi todo el código que necesitaba para esta nueva funcionalidad.

La idea es simple y como siempre, todo el código esta disponible y abierto para la comunidad y para poder ser utilizado.

Primero seleccionamos la acción “Set Process Stage”:

SNAGHTML2147d072

Y luego rellenamos los parámetros:

SNAGHTML21485bf9

Lo importante es rellenar el valor del campo de la fase (“Stage”) que sea exactamente el mismo que dispone, porque sino dará un error.

Espero les guste!

abrazo a todos!

@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

domingo, 15 de mayo de 2016

Funciones con números en procesos (Workflow Tools)

Hola a todos, siguiendo la línea abierta añado mas cosas en los workflows tools.

Hoy voy a añadir funcionalidades relacionadas con números. En este caso son las funciones básicas de:

  • Suma
  • Resta
  • Multiplicación
  • División

La idea es que pueda realizar estas operaciones entre dos números, y usar las variables resultantes para otras cosas, sin necesidad de guardar estos datos en una entidad.

La funcionalidad como siempre, es muy simple, primero seleccionamos:

SNAGHTML12641eaf

Luego introducimos los dos números a ser tratados, de tipo decimal:

SNAGHTML12653223

Finalmente tenemos como resultado cuatro variables, que pueden ser utilizadas como se enseña a continuación:

SNAGHTML1266690d

La variables de resultado son:

  • Add
  • Subtract
  • Mutiply
  • Divide

Espero les haya gustado, sigo pensando mas funcionalidades para utilizar, se aceptan ideas Winking smile

un abrazo!

@demian_rasko

lunes, 2 de mayo de 2016

Calificar Leads desde workflows (Workflow Tools)

Buenas!

Después de unos días sin actualizar mi componentes, hoy he decidido que ya era hora…he estado probando cosas mas complejas, pero como no he conseguido que funcionen del todo bien por temas de seguridad que no he conseguido solventar, he preferido enfocarme en los Leads.

Todos conocemos los típicos procesos de ventas de cualificar un lead en oportunidad y demás, y uno de los temas que no se consiguen fácilmente es el de la conversión, el decidir si crear cuentas, contactos y oportunidades, o elegir que hacer.

Bien, hoy he añadido una actividad para cualificar Leads que he llamado “Qualify Lead”. Básicamente es una llamada al método “QualifyLeadRequest” de la SDK, pero he añadido todos los parámetros para que funcione de la forma mas genérica posible.

Como siempre, todo el código y la solución completa esta disponible en Codeplex: https://msdyncrmworkflowtools.codeplex.com/

Los pasos para utilizar esta acción son primero el de seleccionar la acción “Qualify Lead”:

SNAGHTMLdda596a

Y luego seleccionar los parámetros:

SNAGHTMLddaa662

Básicamente consiste en hacer lo mismo que se hace manualmente, pero de forma automatizada y en un Workflow Winking smile.

Espero les guste y les sirva esta nueva funcionalidad. La verdad que las ideas a veces me cuestan implementarlas, y por esto, os pido que recomendéis mas cosas y yo me encargaré de realizarlas siempre que pueda o sepa como…

Un abrazo!

@demian_rasko

domingo, 10 de abril de 2016

Serialización de entidades en JSON desde procesos (Workflow Tools)

Buenas, sigo avanzando con las funcionalidades desde Workflows.

Hoy he realizado una actualización, en la que he añadido una nueva funcionalidad y adicionalmente he realizado unso cambios solicitados por la comunidad.

Los campos es el de cambiar los nombres para mostrar de las acciones, por nombre mas “User friendly”. Ahora al seleccionar una acción desde los workflows, los usuarios verán las acciones de forma mas simple.

Por otra parte, estoy empezando a pensar en añadir algo que pueda ayudar para realizar integraciones. Muchas veces las integraciones de datos, pasan por ser envíos de datos en formato JSON.

Entonces la funcionalidad de hoy, lo que hace simplemente es recorrer todos los datos de la entidad, y generar un “string” con el JSON de todos los valores de todos los campos. Este JSON puede ser utilizado con posterioridad en cualquier otra acción del workflow.

Explico simplemente como siempre como funciona. Lo primero es seleccionar la acción (notar que han cambiado los nombres de las actividades):

SNAGHTML74b1ed9

Luego seleccionamos el registro a serializar mediante la URL del mismo:

SNAGHTML74b7bdd

Luego podemos utilizar el JSON de salida en cualquier acción del Workflow:

SNAGHTML74c1d5d

Finalmente os dejo un ejemplo de un JSON serializado de una cuenta:

SNAGHTML74c8203

Espero a futuro poder añadir funcionalidad de integración, como por ejemplo a través de WebHooks para enviar estos JSONs.

un abrazo!

@demian_rasko

domingo, 20 de marzo de 2016

Trabajo con Strings desde workflows (Workflow Tools)

Buenas! hoy he añadido nuevas funcionalidades a mi componente de Workflows, que creo que puede ser muy útil. Como siempre lo publico en mi Codeplex: https://msdyncrmworkflowtools.codeplex.com/ con todo el código abierto y compartido.

Muchas gracias a “carltoncolter” (https://manipulationlibrary.codeplex.com/) ya que me he inspirado en una solución que hizo para CRM 4.0 para añadir esta funcionalidad en mi componente.

Muchas veces en la ejecución de los workflows necesitamos hacer operaciones con campos de tipo texto, y estas son las funcionalidades que he añadido:

  • Texto con palabras en mayúsculas
  • Longitud del texto
  • Padding (completar con un carácter hasta un tamaño fijo)
  • Reemplazar textos
  • Substring (recortar un trozo del string)
  • Trimmed (quitar espacios por delante y detrás)

Como siempre, para utilizar esta actividad, descargar la nueva versión y utilizar la acción “String Functions”:

SNAGHTML30d8ab5

Y luego los parámetros:

SNAGHTML30dc9c1

Los parámetros de entrada del workflow son:

  • Input Text: texto de entrada a ser procesado
  • Capitalize All Words: para definir se si podrá la mayúscula solo a la primera palabra o a todas 
  • Padding: Pad Character: Definir el caracter de relleno
  • Padding: Pad on the Left: definir si el relleno es por la derecha o izquierda
  • Padding: Final Length: Longitud final del texto con el relleno
  • Replace: Old Value: Texto original a ser buscado para reemplazados
  • Replace: New Value: nuevo texto de reemplazo
  • Replace: Case Sensitive: definir si será sensible a mayúsculas o no el reemplazo
  • Substring: From Left to Right: define si el recorte, empieza por la derecha o izquierda
  • Substring: Start Index: Índice de inicio del recorte
  • Substring: Length: longitud del recorte

Los resultados de la ejecución de esta acción, devuelve todos los resultados, para que podamos utilizar lo que queramos:

SNAGHTML30f6e69

Espero les haya gustado, sigo buscando ideas….y seguiré evolucionando el componente!!!

un abrazo!

@demian_rasko

sábado, 12 de marzo de 2016

Actualizando los UserSettings de forma automática (Workflow Tools)

Las experiencias del día a día de los proyectos son una fuente inagotable de ideas para publicar cosas en mi blog.
Hoy he añadido una nueva “Tool” a mi ya conocida “Workflow Tools”, que comparto en Codeplex: https://msdyncrmworkflowtools.codeplex.com/
Hoy he añadido una cosilla que todo necesitamos en especial en aquellos proyectos que tienen muchos usuarios. La utilidad de hoy se llama “Set User Settings” y nos permitirá predefinir desde un Workflow, ciertos valores de los settings de usuario.
La funcionalidad es bastante simple, primero añadimos la acción:
SNAGHTMLd367c61
Y luego en los parámetros, podemos ir seleccionado los valores a introducir:
SNAGHTMLd36ecfd
La explicación de cada uno de los parámetros es la siguiente:
  • User: El usuario que se actualizará
  • PagingLimit: Registros por página en las vistas de CRM. los valores pueden ser: 25,50,75,100,250
  • AdvancedFindStartupMode: Determina la visualizacion predeterminada de las búsquedas avanzadas: 1:simple, 2: detalle.
  • TimeZoneCode: Determina la zona horaria del usuario. Si se pasa un “0” se ignora el valor. un ejemplo de todos los valores a introducir se puede ver aquí: http://www.powerobjects.com/2014/07/25/importing-values-time-zone-fields-dynamics-crm/
  • HelpLanguageId: Específica el código de idioma de la ayuda de CRM para el usuario. “0” para ignorar el valor.
  • UILanguageId: Especifica el idioma de la interfaz de usuario (UI) de CRM. “0” para ignorar el valor.
  • DefaultCalendarView: determina el valor predeterminado de la vista del calendario.
    • 0 para “día”
    • 2 para “mes”
    • 1 para “semana”
Pensar, en todas las posibilidad que nos puede dar esto, por ejemplo para iniciar todos estos “settings” de forma masiva, incluso para dejar un Workflow preparado para que futuros nuevos usuarios se inicien con estos valores, o utilizar un “dialogo”, para actualizar estos datos de usuarios…etc…
Espero les guste y lo encuentren útil!
un abrazo!
@demian_rasko

domingo, 21 de febrero de 2016

Añadiendo y quitando roles a usuarios y equipos (Workflow Tools)

Buenas, pasados unos días algo dificiles, vuelvo a mi blog.
Esta vez, he añadido 4 nuevas acciones a mis herramientas de Workflow. Las herramientas permiten:
  • Añadir Roles de seguridad a Usuarios
  • Añadir Roles de seguridad a Equipos
  • Quitar Roles de seguridad a Usuarios
  • Quitar Roles de seguridad a Equipos
Mi componente cada día crece mas, y ya tiene 21 funcionalidades, y sigue creciendo mes a mes.
Mediante estas nuevas funcionalidades, podemos “jugar” con los roles de los usuarios y de los equipos de forma dinámica y ágil, promoviendo que determinados procesos de negocio definidos en Dynamics CRM, tengan consecuencias en la asignación de los roles de seguridad.
La utilización es muy muy simple, y aqui os dejo ejemplo de usuarios y equipos:
SNAGHTML7cf60d
SNAGHTML7d1ca0
He pasado pruebas con diferentes usuarios y equipos, incluso con diferentes unidades de negocio. Solo un tema importante a tener en cuenta, es que al seleccionar el rol de seguridad, solamente se puede seleccionar el rol de seguridad de la unidade de negocio ráiz (la padre de todo).
Espero les guste!!
abrazo!
@demian_rasko

sábado, 23 de enero de 2016

Seleccionar o recoger elementos de Colas desde workflows (Workflow Tools)

Buenas, hoy voy a volver sobre lo que me está “entreteniendo” las últimas semanas.
Mi trabajo diario y dedicado a Dynamics CRM y a diferentes proyectos, así tambien como mis contactos constantes con gente en las comunidades, me da nuevas ideas para añadir funcionalidades a mi solución de workflows.
Esto se me está convirtiendo en una verdadera extensibilidad de Dynamics CRM, para hacer cada vez mas cosas. Ya no solo por cada una de las funcionalidades independientes que voy añadiendo, sino por la combinación de unas con otras. Estoy empezando a pensar que muchos de los temas que a lo mejor hoy se hacen con desarrollos de “plugins” (.NET), ya se podrían hacer de varias maneras combinando muchas de mis funcionalidades.
Hoy voy a añadir una funcionalidad que me ha llegado desde la “Familia” de CRM, una de los tantos grupos de usuarios de CRM en los que participo dentro de las comunidades de CRM.
La idea surge por el típico problema en el trabajo con Colas en Dynamics CRM. Si tenemos un escenario donde varios usuarios van recogiendo elementos de una Cola (casos, actividades, etc.) a veces ocurre que los usuarios no recogen los elementos en orden, sino que se recogen primero los que son mas sencillos, o los que “gusten” mas. Este comportamiento se conoce como “Cherry Picking”.
No hay manera de impedir esto de forma estándar o sencilla, y por esto se me ha ocurrido que si pudiésemos automatizar la recogida de elementos de una cola desde un Workflow, se podría solucionar este problema.
Por esto, he creado una actividad de Workflow que llamé “Pick From Queue”, que me permite automatizar este trabajo y lo he añadido a mi solución en Codeplex: https://msdyncrmworkflowtools.codeplex.com/
El funcionamiento, como siempre es muy simple. Primero seleccionamos la actividad de workflow “Pick From Queue”:
SNAGHTML1c50c7
Y luego definimos los parámetros necesarios:
SNAGHTML1ca2bf
La descripción de estos parámetros es:
  • Source Queue: Cola desde la cual quiero recoger los elementos
  • Remove Items From Source Queue: definimos si queremos que los elementos sean eliminados de la cola de origen o no. Así es como es la funcionalidad estandar de “Seleccionar” elementos de la cola de forma manual.
  • Quantity Items: para definir cuantos elementos queremos recoger a la vez.
Es importante destacar que le estoy aplicando un orden predeterminado a los elementos de la cola, que es el de la fecha de “Cola indicada” – enteredon es su nombre de esquema -  (de forma descendente).
Ahora pensemos escenarios donde aplicar esto. Imaginamos que tenemos que ir haciendo llamadas de teléfono, y a medida que vamos completando las mismas, disparamos un workflow con esta accion, para coger la/s siguiente/s llamadas. Automatizando esto, impedimos que los usuarios tengan que ir manualmente a “seleccionarse” el trabajo, sino que automáticamente se les irá asignando por orden.
Espero les haya gustado, y como siempre, estoy abierto a que me plantéis nuevas ideas Winking smile
@demian_rasko