domingo, 31 de julio de 2011

Eliminación automática de flujos de trabajo en Microsoft Dynamics CRM 2011

En los años que tengo implementando Dynamics puedo decir que un elevado porcentaje de los problemas de rendimiento asociados a una baja en los tiempos de respuesta de la solución, están relacionados con un crecimiento repentino de registros en la tabla WorkflowLogBase, y hablando precisamente de la WorkflowLogBase en esta tabla se guarda todas los pasos (actividades) ejecutados por los flujos de trabajo, la cual dependiendo de distintas variables tales como: cantidad de flujos de trabajo implementados, tamaño de los flujos de trabajo y frecuencia de uso pueden provocar que esta tabla crezca de manera exponencial.

Recuerdo que el equipo de Microsoft Dynamics publicó el KB 968520 donde toca este tema pero ¿Qué es lo que hace este KB?

Básicamente, sugiere la aplicación de un script que permite borrar el contenido de los registros en la WorkflowLogBase, claro está los registros que se encuentren ya en estado finalizado o cancelado, quiere decir que ya no podremos visualizar los pasos completados de un workflow ya que ese log se elimina si es que se aplica este script.

Cabe mencionar que este KB aplica tanto para implementaciones realizadas con CRM 4 y CRM 2011, en ocasiones se recomienda incluir este paso como parte del plan de mantenimiento de la aplicación CRM en implementaciones donde los flujos de trabajo juegan un papel fundamental.

Microsoft Dynamics CRM 2011 dentro de las nuevas funcionalidades que ofrece ayuda a controlar de manera nativa este pequeño inconveniente asociado a versiones anteriores del producto, es más es una nueva funcionalidad asociada al diseñador de flujos de trabajo del cual no se habla mucho.

Y hablando un poco más de esta nueva funcionalidad, pues esta permite borrar automáticamente un flujo de trabajo cuando este haya finalizado su ejecución por completo.

Cabe indicar que esta funcionalidad se activa por flujo de trabajo, no es una configuración del sistema que vaya a aplicarse automáticamente sobre todos los flujos de trabajo.

Los pasos a seguir para activarla son bastante sencillos:

1. Dirigirse al módulo de procesos.

2. Seleccionar el flujo de trabajo al cual se desea activar esta propiedad.

3. Desactivar el flujo de trabajo.

4. Ingresar al flujo de trabajo y seleccionar la pestaña Administración.

5. Ubicarse en la sección “Retención de la tarea del flujo de trabajo.

6. Hacer clic en el check box “Eliminar automáticamente las tareas de flujo de trabajo completadas”

image

7. Activar flujo de trabajo.

Con esto conseguimos que una vez finalizada la ejecución de un flujo de trabajo el sistema borre automáticamente todo rastro de él.

Como conclusión recomiendo analizar siempre la factibilidad de aplicar esta propiedad en vuestras implementaciones, ya que si bien es cierto ayuda y alivia un tema que aqueja al usuario final principalmente (performance del aplicativo) por otro lado se pierde el rastro de las actividades disparadas de un flujo de trabajo sobre un determinado registro el cual no puede gustar mucho a los encargados de dar soporte y administrar la solución.

Espero haberlos entretenido.

Saludos,

Jimmy Larrauri

Sígueme en twitter: @jimlarrauri

viernes, 8 de julio de 2011

Mensajes y su relación con las entidades en Microsoft Dynamics CRM

El día de hoy hablaremos acerca de un tema de bastante importancia cuando se trata de personalizar las entidades en Microsoft Dynamics CRM, conversaremos de la importancia de los Mensajes y su relación directa con la personalización de entidades y atributos en Microsoft Dynamics CRM.

Pero, ¿Qué son los mensajes en Microsoft Dynamics CRM?

image

Los mensajes son las expresiones que se muestra dentro de las ventanas de alertas, diálogos de página web, pop ups, etc. en respuesta a una acción que ejecuta el usuario cuando interactúa con alguna funcionalidad específica del CRM.

Microsoft Dynamics CRM agrupa los mensajes por entidades y estos están estrechamente relacionados con los nombres por defecto de las entidades y atributos que vienen de caja con la solución.

Cuando queremos resolver un caso, damos clic al botón “Resolver Caso” e inmediatamente el sistema muestra un mensaje en un “pop up” cuyo título es “Resolver Caso”

Pregunta, acaso nunca te has preguntado lo siguiente:

· ¿Qué pasa si le cambio el nombre a la entidad Caso?

· ¿Es posible cambiar el valor del texto que sale en este pop up y actualizarlo con el nuevo nombre asignado a la entidad?

Acaso esto ya no te es muy familiar …

Me imagino que habrás hecho por lo menos un par de veces esta pregunta, y es más que seguro que hayas escuchado de muchos otros colegas decir “No se puede”, “El formulario de esa entidad no es personalizable”, “Busca en el SDK”, “Revisa en los foros”, “Revisa en los libros de Dynamics CRM”, etc, etc, etc.

Pues al ser este un tema muy recurrente hoy en día, los invito a que hagan el siguiente ejercicio junto conmigo:

1. Renombrar la entidad Caso con el nombre “Incidente

2. Publicar la entidad.

3. Abrimos algún incidente activo y hacemos el ejercicio de resolver el incidente.

Lo primero que podemos observar es que el formulario de Incidente contiene botones en el ribbon que hacen referencia al nombre antiguo de la entidad. (Caso)

Al dar clic al botón Resolver Caso, se abre un pop up, que dice lo siguiente:

Resolver Caso

Proporcione información en los siguientes cuadros para resolver el caso

image

Entonces, podemos concluir algo, Dynamics CRM de manera automática no actualiza el nombre de los mensajes relacionados al nombre de la entidad que muestra dentro del pop up.

La pregunta del millón es ¿Existe una forma soportada de hacerlo?

Pues nada más sencillo que dirigirnos a la sección de Mensajes de la entidad Incidente, localizar los mensajes que se quieren actualizar y cambiar el texto antiguo “Caso” por el nuevo valor “Incidente”.

image

Publicamos los cambios.

Revisamos nuevamente el caso que habíamos abierto hace un momento.

Podemos observar que los valores de los mensajes que anteriormente citaban al antiguo nombre de la entidad ahora muestran el valor actualizado.

image

Nota:

Como buena práctica se recomienda actualizar los mensajes relacionados a la entidad y atributos, cuando se haya cambiado el nombre por defecto de esta o haya sido modificado el nombre de algún atributo que está vinculado con algún mensaje específico en el CRM.

 

Conclusión:

Cuando se planee la personalización sobre una entidad de caja o personalizada se debe de considerar todos los componentes que pueden verse impactados, estos son:

1. Actualización de atributos de caja. ( por ejemplo: Tipo de caso )

2. Actualización de nombres de vistas.

3. Actualización de formularios. ( Título secciones, Iframes)

4. Actualización de nombres de relaciones.

5. Actualización de gráficos de caja.

6. Actualización de mensajes.

7. Actualización de nombre de los botones en el Ribbon.

Espero haberlos entretenido.

 

Un abrazo,

Jimmy Larrauri, MVP – Microsoft Dynamics CRM

Mensajes y su relación con las entidades en Microsoft Dynamics CRM

El día de hoy hablaremos acerca de un tema de bastante importancia cuando se trata de personalizar las entidades en Microsoft Dynamics CRM, conversaremos de la importancia de los Mensajes y su relación directa con la personalización de entidades y atributos en Microsoft Dynamics CRM.

Pero, ¿Qué son los mensajes en Microsoft Dynamics CRM?

image

Los mensajes son las expresiones que se muestra dentro de las ventanas de alertas, diálogos de página web, pop ups, etc. en respuesta a una acción que ejecuta el usuario cuando interactúa con alguna funcionalidad específica del CRM.

Microsoft Dynamics CRM agrupa los mensajes por entidades y estos están estrechamente relacionados con los nombres por defecto de las entidades y atributos que vienen de caja con la solución.

Cuando queremos resolver un caso, damos clic al botón “Resolver Caso” e inmediatamente el sistema muestra un mensaje en un “pop up” cuyo título es “Resolver Caso”

Pregunta, acaso nunca te has preguntado lo siguiente:

· ¿Qué pasa si le cambio el nombre a la entidad Caso?

· ¿Es posible cambiar el valor del texto que sale en este pop up y actualizarlo con el nuevo nombre asignado a la entidad?

Acaso esto ya no te es muy familiar …

Me imagino que habrás hecho por lo menos un par de veces esta pregunta, y es más que seguro que hayas escuchado de muchos otros colegas decir “No se puede”, “El formulario de esa entidad no es personalizable”, “Busca en el SDK”, “Revisa en los foros”, “Revisa en los libros de Dynamics CRM”, etc, etc, etc.

Pues al ser este un tema muy recurrente hoy en día, los invito a que hagan el siguiente ejercicio junto conmigo:

1. Renombrar la entidad Caso con el nombre “Incidente

2. Publicar la entidad.

3. Abrimos algún incidente activo y hacemos el ejercicio de resolver el incidente.

Lo primero que podemos observar es que el formulario de Incidente contiene botones en el ribbon que hacen referencia al nombre antiguo de la entidad. (Caso)

Al dar clic al botón Resolver Caso, se abre un pop up, que dice lo siguiente:

Resolver Caso

Proporcione información en los siguientes cuadros para resolver el caso

image

Entonces, podemos concluir algo, Dynamics CRM de manera automática no actualiza el nombre de los mensajes relacionados al nombre de la entidad que muestra dentro del pop up.

La pregunta del millón es ¿Existe una forma soportada de hacerlo?

Pues nada más sencillo que dirigirnos a la sección de Mensajes de la entidad Incidente, localizar los mensajes que se quieren actualizar y cambiar el texto antiguo “Caso” por el nuevo valor “Incidente”.

image

Publicamos los cambios.

Revisamos nuevamente el caso que habíamos abierto hace un momento.

Podemos observar que los valores de los mensajes que anteriormente citaban al antiguo nombre de la entidad ahora muestran el valor actualizado.

image

Nota:

Como buena práctica se recomienda actualizar los mensajes relacionados a la entidad y atributos, cuando se haya cambiado el nombre por defecto de esta o haya sido modificado el nombre de algún atributo que está vinculado con algún mensaje específico en el CRM.

 

Conclusión:

Cuando se planee la personalización sobre una entidad de caja o personalizada se debe de considerar todos los componentes que pueden verse impactados, estos son:

1. Actualización de atributos de caja. ( por ejemplo: Tipo de caso )

2. Actualización de nombres de vistas.

3. Actualización de formularios. ( Título secciones, Iframes)

4. Actualización de nombres de relaciones.

5. Actualización de gráficos de caja.

6. Actualización de mensajes.

7. Actualización de nombre de los botones en el Ribbon.

Espero haberlos entretenido.

 

Un abrazo,

Jimmy Larrauri, MVP – Microsoft Dynamics CRM