Como bien sabéis en Microsoft CRM tenemos la capacidad de incluir código JScript en los formularios para que se ejecute en función de varios eventos del propio formulario (OnLoad y OnSave) y de los campos del formulario (OnChange). En este y otros blogs sobre Microsoft CRM 3.0 podéis encontrar multitud de ejemplos.
Pero claro, como siempre que escribimos código, tarde o temprano vamos a necesitar depurarlo para encontrar esos malditos bichos que andan por ahí perdidos. Muchas veces con utilizar el depurador clásico nos vale ¿Sabéis a cual me refiero no? Sí, el alert(‘Llegué’), writeln(«Pasé por aquí»), println(«hola»)… o cualquiera de sus formas en los distintos lenguajes. Pero en otras ocasiones necesitamos más, un depurado más potente o, por lo menos, más cómodo. Personalmente, creo que con IDEs como Visual Studio o similares el depurador clásico pasa (o debería pasar) al baúl de los recuerdos.
Vale, y… ¿Cómo podemos utilizar el depurador de VisualStudio para depurar el código JavaScript del CRM? Pues la respuesta es bastante sencilla, incluyendo la sentencia debugger; al principio del código que queramos depurar, como en la página html de ejemplo:
<html xmlns=»http://www.w3.org/1999/xhtml»>
<head>
<title>Prueba</title>
</head>
<body onload=»onLoad();»>
<script type=»text/javascript»>
function onLoad()
{
debugger;
var i = 20;
document.title = «Probado»
}
</script>
</body>
</html>
Ahora debemos tener en cuenta una cosa. Por defecto en Internet Explorer 6 y 7, la opción de depurar código de script está deshabilitada. Para habilitarla vamos al menú opciones de internet, pestaña opciones avanzadas y en la sección exploración desmarcamos los 2 checkbox desabilitar depuración de secuencias de comandos.
Con esto, si abrimos la página (o un formulario del CRM) que contenga código JavaScript que ejecute la sentencia debugger, se nos mostrará un diálogo ofreciéndonos inicar la depuración. Si tenemos instalado Visual Studio nos dará la opción de utilizarlo como depurador para esa web, obteniendo toda la potencia del depurador de este IDE.
Bueno, espero que esto os resulte útil.
Un saludo