Programando mejoras en el rendimiento
Nivel: Developer
Normalmente, cuando te vas de vacaciones en verano, no te llevas toda la ropa de invierno que tienes ¿verdad? Pues más o menos es lo que hacemos habitualmente cuando queremos recorrer una tabla o parte de ella, para revisar unos campos y traemos todo el registro.
Mucho nos quejamos sobre el rendimiento en el cloud pero como desarrolladores debemos ir mejorando nuestras extensiones para adecuarlas a la nueva realidad. Con pequeños tips podemos ir haciendo nuestras aplicaciones más eficientes.
Registros parciales (SetLoadFields)
De lo que se trata es de mejorar el rendimiento haciendo la consulta del SQL solamente de aquellos campos que realmente vamos a usar. Especialmente, cuando los datos están en diferentes extensiones ya que la consulta tiene que hacer JOIN de diferentes tablas.
No es recomendable usar este comando, si lo que vamos a hacer es Insertar, Borrar, Renombrar registros o hacer un Transferfields, puesto que en entonces el sistema hará internamente una llamada completa para traer todos los campos y no habremos ganado nada.
Añadir campos (AddLoadFields)
En el caso de los reports, Business Central implicitamente ya está usando la carga de registros parciales, haciendo la consulta solamente de los que hemos puesto una Column.
Por tanto si en el código del report, vamos a usar un campo que no está en el DataSet (no tiene Column) para evitar hacer una llamada completa en ese momento, podemos:
- Crear una columna con ese campo, aunque no vayamos a mostrarlo
- Añadir ese campo con AddLoadFields, en el OnPreDataItem
Microsoft nos da herramientas para ir mejorando el rendimiento pero nosotros tenemos que seguir actualizándonos como desarrolladores si queremos que nuestros clientes estén contentos con el rendimiento del Cloud.
No hay comentarios:
Publicar un comentario