# Totales

![](https://1007731275-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M7D2zitZhY9szSsa5EK%2Fsync%2Fe6655dd5a5e5faf02f3c0cabd096bdeaf6bd1b0e.png?generation=1589374125131277\&alt=media)

## Precarga hasta 65.000

Cuando cargamos una rejilla, aunque la lista de datos tenga millones de registros, Velneo realiza una precarga de los primeras 65.000 fichas. Esta precarga se realiza a través del socket envolvente en 2º plano. En caso de movernos a una posición de la rejilla posterior a esos 65.000 registros la rejilla cargará las fichas de los registros que están visibles.

## Calculo en 2º plano

Si la rejilla tiene totales del tipo "Suma acumulada de toda la columna", la precarga pasa a ser menos importante ya que la rejilla para poder calcular el total necesita leer todos los registros. Esta carga se realiza también en un 2º plano sin prioridad por lo que puede llevar un tiempo considerable si el número de registros de la rejilla es elevado, y aún más si estamos trabajando en Cloud.

## ¿Cómo optimizar?

Para optimizar los totales de la rejilla debemos evitar usar como tipo de contenido del pie "Suma acumulada de toda la columna" y sustituirlo por "Fórmula absoluta numérica".

Un posible método para realizar esta optimización podría ser que cuando se carga la rejilla disparemos un proceso que realice el cálculo. Para que este proceso no interfiera en el interfaz del usuario debemos ejecutar el proceso en 2º plano. Para que el cálculo esté lo más optimizado posible, el proceso en 2º plano ejecutará un proceso en 3º plano que será el encargado de leer los registros y calcular los totales. Todos los procesos son de origen lista de la tabla de la rejilla y se van pasando la lista de registros.

Cuando finaliza el cálculo el proceso en 3º plano, el proceso en 2º plano se encarga de atrapar los totales calculados de las variables locales del proceso en 3º plano. Y pone esos valores en variables globales en memoria que son las que visualizará la rejilla.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://doc.velneo.com/23/velneo-vdevelop/buenas-practicas-de-programacion/buenas-practicas-de-rendimiento/carga-de-registros-en-objetos-de-lista/rejillas/totales.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
