Uso y finalidad de SETAUTOCALCFIELDS en NAV2013

Una de las novedades que ofrece Microsoft Dynamics NAV en su versión 2013 y 2013 R2 respecto a sus predecesoras es la función SETAUTOCALCFIELDS.

Esta función permite trabajar con campos calculados (flowfields) de manera más eficiente y correcta en bucles de búsqueda de datos.

Por ejemplo, podríamos reemplazar:

 

Cust.RESET;

IF Cust.FINDSET THEN

REPEAT

     Cust.CALCFIELDS(Balance);

[…]

UNTIL cust.NEXT=0;

 

 

Por:

Cust.RESET;

Cust.SETAUTOCALCFIELDS(Balance);

IF Cust.FINDSET THEN

REPEAT

[…]

UNTIL cust.NEXT=0;

 

El resultado, desde un punto de vista de usuario final será el mismo, pero desde una perspectiva de desarrollo y eficiencia no es así. Con el uso de esta herramienta podemos optimizar tiempos de ejecución y recursos del sistema.

 

¡¡¡TENER EN CUENTA!!!

Como si de un filtro se tratase, SETAUTOCALCFIELDS seguirá estando activo hasta que se indique lo contrario. Para hacerlo lo indicaremos con la instrucción:

Cust.SETAUTOCALCFIELDS; // Sin parámetros

Si se hace la asignación de una variable con el SETAUTOCALCFIELDS puesto a otra variable de tipo record de la misma tabla, no se transferirá esta función, pero si se usa el COPY sí se hará.

 

Para más información siempre podéis consultar la página de Microsoft.

 









This entry was posted in NAV2013, NAV2013R2, Tips&Tricks and tagged , , , , , . Bookmark the permalink.

Leave a Reply

Your email address will not be published. Required fields are marked *

*