Como ocultar una sección en Microsoft CRM es una de las preguntas que mas se realizan en foros y grupos de CRM. Por ese motivo me decidí a escribir un pequeño post para contarles como realizar esto.
En post anteriores les comenté como ocultar tabs y otros controles de los formularios de CRM.
La forma convencional de ocultar objetos de un formulario, se realiza por JavaScript.
Cada objeto del formulario (o en mayor parte) tiene asociado un id.
Con el uso del objeto "document" de JavaScript podemos referenciar cualquier objeto de una documento HTML, y en este caso en particular, nuestro formulario de CRM. Mediante el uso del método document.getElementById("<id>").
Volviendo al caso particular de las secciones es CRM. Cada una de estas tiene asociado un GUID al cual podríamos hacer referencia para ocultar la sección.
Una mejor solución para realizar esto es la de referenciar un campo en particular de la sección a ocultar, y mediante el uso del objeto document hacer referencia al nodo padre "parentNode" y así obtener la referencia a la sección.
La forma de hacerlo sería:
document.getElementById("customerid").parentNode.parentNode.style.display = "none";
Como notarán hice esta repetido "parentNode" en la instrucción.
Esto NO es un error. Se debe a una progresión, debido a que los campos están contenidos en etiquetas y estos en secciones. Fields -> Labels -> Sections.
Para volver a hacer visible la sección, solamente tenemos asignar un string vacío de esta forma:
document.getElementById("customerid").parentNode.parentNode.style.display = "";
Hasta la próxima!