Mostrando entradas con la etiqueta cambiar filtro por defecto crm. Mostrar todas las entradas
Mostrando entradas con la etiqueta cambiar filtro por defecto crm. Mostrar todas las entradas

jueves, 26 de abril de 2007

Cambiar la vista por defecto - CRM 3.0

Bueno, sé que todos pensabamos que la vista por defecto no la podiamos cambiar, pero deambulando un poco por la web y basandome en ejemplos practicos, al final he conseguido cambiar la vista por defecto del Historia y de los Contratos en las cuentas.

Para realizar dicho cambio, necesitamos información varia:

* El nombre de la area a cargar.
* El nombre del Frame que contiene la vista del combo box de selección (Filtro).
* El nombre de la vista del Combo box.
* El valor del "option value" de la vista a seleccionar.

A continuación os pongo el código para cambiar la vista del Historial para mostrar "todo" por defecto, en vez de tan solo "los últimos 30 días". Ésto es aplicable a cualquier otro frame, luego os pondré por ejemplo el de contratos, para que en vez de mostrar por defecto "borrador", me muestre "todos".


//Código


SetDefaultView = function(viewCombo, viewName) {


if (viewCombo.value != viewName) {
viewCombo.value = viewName;
viewCombo.FireOnChange();
}}

/*Cargaremos el valor por defecto del Historico del Cliente

areaActivityHistoryFrame_OnReadyStateChange = function() {
if (document.readyState == "complete") {
var frame = document.frames("areaActivityHistoryFrame");
var viewCombo = frame.document.getElementById("actualend");
if (viewCombo.readyState == "complete") {
SetDefaultView(viewCombo, "All"); }
else {
viewCombo.onreadystatechange = function() {
if (this.readyState == "complete") {
SetDefaultView(this, "All"); }}}}}
loadArea('areaActivityHistory');
loadArea('areaForm');
document.frames("areaActivityHistoryFrame").document.onreadystatechange = areaActivityHistoryFrame_OnReadyStateChange;


//Ahora podemos hacer lo mismo para los contratos:


areaContractsFrame_OnReadyStateChange = function() {
if (document.readyState == "complete") {
var frame = document.frames("areaContractsFrame");
var viewCombo = frame.document.getElementById("statecode");
if (viewCombo.readyState == "complete") {
SetDefaultView(viewCombo, "All"); }
else {viewCombo.onreadystatechange = function() {
if (this.readyState == "complete") {
SetDefaultView(this, "All"); }}}}}
loadArea('areaContracts');
loadArea('areaForm');
document.frames("areaContractsFrame").document.onreadystatechange = areaContractsFrame_OnReadyStateChange;