You are on page 1of 6

Tema: creación de una aplicación cliente para el consumo de Servicios OData en Microsoft

Dynamics 365 FO.

Autor: Ismael Utitiaj Ankuash – Desarrollador Microsoft Dynamics Ax.

Durante el transcurso de las publicaciones, se ha realizado ciertas actividades que nos ayudan
para llevar a cabo el trabajo el día de hoy.

Antes de empezar, es necesario contemplar los siguientes prerrequisitos. Estos ya han sido
abordados en publicaciones anteriores:

• Registrar la aplicación en AAD como una aplicación Web API

• Obtener el Id de la aplicación y generar el Key

• Registrar la aplicación en el Directorio Activo de Azuer en Microsoft Dynamics 365 FO

Ismael Utitiaj A.
¿Como lo hacemos?

Bien, vamos a empezar estableciendo los siguientes pasos:

1. Crear un solución en Visual Studio 2017 o 2015.

Agregar los siguientes proyectos:

• AuthenticationUtility

• AuthenticationUtility

Estos proyectos se encuentra en la dirección https://github.com/Microsoft/Dynamics-AX-


Integration/tree/master/ServiceSamples

Agregar un nuevo proyecto de aplicación de consola (IwiaODataClient) y agregar las


referencias para ADD, OData client, JSON, etc. Explicado en el link
https://community.dynamics.com/ax/b/axaptatodoesposible/archive/2018/09/23/desaf
-o-9-instalaci-n-paquetes-para-autenticaci-n-aad-y-dataentity-cliente

EL nuevo proyecto se encuentra de la siguiente manera:

Verificar las referencias:

Ismael Utitiaj A.
2. Modificar clase ClientConfiguration ubicada en el proyecto AuthenticationUtility.

Ajustar la información de conexión de acuerdo con nuestro ambiente:

Considerar problemas de autenticación, explicado en el siguiente link:


https://community.dynamics.com/ax/b/axaptatodoesposible/archive/2018/09/26/desaf
-o-12-problemas-comunes-de-comunicaci-n-autenticaci-n-y-visualizaci-n-de-entidades-
datos-en-odata-service-enfocados-a-la-interoperabilidad-de-aplicaciones-en-microsoft-
dynamics-365-fo

3. Generar las clases proxy para la entidades del Servicio OData en el proyecto
ODataUtility.

Ismael Utitiaj A.
De acuerdo a las instrucciones especificadas en el siguiente link:
https://community.dynamics.com/ax/b/axaptatodoesposible/archive/2018/09/25/desaf
-o-11-creaci-n-de-archivo-personalizado-para-entidades-odata

4. Creación de la lógica de negocio en el proyecto IwiaODataClient.

El código para el consumo del servicio OData queda de la siguiente forma:

Ismael Utitiaj A.
Ajustar la información de la variable oDataUri con las especificaciones de su ambiente.

5. Resultado de la ejecución.

Verificamos la tabla:

Se ha encontrado ciertos problemas con la herramienta de generación de clases proxy para


las entidades de datos, por ello, para nuestro ejemplo hemos creado un archivo de metadato
personalizado para demostrar la funcionalidad, y más que todo la flexibilidad que nos permite
la herramienta para adaptar a nuestros escenarios.

El proceso para consumir el servicio OData es similar al que se utiliza para aplicaciones cliente
que consumen las operaciones de los servicios web generados por el sistema.

Ismael Utitiaj A.
El resultado como podemos ver cumple con lo que necesitamos y el desarrollo puede ser
ajustado para cumplir requerimientos más complejos.

Lo que se expone es un paso para adentrarse en detalle a características mas sofisticadas


sobre OData, permitiendo explorar otros puntos favorables que aquí no han sido
mencionados.

Ismael Utitiaj A.