Curso Desarrollo – Generar efectos
Este es un curso de desarrollo en Dynamics NAV. Vamos a hacer un pequeño tutorial de desarrollo en el que no vamos a repasar cuestiones teóricas, sino que vamos a ir aprendiendo a medida que desarrollamos un requisito real de uno de nuestros clientes.
En este caso vamos a realizar un desarrollo para la generación periódica de efectos. Durante el curso vamos a repasar las necesidades del cliente, vamos a explicar cómo decidimos enfocar el desarrollo y vamos a ver paso a paso el proceso de desarrollo.
Lección 1. Requisitos funcionales y creación de un campo tipo option
En esta primera lección vas a aprender a programar un campo tipo option con Dynamics NAV.
Antes de todo vamos a repasar los requisitos del cliente. Veremos qué necesita el cliente y para qué, y a partir de las necesidades funcionales vamos a decidir cómo enfocamos el desarrollo, empezando por la creación de un campo tipo option.
En esta lección te enseñamos a programar este campo paso a paso y te enseñamos todo lo que tienes que tener en cuenta para que te funcione correctamente.
En la siguiente lección vas a aprender a crear una tabla con diferentes campos. No te lo pierdas.
Ir al vídeo de la lección 1. Requisitos funcionales y creación de un campo tipo option
Lección 2. Creación de Tabla con diferentes campos
En el primer vídeo vimos la definición del requisito: Generar efectos para poder cargar cuotas de socios de una fundación.
También creamos el campo “Tipo cliente” en la ficha del cliente.
En esta segunda lección vamos a enseñarte a programar la tabla “Registro de donación de socios”con los campos que nos ha indicado el cliente y así poder registrar toda la información vinculada a los socios en Navision.
En la siguiente lección vamos crear la interfaz de usuario y más adelante vamos a continuar con esta tabla y le vamos a poner un poco de código de control y de cálculo para cumplir con los requisitos que nos ha especificado nuestro cliente. No te lo pierdas.
Ir al vídeo de la lección 2. Creación de Tabla con diferentes campos
Lección 3. Creación de páginas y ponerlas en punto de menú
En esta lección vamos a crear una página para mostrar el registro de donaciones en Dynamics NAV. Vamos a poner un acceso desde la ficha del cliente, y también vamos a poner un punto de menú para que el usuario pueda acceder a la página desde el menú.
En la siguiente lección te vamos a enseñar a crear el código de control y de cálculo a la tabla. No te lo pierdas.
Ir al vídeo de la lLección 3. Creación de páginas y ponerlas en punto de menú
Lección 4. Código de Control
En la primera lección repasamos los requisitos, en la segunda lección creamos una tabla y en la tercera lección programos toda la parte de visualización, creando páginas en Navision.
En esta cuarta lección vamos a volver a la tabla y vamos a acabar de definirla creando códigos de control y de cálculo.
En la siguiente lección te vamos a enseñar a solucionar un error de clave primaria y vamos a acabar de hacer los cálculos para la tabla. No te lo pierdas.
Ir al vídeo de la lección 4. Código de Control
Lección 5. Claves y Cálculos
En esta quinta lección de este curso de desarrollo en Dynamics NAV veremos que uno de los requisitos decía “Un mismo socio podrá tener múltiples entradas en esta tabla”. Lo que vamos a enseñarte en este vídeo es a adaptar el desarrollo para que cumpla con este requisito.
También vamos a poner código en el trigger OnValidate del campo “Start Date” para que cuando el usuario ponga un dato en el campo, automáticamente se informe el campo “Start Year”.
En la siguiente lección vamos a generar los efectos en base a la información del registro de donaciones de socios. Te enseñaremos a desarrollar este proceso para la generación automática de efectos con Navision. No te lo pierdas.
Ir al vídeo de la lección 5. Claves y Cálculos
Lección 6. Crear Report: Request Page
En esta lección de este curso de desarrollo en Dynamics NAV, en el que estamos haciendo un desarrollo para la generación periódica de efectos, vamos a ver lo siguiente:
Uno de los requisitos dice “En base a la información del Registro de Socios, se creará un proceso para la generación automática de efectos”.
Vamos a usar un objeto de tipo Report para crear este proceso.
El requisito también especifica la información que hay que pedirle al usuario para lanzar el proceso:
– El mes y año para el que generar los efectos
– La fecha de registro en contabilidad.
Para pedirle al usuario esta información, estos parámetros, lo vamos a hacer desde la Request Page del report.
En esta lección vas a aprender a crear el Report, a poner los dataitems, y diseñar la Request Page.
Ir al vídeo de la lección 6. Crear Report: Request Page
Lección 7. Crear Report: Dataitems y funciones
En esta lección de este curso de desarrollo en Dynamics NAV, en el que estamos haciendo un desarrollo para la generación periódica de efectos, vamos a ver lo siguiente:
Uno de los requerimientos dice “En base a la información del Registro de Socios, se creará un proceso para la generación automática de efectos”.
Vamos a usar un objeto de tipo Report para crear este proceso. En la lección anterior creamos el report y diseñamos la Request page.
En esta lección vamos a seguir con la creación del report:
– En el OnPreReport vamos a poner comprobaciones, para asegurar que tenemos la información necesaria para el proceso.
– En el trigger OnPreDataItem vamos a poner filtros para asegurar que únicamente recorramos aquellos registros que cumplan con las condiciones de fecha
– En el trigger OnAfterGetRecord vamos a poner código para asegurar que solo procesemos aquellos registros a los que “les toca” según la periodicidad de la donación
– Vamos a crear una función para saber si una donación toca en este mes
Ir al vídeo de la lección 7. Crear Report: Dataitems y funciones
Lección 8. Crear Report: Seleccionar diario y sección
En esta lección vamos a continuar con el desarrollo del Report. Concretamente vamos a:
– Poner opciones para el usuario seleccione Diario y Sección. Para ello vamos a buscar un report del estándard que ya lo hace y veremos como copiar/pegar el código y adaptarlo a nuestras necesidades.
Ir al vídeo de la lección 8. Crear Report: Seleccionar diario y sección
Lección 9. Crear Report: Insertar líneas en el diario general
En esta lección vamos a continuar con el desarrollo del Report. Concretamente vamos a:
– Poner código en el OnAfterGetRecord para insertar una línea en el diario general para cada registro de la tabla de donaciones de socios (siempre que le toque una donación este mes).
Ir al vídeo de la lección 9. Crear un Report: Insertar líneas en el diario general
Lección 10. Debugando el desarrollo
Con los pasos seguidos en lecciones anteriores tenemos el desarrollo terminado.
Ahora toca probarlo y debugarlo, para detectar cualquier error antes de poner el desarrollo en producción.
Gracias al debugger vas a aprender a detectar un error en el código, te vamosa enseñar a corregirlo y vamos a volver a hacer una prueba de usuario para verificar que ahora estamos obteniendo los resultados esperados.
Ir al vídeo de la lección 10. Debugando el desarrollo
Lección 11. Integridad referencial
Hemos añadido una nueva lección a este curso porque nos ha llegado un pregunta de un alumno que nos ha parecido muy relevante.
La pregunta de Gabriel dice así:
No veo que la tabla de donaciones esté vinculada con algo así como una Foreing Key con la tabla de clientes. ¿Cómo maneja NAV este tipo de relaciones? Por ejemplo para evitar que se den de baja clientes que tengan registros en donaciones.
Respondiendo a la pregunta podemos decir que Navision, por defecto, no mantiene integridad referencial.
El motor de base de datos permite eliminar registros aunque éstos tengan relaciones en otras tablas.
Nos toca a los programadores de Navision determinar cuando es importante mantener la integridad y poner código en el trigger OnDelete para controlarlo.
Ens esta lección explicamos cómo.
Ir al vídeo de la lección 11. Integridad referencial
En el próximo curso encontrarás 6 lecciones que te enseñaran el funcionamiento de las Colas de Proyecto en Navision, así que no te lo pierdas.
Y no te olvides de dejar tus comentarios en el foro con tus dudas, preguntas o sugerencias. Estaremos encantadas de ayudarte a ser un experto/a en Navision.
Debe iniciar sesión para crear nuevos temas.