Mitra Global Services

Navimania 44 – DLL Mgt Json (Class Create Json)

Hola a todos! Aquí estamos una semana más con nuestro blog NAVIMANIA.

Hoy continuaremos con el tema de la creación de DLL Link, la ejecución de la DLL en NAV link, o la ejecución de la DLL en BC OnPrem link

En esta ocasión os traigo un ejemplo completo de cómo crear Json desde NAV.

A mi al menos en NAV siempre me es un tanto costoso o extraño el tema de los Json ya que dependiendo de la versión de Dynamics que tengamos se tiene que hacer de una manera o de otra, incluso en las ultimas versiones no está del todo claro y acaba siendo mas enredado de lo que me gustaría.

Por eso creé esta DLL que os voy a enseñar.

Venga, vamos manos a la obra! 😎

Lo primero que haremos es generar un proyecto nuevo en Visual Studio y crear la clase donde pondremos todas nuestras funciones.

Tenemos que añadir una librería para que todo esto funcione bien.

Primero vamos a la administración de NuGet:

Y buscamos e instalamos la librería de Newtonsoft:

Una vez está todo instalado, en nuestras referencias tendría que salir la librería:

Declaramos las variables globales:

Y empezamos creando el constructor donde se declararán algunas de ellas:

Vale, vamos a ir declarando cada una de las funciones y os explicará para qué las vamos a ir usando.

ReturnJson()

Esta función será para devolver el Json en forma de texto:

AddLine()

Función para añadir una línea nueva en el Json:

InitJson() y EndJson()

Funciones para iniciar y finalizar el Json:

InitAnidado() y EndAnidado()

Funciones para cuando queremos crear un Json dentro de otro Json:

InitArray() y EndArray()

Funciones para crear y finalizar arrays dentro de un Json:

Con esto tendríamos las clases, todas estas funciones sirven para todas las casuísticas que me he encontrado yo para crear Json.

El próximo día os enseño cómo utilizar esto en un Dynamics NAV y veréis quizás más claro para qué sirven cada una de las funciones.

Como siempre este ejemplo entero lo tenéis colgado en GitHub en el link.

Esperamos que esta explicación os resulte de utilidad y os emplazamos a nuestra próxima publicación.

ES