como poner cuentas totales de filas (con criterios especif.) en grid pero usando el grouping view.
Hola quisiera saber cómo poner totales de filas parecidos a los que se hacen con el comp. "summary", pero que se muestren en la posicion superior de un group, o sea, donde mismo se ponen los textos del componente "grouping view", quizas se logre esto con la plantilla "XTemplate" pero no tengo mucho dominio del lenguaje que esta usa.
Lo mas cercano a lo que quiero se logra con este ultimo componente con un texto así:"{values.rs.length}".
Esta tabla les ayudara a entender lo que quiero:
Grupo Objeto Cant
==========================
Gpo "Oficina" cantidad filas (con "Cant">2) 2
Espero entiendan lo que pido y que no sea muy complicado, gracias por su ayuda.
Crysfel probe lo que me dijiste y entendi, ya comprendo como crear renders con mis propias condiciones pero el problema es como mostrar lo que obtengo con el render en el encabezamiento de un grupo, el que sale cuando usas GroupingView,
Probe a usar una columna con renderer y obtener el valor de la columna con
values.rs[i].data.getValue() o algo asi no recuerdo bien es que no tengo acceso a mi projecto desde donde me conecto a Internet, Cuba? ya saben?. Bueno el caso es que con eso obtengo el valor del store que esta cargado en el grid no lo que contiene finalmente la grid despues de renderizar.
Que hago?
Eso es sencillo de realizar, simplemente debes asignar un "renderer" a la columna que agrupa, algo así:
var grid = new Ext.grid.GridPanel({
store : store,
columns :[
{header: 'Categoría', dataIndex: 'categoria', hidden: true, renderer: conteo},
{header: 'Columna 1', dataIndex: 'col1'},
{header: 'Columna 2', dataIndex: 'col2'}
]
});
//..... crear la función que renderizará el contenido del agrupador
function conteo(value,metadata,record,store){
var collection = store.queryBy(function(rec){
return rec.get("cant") > 2;
});
return 'Grupo: '+ record.get("categoria") +', Cantidad filas '+collection.getCount();
}
Y listo, con eso modificarás el contenido del agrupador con lo que tu quieras mostrar, inclusive puede meter HTML dentro del string que regresará y agregarle estilos via CSS para modificar la apariencia.
Saludos
¿Conoces a alguien que pueda responder esta pregunta? Comparte el link en Twitter o Facebook
Es necesario registrarse para poder participar en el foro! Si ya tienes una cuenta puedes entrar y comentar en este foro.