Home

Microsoft Dynamics CRM

Deshabilitar el mensaje Pending Emails en CRM 2011 - 2015

webmaster's picture

Este método no esta soportado, por lo que solo es valido para instalaciones Onpremise

 

Utilice un usuario con derecho de Administración que pueda editar el registro donde se encuantra instalado CRM 2011. 
Ejecute el comando Regedit
Vaya a Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSCRM
Boton derecho sobre MSCRM > New > DWORD = "DisablePendingEmailReminder"
Especifique el valor = 1
Resetee el servicio de IIS
 
Esta solución también es válida para CRM 2015 OnPremise

Ocultar Botones en el Ribbon de una entidad de Microsoft Dynamics CRM 2011 utilizando javascript

webmaster's picture

Los botones del Ribbon de cualquier entidad tienen 3 hubicaciones.

  • Form
  • Homepage Grid
  • Sub Grid
 
La via soportada por Microsoft Dynamic CRM para ocultar los botones sería la de editar las propiedades del <Dysplay Rules> dentro del Ribbon al botón afectado, asociandole un proceso javascript hubicado en un webresources que devuelva un valor positivo o negativo. En este artículo utilizaremos un metodo "no soportado" par oculltar aquellos botones que no nos interesen mostrar utilizando simplemente el modelo de objetos DOM de javascript.

En nuestro ejemplo utilizaremos la entidad Account para ocultar en el formulario los botones de Añadir Archivo y Añadir Notas que no nos interesa mostrar, por una personalización especifica de nuestro cliente.

 

Mostramos primeramente los botones que queremos ocultar cada vez que se cargue el formulario Account. Para poder localizar el ID del elemento en cuestión utilizamos en el IE la exploración de objetos (tecla F12).

 

AD FS 2.0: El servicio no se puede iniciar

webmaster's picture

En muchas ocasiones cuando estamos trabajando con servicios de federación de aplicaciones en servidores que no tienen conection a Internet nos encontramos con que nuestro servicio no puede iniciarse de forma normal ni con retraso, obteniendo el error  de AD FS 2.0: El servicio no se puede iniciar: "El servicio no respondió a la petición de inicio o del control de forma oportuna. Tambien posee retardo en el arranque o arranca de forma muy lenta. Esto puede ocurrir después de una instalación inicial o después de un arranque manual o incluso despues de reiniciar el servidor.Tambien nos podemos encontrar con errores parecidos a a este en el Event log: The System event log indicates a timeout failure similar to the following.

Source: Service Control Manager
 
Event ID: 7000
 
The AD FS 2.0 Windows Service service failed to start due to the following error:
 
The service did not respond to the start or control request in a timely fashion.
 

Las causas de este comportamiento son debido a que el administrador de control de servicios (SCM) se excede del tiempo de espera del inicio del servicio antes de que se haya completado. Esto es generalmente debido a la falta de conectividad a Internet desde el AD FS 2.0 Federation Server o AD FS 2.0 Federación servidor proxy. Al inicio del servicio, cuando el generatePublisherEvidence está habilitado para .NET 3.5, el servidor intentará conectarse a crl.microsoft.com través del puerto TCP 80. AD FS 2.0 no obtiene ninguna respuesta positiva o negativa de generatePublisherEvidence, y el valor por defecto (NULL) puede causar que el administrador de control de servicios pare el tiempo de espera mientras se espera en la conexión TCP / 80 para dejar de conectarse a crl.microsoft.com.

Existen tres opciones de resolver este problema. Todo esta en dependencia de lo que queramos que afecten nuestros cambios.

Impedir grabar una cita en dependencia del valor del tipo en CRM2011

webmaster's picture

Nuestro caso está basado en que después de tener clasificados varios tipos de citas, hemos tenido que unificar criterios y se dejan de utilizar alguno de los tipos de citas que antes se utilizaban. Uno de esos tipod e citas que existen en la actualidad es "Others". Como no podemos borrarlos, porque sino los registros de esos tipos de citas que antes existían se quedarían si valor, la solución sería ocultar los tipos de citas que ya no valen al crear una cita nueva y para las citas antiguas creadas, en el momento de que se vayan a grabar, mostrarle un cartel que con ese tipo ya no se pueden grabar y que elija otro de los permitidos.

 

Primeramente vamos a crear una libreria "Apointment_main_libnrary.js" y la vamos a adjuntar a la lista de los archivos que utliza la entidad "Appointment". Dentro de esta libreríoa crearemos la funcion "Form_Onsave" y "Form_Onload" que serán llamadas desde el formulario en los eventos OnSave y OnLoad del formula.rio Main del mismo.

En la figura anterior se muestra como se activa la librería y la llamada al metodo que contiene en el evento OnSave del formulario.

Ocultar el dropdown list de Actividades en CRM 2011

webmaster's picture

En nuestro proyeto de la entidad Gastos, nos surge la necesidad de ocultar el dropdown list de la lista de Actividades, debido a que este por lo general filtra la información basado en unos criterios poco útiles, así que es mejor diseñar vistas personalizadas con los criterios que queremos y no utilizar las condiciones de filtro que aparecen en dicho desplegable.

Nos referimos al desplegable que se muestra en la imagen más abajo:

How to execute a Workflow from Plugin in Microsoft Dynamics CRM 2011

webmaster's picture

Este es uno de los casos más complejos de resolver en Microsoft Dynamics CRM 2011, partiendo de la base que un Workflow diseñado para una entidad no puede ser llamado desde otro workflow como un proceso secundario al cual no pertenece, encima si este workflow se tiene que ejecutar a la espera de algunos parámetros de la entidad anterior. Bueno un poco complicao de explicar técnicamente; pero a nosotros nos surgió el problema y acudimos a nuestro ingenio para resolverlo mediante el diseño de un plugin que se disparase en la actualización de la entidad origen y este llamase al workflow de la entidad destino correspondiente pasandole los parámetros necesarios para su ejecución.

En nuestro proyecto de Control de gastos de usuarios, cuando un usuario da de alta a un gasto, el Administrador del sistema, recibe una actividad de tipo tarea, con la notificación que tiene un gasto que aprobar, ya que según el sistema solo el está autorizado a Aprobar dicho gasto y en dicha tarea se encuentra la referencia al gasto que se ha dado de alta.


Pulse en la imagen para ampliar

¿Como automatizar el cierre de la tarea cuando el gasto se apruebe?

Diseñamos primeramente un workflow desde Area de Navegación en el Centro de procesos - Procesos y le llamamos CloseTaskAfterApprobalFees con la siguiente definición:

Activar / Desactivar botones del Ribbon según user role in CRM 2011

webmaster's picture

Teniendo personalizada la vista de nuestra entidad new_gastos, con los nuevos botones que aprueban los gastos y pagan los mismos, es necesario habilitarlos solo para ciertos roles de usuarios para que desde la misma vista de los gastos puedan actuar sobre los botones. Al principio creiamos que con solo habilitar en la zona de </DisplayRule> <EnableRules> </EnableRules> </DisplayRules> era suficiente, pero al parecer después de consultar varios blogs sobre el tema la solución pasa por la combinación de una definición en esa zona del ribbon, de una llamada a un webresource que contenga una function que nos devuelva el role del usuario conectado y con ello habilitar el que se displayen o habiliten los correspondientes botones.

Limites de tiempo en Microsoft Dynamics CRM 2011

webmaster's picture

Por cuestiones de programación y desarrollo he tenido algunos problemas en importaciones y tratamiento de volumenes de datos en el CRM 2011, y en mucho de los casos el problema procedía de la violación de los limites de tiempo que dynamics CRM 2011 tenía configurado e cada caso. He confeccionado una lista de los límites de tiempos que tiene configurado por defecto el producto para consultarla en proximas ocasiones:

Query individual de SQL

ASP.NET

execution Timeout

Actualizando varios registros desde el Entity Grid en Microsoft Dynamics CRM 2011

webmaster's picture

Uno de los procesos que llevamos a cabo en nuestro pequeño/gran proyecto de control de gastos dentro de Microsoft Dynamics CRM 2011 es el poder pasar al estado aprobado varios registros de gastos desde la vista o grid de la entidad, por el usuario que tiene los derechos de utilizar esta función; en este caso el Administrador del Sistema, que por cierto ha recibido una notificación por cada gasto dado de Alta en su lista de tareas que tiene pendiente de aprobar. Léan nuesto Artículo "Desarrollo y registro de un Plug in asincrono en Microsoft Dynamics CRM 2011 ".

Lo primero que hacemos es crear los botones correspondientes en el Ribbon de la Entidad. Para ello realizamos los pasos realizaos en el artículo "Ribbon personalizados en Microsoft Dynamics CRM 2011. Agregar una Pestaña, Grupo y Botón" para exportar nuestra solución y editar el archivo customizations.xml en la sección del <Ribbon></Ribbon> encontraremos los apartados del botón. Dentro de la zona buscariamos la zona de Homepage que es la relacionada con el HomePage de la Entidad y no la de Form. Muy importante. 

Generar Diagramas de Entidades en Microsoft Dynamics CRM 2011

webmaster's picture

Dentro de las herramientas de desarrollo que nos proporciona el SDK de Microsoft Dynamics CRM 2011 se encuentra la Metadata Diagram Tool dentro de la carpeta .SDK\SampleCode\CS\MetaData\Diagram con su código fuente en lenguaje C#. La carpeta también contiene el readme.txt file que nos sevirá para saber como tenemos que usar la herramienta para generar el diagrama que queramos de cualquiera de las entidades de nuestro CRM. Es necesario tener instalado Microsoft Visio 2007 o superior ya que esta herramienta utiliza la API de este programa para generar el documento final en este formato.. A continuación explicamos como hemos generado el Diagrama de dos de las entidades personalizadas que hemos agregado recientemente al CRM.