Por Randall Montoya
Muy bien, ya tenemos claro cómo funcionan los límites de mi aplicación y qué es la delegación. Ahora sí, ¿cómo evito dejar de lado los registros que necesito?
Voy a darles varias recomendaciones, algunas más complicadas que otras, pero les comento de una vez que todos los escenarios son diferentes y no existe una sola solución mágica que sirva bien en todos. Dependerá de ustedes decidir dónde y cómo aplicar cada una.
Consejos:
- Ignora la advertencia:
Este es el peor de los consejos, sin embargo, tiene su lógica. Si mis fuentes de datos son pequeñas (menos de 500 registros) y se van a quedar así (esta es la parte importante), puedo simplemente ignorar la advertencia ya que siempre voy a poder trabajar con la totalidad de registros sin muchos problemas.
Entiendan algo, esto solo aplica si mis datos no van a crecer fuera de los límites de la aplicación. Por ejemplo, si mi aplicación envía un recordatorio a mi lista de 150 clientes o actualizo la cantidad de mi inventario de 300 productos. En el momento en que yo sepa que alguna de mis tablas va a crecer más allá del límite, esta solución deja de aplicar.
- Dale vuelta a tus datos:
Este consejo tiene un poco de trampa, pero funciona bastante bien. ¿En qué consiste? En invertir el orden de los datos para asegurarse de tener los datos más nuevos siempre en la consulta y luego aplicar el consejo #1 (ignorar la delegación).
¿Cuándo aplicar este consejo? Cuando yo sé que la cantidad de registros va a superar los límites, pero los datos importantes son los más nuevos.
Imaginemos el siguiente escenario como ejemplo:
- Tengo un sistema de tiquetes de soporte y se abren unos 100 tiquetes al mes.
- Un tiquete no puede estar abierto más de un mes.
- Mi aplicación tiene un límite de 500 registros.
Con esta información podemos saber que van a pasar aproximadamente 5 meses antes de que la aplicación llegue a su límite, pero cuando eso pase, la mayoría de los tiquetes tendrán cerrados 4 meses y ya no son importantes.
Sin embargo, si dejamos la consulta de esta forma:

Vamos a tener un escenario donde los tiquetes que aparecen de primero son los más viejos (la consulta generalmente inicia trayendo los registros más antiguos, pueden comprobarlo por el ID).

Esto hará que los datos que NO se recuperen sean los más nuevos y al final vamos a terminar con una aplicación que no va a ser funcional. Pero si cambiamos el orden de la consulta de la siguiente manera:

Vamos a lograr traer siempre los datos más nuevos, haciendo que sean los datos más antiguos los que no puedan ser mostrados en la consulta.

En este caso, le facilitamos la visualización al usuario ya que los registros más nuevos están más a la mano y podemos dejar el trabajo de visualizar los registros antiguos a un Power BI o alguna otra herramienta que nos permita visualizar una mayor cantidad de registros.
Estos dos consejos serían los más sencillos de aplicar, pero también los que pueden dejar registros importantes que no son visibles para el usuario.
La próxima vez veremos un ejemplo más avanzado y comenzaremos a aplicar filtros más complejos para ayudar a mejorar la visualización de los datos.