Crear una aplicación de exportación de datos periódica

Importante

La funcionalidad mencionada en este artículo está actualmente disponible tanto en versión independiente de Dynamics 365 Human Resources como en la infraestructura de Finance combinada. La navegación puede ser diferente a la indicada mientras hacemos actualizaciones. Si necesita encontrar una página específica, puede usar Buscar.

Se aplica a estas aplicaciones de Dynamics 365:
Recursos humanos

En este artículo se describe cómo crear una aplicación lógica de Microsoft Azure que exporta datos de Microsoft Dynamics 365 Human Resources según una programación periódica. El tutorial aprovecha la interfaz de programación de aplicaciones (API) REST del paquete DMF de Human Resources para exportar los datos. Después de exportar los datos, la aplicación lógica guarda el paquete de datos exportados en la carpeta de Microsoft OneDrive for Business.

Escenario empresarial

En un escenario empresarial típico para integraciones de Microsoft Dynamics 365, los datos deben exportarse a un sistema descendente según una programación periódica. Este tutorial muestra cómo exportar todos los registros de trabajo de Microsoft Dynamics 365 Human Resources y guardar la lista de trabajadores en una carpeta de OneDrive for Business.

Sugerencia

Los datos específicos que se exportan en este tutorial y el destino de los datos exportados son solo ejemplos. Puede cambiarlos fácilmente para satisfacer sus necesidades comerciales.

Tecnologías utilizadas

Este tutorial utiliza las siguientes tecnologías:

Requisitos previos

Antes de comenzar el ejercicio en este tutorial, debe tener los siguientes elementos:

  • Un entorno de Human Resources que tiene permisos de nivel de administrador en el entorno.
  • Una suscripción a Azure para hospedar la aplicación lógica

El ejercicio

Al final de este ejercicio, tendrá una aplicación lógica conectada a su entorno de Human Resources y su cuenta de OneDrive for Business. La aplicación lógica exportará un paquete de datos de Human Resources, esperará a que se complete la exportación, descargará el paquete de datos exportado y guardará el paquete de datos en la carpeta de OneDrive for Business que especificó.

La aplicación lógica completada se parecerá a la siguiente ilustración.

Visión general de las aplicaciones lógicas.

Paso 1: crear un proyecto de exportación de datos en Human Resources

En Human Resources, cree un proyecto de exportación de datos que exporte trabajadores. Asigne al proyecto el nombre Exportar trabajadores y asegúrese de que la opción Generar paquete de datos está establecida en . Agregue una sola entidad (Trabajador) al proyecto y seleccione el formato para exportar. (En este tutorial se usa el formato de Microsoft Excel).

Exportar el proyecto de datos de trabajadores.

Importante

Recuerde el nombre del proyecto de exportación de datos. Lo necesitará cuando cree la aplicación lógica en el siguiente paso.

Paso 2: crear la aplicación lógica

La mayor parte del ejercicio implica la creación de la aplicación lógica.

  1. En Azure Portal, cree una aplicación lógica.

    Página de creación de aplicaciones lógicas.

  2. En Logic Apps Designer, comience con una aplicación lógica en blanco.

  3. Agregue un desencadenador de programación periódica para ejecutar la aplicación lógica cada 24 horas (o de acuerdo con un horario de su elección).

    Cuadro de diálogo Periodicidad.

  4. Llame a la API REST DMF ExportToPackage para programar la exportación del paquete de datos.

    1. Utilice la acción Invocar una solicitud HTTP desde el conector HTTP con Microsoft Entra.

      • URL de recurso base: la URL del entorno de Human Resources (no incluya información de ruta/espacio de nombres).
      • URI de recurso de Microsoft Entra:http://hr.talent.dynamics.com

      Nota

      El servicio Human Resources aún no proporciona un conector que exponga todas las API que componen la API REST de paquetes DMF, como ExportToPackage. En su lugar, debe llamar a las API utilizando solicitudes HTTPS sin procesar a través del conector HTTP con Microsoft Entra. Este conector usa Microsoft Entra ID para la autenticación y autorización en Human Resources.

      Conector HTTP con Microsoft Entra.

    2. Inicie sesión en el entorno de Human Resources a través del conector HTTP con Microsoft Entra.

    3. Configure una solicitud HTTP POST para llamar a la API REST DMF ExportToPackage.

      • Método: POST

      • Url de la solicitud: https://<nombre de host>/namespaces/<guid_espacio de nombres>/data/DataManagementDefinitionGroups/Microsoft.Dynamics.DataEntities.ExportToPackage

      • Cuerpo de la solicitud:

        {
            "definitionGroupId":"Export Workers",
            "packageName":"talent_package.zip",
            "executionId":"",
            "reExecute":false,
            "legalEntityId":"USMF"
        }
        

      Invocar una acción de solicitud HTTP.

    Sugerencia

    Es posible que desee cambiar el nombre de cada paso para que sea más significativo que el nombre predeterminado, Invocar una solicitud HTTP. Por ejemplo, puede cambiar el nombre de este paso ExportToPackage.

  5. Inicializar una variable para almacenar el estado de ejecución de la solicitud ExportToPackage.

    Acción Inicializar variable.

  6. Espere hasta que el estado de ejecución de la exportación de datos sea Correcto.

    1. Agregar un bucle Until que se repite hasta que el valor de la variable ExecutionStatus sea Correcto.

    2. Agregue una acción Retrasar que espere cinco segundos antes de sondear el estado de ejecución actual de la exportación.

      Contenedor de bucle Until.

      Nota

      Establezca el recuento límite en 15 para esperar un máximo de 75 segundos (15 iteraciones × 5 segundos) a que se complete la exportación. Si su exportación lleva más tiempo, ajuste el recuento de límites según corresponda.

    3. Agregue una acción Invocar solicitud HTTP para llamar a la API REST DMF GetExecutionSummaryStatus y establezca la variable ExecutionStatus en el resultado de la respuesta GetExecutionSummaryStatus.

      Este ejemplo no realiza la comprobación de errores. La API GetExecutionSummaryStatus puede devolver estados terminales no exitosos (es decir, estados distintos de Correcto). Para obtener más información, consulte la documentación de la API.

      • Método: POST

      • URL de la solicitud: https://<nombre de host>/namespaces/<guid_espacio de nombres>/data/DataManagementDefinitionGroups/Microsoft.Dynamics.DataEntities.GetExecutionSummaryStatus

      • Cuerpo de la solicitud: body('Invoke_an_HTTP_request')?['value']

        Nota

        Puede que tenga que introducir el valor de Cuerpo de la solicitud en la vista de código o en el editor de funciones del diseñador.

      Acción Invocar una solicitud HTTP 2.

      Acción Establecer variable.

      Importante

      El valor para la acción Establecer variable (body('Invoke_an_HTTP_request')?['value']) diferirá del valor del cuerpo de Invocar una solicitud HTTP 2, aunque el diseñador mostrará los valores de la misma manera.

  7. Obtenga la URL de descarga del paquete exportado.

    • Agregue una acción Invocar solicitud HTTP para llamar a la API REST DMF GetExportedPackageUrl.

      • Método: POST
      • URL de la solicitud: https://<nombre de host>/namespaces/<guid_espacio de nombres>/data/DataManagementDefinitionGroups/Microsoft.Dynamics.DataEntities.GetExportedPackageUrl
      • Cuerpo de la solicitud: {"executionId": body('GetExportedPackageURL')?['value']}

      Acción GetExportedPackageURL.

  8. Descargue el paquete exportado.

    • Agregue una solicitud HTTP GET (una acción del conector HTTP incorporada) para descargar el paquete desde la URL que se devolvió en el paso anterior.

      • Método: GET

      • URI: body('Invoke_an_HTTP_request_3').value

        Nota

        Puede que tenga que introducir el valor de URI en la vista de código o en el editor de funciones del diseñador.

      Acción HTTP GET.

      Nota

      Esta solicitud no requiere ninguna autenticación adicional, porque la URL que devuelve la API GetExportedPackageUrl incluye un token de firmas de acceso compartido que otorga acceso para descargar el archivo.

  9. Guarde el paquete descargado utilizando el conector de OneDrive for Business.

    • Agregue una acción Crear archivo en OneDrive for Business.

    • Conéctese a su cuenta de OneDrive for Business según sea necesario.

      • Ruta de la carpeta: una carpeta de su elección
      • Nombre de archivo: worker_package.zip
      • Contenido del archivo: el cuerpo del paso anterior (contenido dinámico)

      Acción Crear archivo.

Paso 3: probar la aplicación lógica

Para probar la aplicación lógica, seleccione el botón Ejecutar en el diseñador. Verá que los pasos de la aplicación lógica comienzan a ejecutarse. Después de 30 a 40 segundos, la aplicación lógica debería terminar de ejecutarse y la carpeta de OneDrive for Business debe incluir un nuevo archivo de paquete que contenga los trabajadores exportados.

Si se informa una falla para cualquier paso, seleccione el paso fallido en el diseñador y examine los campos Entradas y Salidas para ello. Depure y ajuste el paso según sea necesario para corregir los errores.

La siguiente ilustración muestra cómo se ve el Logic Apps Designer cuando todos los pasos de la aplicación lógica se ejecutan correctamente.

Ejecución exitosa de la aplicación lógica.

Resumen

En este tutorial, aprendió a usar una aplicación lógica para exportar datos de Human Resources y guardar los datos exportados en una carpeta de OneDrive for Business. Puede modificar los pasos de este tutorial según sea necesario para satisfacer las necesidades de su negocio.