MSCRM 4.0: Módulo de auditoría de datos

16 11 2010

Tras varios proyectos en los que hemos tenido que aplicar un módulo de auditoría de datos he conseguido unificar todos los desarrollos y conceptos aplicados en un nuevo módulo de auditoría de datos. El sistema es aplicable de forma muy simple a cualquier instalación de MSCRM 4.0 con Rollup 9 o superior (este requerimiento lo podemos modificar…). A continuación os muestro los componentes del sistema y, más adelante intentaré publicar un pequeño manual del usuario así como un manual de instalación.

El modulo de auditoría de datos dispone de una página principal en el apartado de Configuración de MSCRM desde donde se puede acceder a la configuración del módulo y al registro de cambios.

En la opción de configuración de atributos a auditar el usuario puede seleccionar las entidades y atributos que quiere auditar. Para ello se muestra una interfaz en la que el usuario puede seleccionar la entidad y mostrar los atributos de la misma. Con un sistema muy sencillo de selección de atributos, el usuario selecciona aquellos que desea auditar (o elimina los que ya no desea auditar!).

Una vez seleccionados las entidades y atributos a auditar el sistema ya empieza a auditar los cambios realizados en las entidades y atributos seleccionados. Desde la página principal del módulo y mediante la opción de Ver el registro de la auditoría el usuario puede ver todos los cambios realizados sobre las entidades y atributos auditados.

Opcionalmente el usuario puede añadir una opción para poder visualizar el histórico de cambios de cada atributo desde el formulario de edición de la entidad correspondiente. Mediante esta opción en el formulario de edición se muestra un icono junto al label del atributo auditado que permite mostrar el histórico de cambios del atributo.

El sistema es completamente autónomo y, como he comentado al principio, puede aplicarse a cualquier instalación de MSCRM 4.0. Como siempre quedan un montón de cosas que se pueden hacer para mejorar este módulo pero… tendremos que esperar a nuevas versiones. Por el momento se me ocurren las siguientes mejoras (por si alguien tiene algo de tiempo y quiere empezar con ellas!!!):

1. Crear un sistema de instalación automatizado (tan sólo debe crear unas entidades, copiar algunos archivos en el ISV y registrar un plugin)

2. Mejorar el sistema de selección de entidades y atributos

3. Añadir la opción de visualizar los eventos (ya que sino por ejemplo no puede visualizarse un registro que se ha eliminado)

Anuncios




ASP.NET: Fijar la cabecera de un GridView

16 11 2010

Esta semana estuve desarrollando un componente muy interesante para un cliente. El componente consistía en un grid editable de los productos de una oportunidad. En otro artículo mostraré como realice el desarrollo. Por el momento, os describo como resolví un tema, para ese desarrollo, con el cual ya me había topado en alguna otra ocasión. En concreto el problema consiste en como fijar la cabecera de un GridView. Cuando utilizamos el GridView y el número de filas es superior al que se puede visualizar en la ventana, nos muestra el scrollbar vertical pero, al desplazar el scroll hacia abajo, la cabecera nos desaparece como una fila más.

Para resolver este problema, he utilizado un estilo para el tag HeaderItem con las propiedades siguientes:

.DataGridFixedHeader
{
position: relative;
top: expression(this.offsetParent.scrollTop-3); /*this works fine with IE only, but FireFox seems to be ignoring this*/
}

En la definición de los HeaderItem he añadido la clase CSS a través del tag HeaderStyle:

<HeaderStyle CssCalss="DataGridFixedHeader">

Con esta definición, observareis que la fila de cabecera se mantiene fija en la parte superior del grid incluso cuando nos desplazamos hacia las filas inferiores con el scrollbar.