10 octubre 2011

Herramienta para la detección y corrección de errores en los costes (3.xx)

Tal y como comenté en un post anterior, recientemente descubrí que existe una herramienta para la detección y corrección de errores en los costes de Microsoft Dynamics NAV.

Comenté que existia una vieja herramienta, publicada en el año 2003 y destinada a las versiones 3.xx de Navision (también funciona, aunque no en todos los casos, para las versiones 4.xx). Comenté que en breve saldrá una nueva herramienta para NAV 2009 (que será válida también para NAV 5.xx).

Prometí analizar y postear sobre la vieja herramienta. Aquí lo teneis:

Para empezar, dejar muy y muy claro que la herramienta es una guía y no un manual completo. El informe de detección de errores cubre los errores típicos que se habían detectado en el momento de desarrollarla. La parte de corrección de errores explica y guía sobre cómo proceder, pero en ningún caso provee una herramienta que lo haga de forma automática.

El informe de detección de errores recorre todos los movimientos de producto y sus tablas relacionadas (movimientos de valor y liquidaciones, básicamente) para determinar si los datos son coherentes o no: comprueba que exista almenos un movimiento de valor por cada movimiento de producto, que los valores de los campos Positivo y Pendiente sean correctos (comparándolos con la cantidad y la cantidad pendiente, respectivamente), que el signo de la cantidad pendiente sea el mismo que el de la cantidad, que la cantidad pendiente no sea mayor que la cantidad, que el valor del campo "Valorado a coste medio" en todos los movimientos de valor de un mismo movimiento de producto sea el mismo y que sólo es "Sí" para los productos valorados a coste medio, etc.




Accede al curso de Dynamics NAV



Si la herramienta detecta cualquier incoherencia, nos lo mostrará para que sepamos qué incoherencias hay y podamos proceder a su corrección.

El descrito es el test básico de la herramienta. Existen otro tipos de tests:

  • Test de cantidad; Cantidad en movimientos de producto vs cantidad en liquidaciones.La cantidad y cantidad pendiente en un movimiento de producto se debe corresponder con las cantidades registradas en las liquidaciones.No hay liquidaciones repetidas
  • Test de cantidades liquidadas; el signo (positivo o negativo) de las cantidades en el movimiento y en la liquidación se corresponden, la cantidad pendiente en un movimiento de entrada se corresponde con la suma de las cantidades de las liquidaciones realizadas, un movimiento no se ha liquidado contra si mismo
  • Test de relaciones entre entradas y salidas para productos valorados a coste medio; principalmente cuestiones relacionadas con el campo "Valorado a coste medio"
  • Test de "Valorado a coste medio" y sus liquidaciones; si el movimiento se ha valorado a coste medio, que no se hayan liquidado costes
  • Test de la Fecha de Valoración; que la fecha de valoración de una salida no sea anterior a la fecha de valoración de la entrada contra la que ha sido liquidada

Es posible que todo esto os suene a chino. Son comprobaciones sobre el funcionamiento interno de los costes de Microsoft Dynamics NAV. 
La cuestión es: si en cualquier de estos tests, se detectan incoherencias, el resultado del proceso de Valoración de Stocks es completamente impredecible. Así que... mejor arreglar todo aquello que se haya detectado incoherente o incorrecto.

El documento que acompaña la herramienta explica algunos casos (para los que ya había sus correspondientes hotfixes y por tanto ya no deberían producirse) en qué se podían producir incoherencias. 
Yo añado una nueva casuística (quizá algún día haga un post con un ejemplo práctico paso a paso): cuando a alguien le da por cambiar el método de valoración de existencias de un producto. Sabeis que Navision no permite hacerlo si el producto tiene movimentos. Sabeis también que para un programador de NAV es muuuuuuuy fácil hacer que si que se permita. Lo que quizá no sabeis es que a la larga acaba generando inconsistencias en los datos (las que yo conozco almenos, detectables por esta herramienta) y lleva a resultados impredecibles (redondeos enormes, por ejemplo).

Hasta aquí perfecto. Y qué debemos hacer en caso que encontremos alguna incorrección en nuestros datos?
Pues hay dos cosas que debemos hacer: corregir el código para que el error no se vuelva a producir y corregir los datos.

Para corregir el código, deberíamos buscar hotfixes publicados por Microsoft. En principio, el bug debería estar ya solucionado y aplicando un hotfix nos debería bastar.
Para corregir los datos... la herramienta habla de ser extremadamente cautelosos, de hacer pruebas exhaustivas en un entorno de pruebas antes de implementarlo en nuestra base de datos real. 
Cómo he comentado un poco más arriba, no hay ningún proceso para corregir los datos de forma automática. Esta tarea queda para nosotros, los desarrolladores de Navision. Lo que está bien de la herramienta, pero, es que explica, por ejemplo, cómo marcar movimientos de producto para que sean valorados de nuevo por el proceso de valoración de stocks. Explica también otros campos involucrados en los costes que hay que tener en cuenta.
Esto está muy bien. Lo que hubiera dado yo por tener una guía como esta cuando he tenido que corregir algo de costes, en lugar de darme de tortas con el código para descubrir lo que aquí se explica...

La documentación que acompaña la herramienta explica también paso a paso cómo se crean los movimientos de producto y de valor, cómo se liquidan, cómo se marcan para que el proceso de valoración de stocks pase por éstos movimientos, y finalmente, explica cómo funciona el proceso de valoración de stocks. Por fin! Había seguido algunas veces el código de este proceso, y la verdad es que nunca había entendido nada! 

En resumen, con la herramienta de detección de errores en los costes podemos detectar si tenemos incoherencias en los costes. En caso de tenerlas y tener que hacer alguna corrección, no hay nada que lo haga de forma automática, porqué la corrección a realizar depende mucho de cada caso particular, pero tenemos una guía sobre qué tener en cuenta para que la corrección sea exitosa.
Para aquel que quiera profundizar un poco en el funcionamiento interno de los costes, bajaros y leed con atención la documentación. Os resultará útil.
Aquí va el link.


Cristina Nicolàs

No hay comentarios:

Publicar un comentario