top of page
Suma de los registros seleccionados...
Ramiro Pérez Acebo - Julio 2014
 
 

Desde que salió V7 hasta hace unos meses he estado esperado a que apareciera aquella magnífica prestación de V6 que era la "Suma de los seleccionados" en una columna de rejilla. El caso es que van ya 15 versiones y parece que va a ser que no, de modo que me he puesto las pilas...

 

El caso me lo he planteado de dos formas: automático y manual:

 

Llamo "automático" al caso en que al seleccionar varios registros en una rejilla la suma de de los marcados se muestra inmediatamente

 

Llamo "manual" al caso en que tras seleccionar varios registros en una rejilla tenga que pulsar un botón para ver la suma de los marcados

Resolución del caso Automático

 

Sería, por ejemplo, el caso de esta rejilla, en donde tras seleccionar dos registros, en la parte superior se muestra la suma acumulada de 2 columnas

 

Para resolverlo basta con asociar a la rejilla (de nombre REJ_N43) una conexión de evento de tipo "simple-click" que ejecute el evento CS_N43

 

El evento es sencillo...

 

... y los manejadores llamados también lo son (el segundo, de hecho, es innecesario)

Resolución del caso "Manual" (hay que pulsar un botón para ver la sumas)

 

Este caso es mucho más flexible puesto que todo se hace en la rejilla y por consiguiente el comportamiento se va con ella allí donde la usemos.

 

A la rejilla le asociamos una Toolbar que incluya una acción que dispare una señal

 

Supongamos que esa acción de la Toolbar sea la que tiene el icono de sumatorio. Si después de marcar varios registros de la rejilla pulsamos la opción de sumar, cada columna mostrará el valor correspondiente a la suma de los registros marcados.

Como decía, todo el trabajo se hace en el objeto rejilla, y consta de los siguientes elementos:

 

1.   Un grupito de variables, la última de las cuales es una matriz numérica

2.   Una conexión de evento que detecte la señal enviada por la acción de la Toolbar y que ejecute el manejador SUM_SEL

3.   Un manejador de evento (SUM_SEL) que haga las sumas y de valor a las variables.

 

Al final del manejador se asigna explícitamente (para forzar el refresco) el valor a las variables que realmente se muestran en la rejilla 

Finalmente, en cada columna de la rejilla se asigna un TEXTO como tipo de contenido del pie, indicándole la variable alfabética a mostrar:

Se agradecerá cualquier sugerencia que simplifique o mejore esta técnica...

bottom of page