El día de hoy vamos a añadir nuevas funcionalidades para dar diseño a nuestros formularios. Esto es algo que CRM 2011 no tiene de forma estándar pero que puede ser muy útil para guiar a los usuarios en los campos de los formularios, o para resaltar algunos en particular.
La idea es poder modificar los colores de fondo de la letra de los campos de CRM:
Formulario: Cuenta
Evento: OnLoad(), OnChange(), OnSave()
Atributos: (address2_line1, address2_line2, address2_line3 y description).
Funcionalidad: Se han modificado por el XML los colores de fondo de todos esos campos, y los colores de las letras a 2 de ellos.
Todo este ejemplo estará como siempre disponible en Codeplex:
http://elblogdedynamicscrm.codeplex.com/documentation
En el XML, he añadido unas acciones nuevas:
Los tipos de acciones nuevos que he creado son:
- backgroundcolor
- fontcolor
Ambos dos reciben como parámetros los nombres de los atributos (attributename) y el color a asignar (color).
He tenido que mejorar la función de acciones añadiendo nuevos métodos:
function Actions()
{
var nodePath = "//Root/actions/action";
var nodelist = doc.selectNodes(nodePath);
//Actions
LoadXmlWebResource("new_new_test_xml");
for (var i = 0; i < nodelist.length; i++)
{
var attributes=nodelist(i).attributes;
var type= attributes.getNamedItem("type").nodeValue;
switch (type)
{
case "concat":
var destattribute= attributes.getNamedItem("destattribute").nodeValue;
var attributestoconcat= attributes.getNamedItem("attributestoconcat").nodeValue;
var stringseparator= attributes.getNamedItem("stringseparator").nodeValue;
Concat(destattribute,attributestoconcat,stringseparator);
break;
case "backgroundcolor":
var attributename= attributes.getNamedItem("attributename").nodeValue;
var color= attributes.getNamedItem("color").nodeValue;
setBackgroundColor(attributename,color);
break;
case "fontcolor":
var attributename= attributes.getNamedItem("attributename").nodeValue;
var color= attributes.getNamedItem("color").nodeValue;
setFontColor(attributename,color);
break;
}
}
}
Y para la gestión de los colores en los atributos he añadido dos funciones nuevas:
function setFontColor(attributename,color)
{
document.getElementById(attributename).style.color = color;
}
function setBackgroundColor(attributename,color)
{
document.getElementById(attributename).style.backgroundColor = color;
}
El ejemplo y la solución completa funcionando la he dejado como siempre en CodePlex.
Miren como quedaría el formulario con este ejemplo:


Suscribirse al RSS
No hay comentarios:
Publicar un comentario