Dynamics 365 Business Central

El conector de Dynamics 365 Business Central te permite realizar operaciones de inserción, eliminación, actualización y lectura en datos de Dynamics 365 Business Central.

Versiones compatibles

Este conector es compatible con las siguientes versiones:

  • Dynamics 365 Business Central Cloud, versión del entorno de producción: 24.5.23489.26544
  • Dynamics 365 Business Central, versión local - Dynamics.365.BC.25445.IN.DVD
  • Antes de empezar

    Antes de usar el conector de Dynamics 365, haz lo siguiente:

    • En tu proyecto de Google Cloud:
      • Asegúrate de que la conectividad de red esté configurada. Para obtener información sobre los patrones de red, consulta Conectividad de red.
      • Habilita los siguientes servicios:
        • secretmanager.googleapis.com (API Secret Manager)
        • connectors.googleapis.com (API Connectors)

        Para saber cómo habilitar servicios, consulta Habilitar servicios.

      Si estos servicios o permisos no se han habilitado en tu proyecto anteriormente, se te pedirá que los habilites al configurar el conector.

    Configurar el conector

    Una conexión es específica de una fuente de datos. Esto significa que, si tiene muchas fuentes de datos, debe crear una conexión independiente para cada una de ellas. Para crear una conexión, sigue estos pasos:

    1. En la consola de Cloud, ve a la página Integration Connectors > Connections (Conectores de integración > Conexiones) y, a continuación, selecciona o crea un proyecto de Google Cloud.

      Ve a la página Conexiones.

    2. Haga clic en + Crear para abrir la página Crear conexión.
    3. En la sección Ubicación, elige la ubicación de la conexión.
      1. Región: selecciona una ubicación de la lista desplegable.

        Las regiones admitidas para los conectores son las siguientes:

        Para ver la lista de todas las regiones admitidas, consulta Ubicaciones.

      2. Haz clic en Siguiente.
    4. En la sección Detalles de la conexión, haz lo siguiente:
      1. Conector: seleccione Dynamics 365 Business Central en la lista desplegable de conectores disponibles.
      2. Versión del conector: seleccione la versión del conector en la lista desplegable de versiones disponibles.
      3. En el campo Connection Name (Nombre de conexión), introduce un nombre para la instancia de conexión.

        Los nombres de las conexiones deben cumplir los siguientes criterios:

        • Los nombres de conexión pueden contener letras, números o guiones.
        • Las letras deben estar en minúsculas.
        • Los nombres de conexión deben empezar por una letra y terminar por una letra o un número.
        • Los nombres de conexión no pueden tener más de 49 caracteres.
      4. Si quiere, puede introducir una Descripción para la instancia de conexión.
      5. También puedes habilitar Registro en la nube y, a continuación, seleccionar un nivel de registro. De forma predeterminada, el nivel de registro es Error.
      6. Cuenta de servicio: selecciona una cuenta de servicio que tenga los roles necesarios.
      7. (Opcional) Configura los ajustes del nodo de conexión.
        • Número mínimo de nodos: introduce el número mínimo de nodos de conexión.
        • Número máximo de nodos: introduce el número máximo de nodos de conexión.

        Un nodo es una unidad (o réplica) de una conexión que procesa transacciones. Se necesitan más nodos para procesar más transacciones en una conexión y, a la inversa, se necesitan menos nodos para procesar menos transacciones. Para saber cómo afectan los nodos a los precios de los conectores, consulta la sección Precios de los nodos de conexión. Si no introduces ningún valor, de forma predeterminada, el número mínimo de nodos será 2 (para mejorar la disponibilidad) y el máximo será 50.

      8. Cliente de Azure: especifica el cliente de Microsoft Online que se usa para acceder a los datos. Si no se especifica, se usará tu inquilino predeterminado.
      9. Empresa: especifique el nombre de la empresa que ha configurado en Dynamics 365. Puede encontrar esta información en la página Información de la empresa de Dynamics 365 Business Central.
      10. Endpoint type (Tipo de endpoint): especifica el tipo de endpoint al que debe resolverse OrganizationUrl.
      11. Incluir propiedades de navegación: especifica si la lista de columnas debe incluir propiedades de navegación. Las propiedades de navegación proporcionan una forma de desplazarse por una asociación entre dos tipos de entidades.
      12. Usar entorno aislado: especifica si se usa un entorno aislado.
      13. Vistas definidas por el usuario: especifica la ruta de un archivo de configuración JSON que define vistas personalizadas.
      14. Haz clic en + Añadir etiqueta para añadir una etiqueta a la conexión en forma de par clave-valor.
      15. (Opcional) Si quieres usar SSL, selecciona Habilitar SSL. Se mostrarán los detalles de la configuración de SSL.
        1. Selecciona un tipo de almacén de confianza. Puede ser Pública, Privada o Conexión no segura.
        2. Selecciona los certificados tal como se muestran en función de la selección del almacén de confianza.
        3. Si usas mTLS, selecciona los certificados del almacén de claves en la sección Almacén de claves.
      16. Haz clic en Siguiente.
    5. Seleccione un Tipo de autenticación e introduzca los detalles pertinentes.

      La conexión de Dynamics 365 Business Central admite los siguientes tipos de autenticación:

      • Clave de acceso
      • OAuth 2.0: credenciales de cliente
      • Azure AD
    6. Para saber cómo configurar estos tipos de autenticación, consulta Configurar la autenticación.

    7. Haz clic en Siguiente.
  • Revisar: revisa los detalles de la conexión y la autenticación.
  • Haz clic en Crear.
  • Configurar la autenticación

    Introduce los detalles en función de la autenticación que quieras usar.

    • Clave de acceso
      • Nombre de usuario: especifique el nombre de usuario de la cuenta de Dynamics 365 OnPremise que se usa para autenticar el servidor de Microsoft Dynamics 365 Business Central.
      • Contraseña: selecciona el secreto que contiene la contraseña de la cuenta de Dynamics 365 OnPremise.
      • Versión del secreto: selecciona la versión del secreto.
      • Clave de acceso: especifica la clave de acceso que se usa para autenticarte en Microsoft Dynamics 365 Business Central.
    • Credenciales de cliente de OAuth 2.0
      • ID de cliente: especifica el ID de cliente de la aplicación que has creado.
      • Secreto de cliente: especifica el secreto de Secret Manager que contiene el secreto de cliente de la aplicación conectada que has creado.
      • Versión del secreto: selecciona la versión del secreto de cliente.
    • Azure AD
      • ID de cliente: especifica el ID de cliente que se usa para solicitar tokens de acceso. Puede encontrarlo en la vista general de la aplicación conectada creada en el portal de Azure.
      • Ámbito: especifica una lista separada por comas de los ámbitos que quieras.
      • Client Secret (Secreto de cliente): especifica el secreto de Secret Manager que contiene la clave de acceso a la cuenta.
      • URL de autorización: introduce la URL de autorización que generas al crear un cliente de OAuth. Introduce la URL con el siguiente formato: https://login.microsoftonline.com/TENANT_IDENTIFIER/oauth2/v2.0/authorize?prompt=consent. Por ejemplo, https://login.microsoftonline.com/9bxxxxxxxxx8112/oauth2/v2.0/authorize?prompt=consent.

    Ejemplos de configuración de conexiones

    En esta sección se indican los valores de ejemplo de los distintos campos que se configuran al crear la conexión.

    OAuth 2.0: tipo de conexión de credenciales de cliente

    Nombre del campo Detalles
    Ubicación europe‑west1
    Conector Dynamics365BusinessCentral
    Versión del conector 1
    Nombre de la conexión dynamics-businesscentral-conn
    Habilitar Cloud Logging
    Cuenta de servicio SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com
    Cliente de Azure c9f472d9-7d8a-44cf-8ee0-458d32e26bce
    Empresa Organization_Name
    Número mínimo de nodos 2
    Número máximo de nodos 50
    URL de la organización https://api.businesscentral.dynamics.com/v2.0/c9f472d9-7d8a-44cf-8ee0-458d32e26bce/production/api/v2.0
    Autenticación OAuth 2.0: credenciales de cliente
    ID de cliente fd04bae4-c30c-4faf-bbae-9263d4d96d61
    Secreto de cliente projects/617888503870/secrets/businesscentral-client-secret
    Versión de secreto 1

    Tipo de conexión de clave de acceso

    Nombre del campo Detalles
    Ubicación europe‑west1
    Conector Dynamics365BusinessCentral
    Versión del conector 1
    Nombre de la conexión dynamics-businesscentral-on-prem-conn
    Habilitar Cloud Logging
    Cuenta de servicio SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com
    Cliente de Azure BC250
    Empresa Altostart Ltd.
    Número mínimo de nodos 2
    Número máximo de nodos 50
    URL de la organización http://10.128.0.78:7059/BC250/ODataV4
    Autenticación Clave de acceso
    Nombre de usuario businesscentral
    Contraseña CONTRASEÑA
    Versión de secreto 1
    Clave de acceso OQq9qggeWxt9iZPSWrs8wgfNjsAq06PT2uls7Luhbp8=
    Versión de secreto 1

    Tipo de conexión de Azure AD

    Nombre del campo Detalles
    Ubicación europe‑west1
    Conector Dynamics365BusinessCentral
    Versión del conector 1
    Nombre de la conexión d365-business-central-oauth
    Habilitar Cloud Logging
    Cuenta de servicio my-service-account@my-project.iam.gserviceaccount.com
    Cliente de Azure c9f472d9-7d8a-44cf-8ee0-458d32e26bce
    Empresa Altostart Ltd.
    Número mínimo de nodos 2
    Número máximo de nodos 50
    URL de la organización https://api.businesscentral.dynamics.com/v2.0/c9f472d9-7d8a-44cf-8ee0-458d32e26bce/production/api/v2.0
    Autenticación AzureAD
    ID de cliente fd04bae4-c30c-4faf-bbae-9263d4d96d61
    Ámbitos https://api.businesscentral.dynamics.com/.default
    Secreto de cliente projects/617888503870/secrets/d365bc-secret
    Versión de secreto 3
    URL de autorización https://login.microsoftonline.com/c9f472d9-7d8a-44cf-8ee0-458d32e26bce/oauth2/v2.0/authorize

    Para obtener información sobre cómo crear un espacio de trabajo de Dynamics 365 Business Central, consulta el artículo Bienvenido a Dynamics 365 Business Central.

    Para obtener información sobre la API de Dynamics 365 Business Central, consulta la referencia de la API de Dynamics 365 Business Central.

    Limitaciones del sistema

    El conector de Dynamics 365 Business Central puede procesar un máximo de 25 transacciones por segundo por nodo y limita las transacciones que superen este límite. De forma predeterminada, Integration Connectors asigna 2 nodos (para mejorar la disponibilidad) a una conexión.

    Para obtener información sobre los límites aplicables a Integration Connectors, consulta Límites.

    Usar la conexión de Dynamics 365 Business Central en una integración

    Una vez que hayas creado la conexión, estará disponible tanto en Apigee Integration como en Application Integration. Puedes usar la conexión en una integración a través de la tarea Conectores.

    • Para saber cómo crear y usar la tarea Conectores en la integración de Apigee, consulta Tarea Conectores.
    • Para saber cómo crear y usar la tarea Conectores en Application Integration, consulta Tarea Conectores.

    Ejemplos de operaciones de entidades

    En esta sección se muestra cómo realizar algunas de las operaciones de entidad en este conector.

    Ejemplo: Mostrar todos los pedidos de venta

    1. En el cuadro de diálogo Configure connector task, haz clic en Entities.
    2. Selecciona salesOrders en la lista Entity.
    3. Selecciona la operación List y, a continuación, haz clic en Hecho.
    4. En la sección Entrada de tarea de la tarea Conectores, puede definir filterClause.
    5. Debe usar comillas simples (") para incluir el valor de una cláusula de filtro. Puede usar la cláusula de filtro para filtrar registros en función de las columnas.

    Ejemplo: Obtener un pedido de venta

    1. En el cuadro de diálogo Configure connector task, haz clic en Entities.
    2. Selecciona salesOrders en la lista Entity.
    3. Selecciona la operación Get y, a continuación, haz clic en Hecho.
    4. Asigna el ID de entidad "841c04f9-3391-ef11-8a6b-002248d4e29e", que es la clave que se va a transferir. Para definir el ID de entidad, en la sección Asignación de datos de Mapeador de datos, haga clic en Abrir editor de asignación de datos y, a continuación, introduzca "841c04f9-3391-ef11-8a6b-002248d4e29e" en el campo Valor de entrada y elija EntityId como variable local.

      El valor de Entity Id debe transferirse directamente, como "841c04f9-3391-ef11-8a6b-002248d4e29e". En este caso, "841c04f9-3391-ef11-8a6b-002248d4e29e" es el valor de clave principal único.

      Si al enviar un solo ID de entidad se produce un error debido a la presencia de dos claves compuestas, puede usar la cláusula de filtro para enviar el valor.

    Ejemplo: eliminar un pedido de venta

    1. En el cuadro de diálogo Configure connector task, haz clic en Entities.
    2. Selecciona salesOrders en la lista Entity.
    3. Selecciona la operación DELETE y, a continuación, haz clic en Hecho.
    4. Asigna el ID de entidad "841c04f9-3391-ef11-8a6b-002248d4e29e", que es la clave que se va a transferir. Para definir el ID de entidad, en la sección Asignación de datos de Mapeador de datos, haga clic en Abrir editor de asignación de datos y, a continuación, introduzca "841c04f9-3391-ef11-8a6b-002248d4e29e" en el campo Valor de entrada y elija EntityId como variable local.

      Si la entidad tiene dos claves empresariales o primarias compuestas en lugar de especificar el entityId, también puedes definir filterClause como id='841c04f9-3391-ef11-8a6b-002248d4e29e'.

    Ejemplo: Crear un pedido

    1. En el cuadro de diálogo Configure connector task, haz clic en Entities.
    2. Selecciona salesOrders en la lista Entity.
    3. Selecciona la operación Create y, a continuación, haz clic en Hecho.
    4. En la sección Data Mapper (Asignador de datos) de la tarea Data Mapping (Asignación de datos), haga clic en Open Data Mapping Editor y, a continuación, introduzca un valor similar al siguiente en el campo Input Value y elija EntityId/ConnectorInputPayload como variable local.
      {
           "orderDate": "2024-10-30",
           "customerNumber": "10000",
           "currencyCode": "INR",
           "paymentTermsId": "590d75c5-f26e-ef11-a678-6045bdc89b07"
           }
           

      Si la integración se realiza correctamente, el parámetro connectorOutputPayload response de la tarea salesOrders tendrá un valor similar al siguiente:

      {
           "id": "2e048d8a-a796-ef11-8a6b-6045bdae882d"
           }
           

    Ejemplo: Crear una línea de pedido de venta

    1. En el cuadro de diálogo Configure connector task, haz clic en Entities.
    2. Selecciona salesOrderLines en la lista Entity.
    3. Selecciona la operación Create y, a continuación, haz clic en Hecho.
    4. En la sección Data Mapper (Asignador de datos) de la tarea Data Mapping (Asignación de datos), haga clic en Open Data Mapping Editor y, a continuación, introduzca un valor similar al siguiente en el campo Input Value y elija EntityId/ConnectorInputPayload como variable local.
      {
           "documentId": "b747cc93-c37f-ef11-ac23-7c1e523b4365",
           "sequence": 10014,
           "itemId": "8b0f75c5-f26e-ef11-a678-6045bdc89b07",
           "lineType": "Item",
           "lineObjectNumber": "1996-S"
           }
           

      Si la integración se realiza correctamente, el parámetro connectorOutputPayload response de la tarea salesOrderLines tendrá un valor similar al siguiente:

      {
           "id": "35535130-d09d-ef11-8a6b-002248d4cc93"
           }
           

    Ejemplo: Crear una oferta de venta

    1. En el cuadro de diálogo Configure connector task, haz clic en Entities.
    2. Selecciona salesQuotes en la lista Entity.
    3. Selecciona la operación Create y, a continuación, haz clic en Hecho.
    4. En la sección Data Mapper (Asignador de datos) de la tarea Data Mapping (Asignación de datos), haga clic en Open Data Mapping Editor y, a continuación, introduzca un valor similar al siguiente en el campo Input Value y elija EntityId/ConnectorInputPayload como variable local.
      {
           "paymentTermsId": "590d75c5-f26e-ef11-a678-6045bdc89b07",
           "currencyCode": "INR",
           "customerNumber": "30000"
           }
           

      Si la integración se realiza correctamente, el parámetro connectorOutputPayload response de la tarea salesQuotes tendrá un valor similar al siguiente:

      {
           "id": "2116bd4e-3ba3-ef11-8a6b-6045bdacfb5e"
           }
           

    Ejemplo: Crear una orden de compra

    1. En el cuadro de diálogo Configure connector task, haz clic en Entities.
    2. Selecciona purchaseOrders en la lista Entity.
    3. Selecciona la operación Create y, a continuación, haz clic en Hecho.
    4. En la sección Data Mapper (Asignador de datos) de la tarea Data Mapping (Asignación de datos), haga clic en Open Data Mapping Editor y, a continuación, introduzca un valor similar al siguiente en el campo Input Value y elija EntityId/ConnectorInputPayload como variable local.
      {
           "vendorId": "7e0f75c5-f26e-ef11-a678-6045bdc89b07",
           "vendorNumber": "10000"
           }
           

      Si la integración se realiza correctamente, el parámetro connectorOutputPayload response de la tarea purchaseOrders tendrá un valor similar al siguiente:

      {
           "id": "53389ee7-a796-ef11-8a6b-6045bdae882d"
           }
           

    Ejemplo: crear un elemento

    1. En el cuadro de diálogo Configure connector task, haz clic en Entities.
    2. Selecciona items en la lista Entity.
    3. Selecciona la operación Create y, a continuación, haz clic en Hecho.
    4. En la sección Data Mapper (Asignador de datos) de la tarea Data Mapping (Asignación de datos), haga clic en Open Data Mapping Editor y, a continuación, introduzca un valor similar al siguiente en el campo Input Value y elija EntityId/ConnectorInputPayload como variable local.
      {
           "number": "4000-D",
           "displayName": "Charlie Altostrat",
           "type": "Inventory",
           "itemCategoryId": "d61672cb-f26e-ef11-a678-6045bdc89b07",
           "baseUnitOfMeasureCode": "PCS"
           }
           

      Si la integración se realiza correctamente, el parámetro connectorOutputPayload response de la tarea items tendrá un valor similar al siguiente:

      {
           "id": "fad09437-8d9e-ef11-8a6b-000d3af0e092"
           }
           

    Ejemplo: actualizar un pedido de ventas

    1. En el cuadro de diálogo Configure connector task, haz clic en Entities.
    2. Selecciona salesOrders en la lista Entity.
    3. Selecciona la operación Update y, a continuación, haz clic en Hecho.
    4. En la sección Data Mapper (Asignador de datos) de la tarea Data Mapping (Asignación de datos), haga clic en Open Data Mapping Editor y, a continuación, introduzca un valor similar al siguiente en el campo Input Value y elija EntityId/ConnectorInputPayload/FilterClause como variable local.
      {
           "phoneNumber": "7764872993"
           }
           
    5. Define el ID de entidad en Data Mapper como la entidad de salesOrders. Para definir el ID de entidad, haga clic en Open Data Mapping Editor y, a continuación, introduzca un valor similar al siguiente en el campo Input Value y elija EntityId/ConnectorInputPayload/FilterClause como variable local.

      En lugar de especificar el entityId, también puede definir filterClause como id ='5e9226d3-1c7b-ef11-a671-6045bdaef76c'.

    Ejemplo: actualizar una línea de pedido de venta

    1. En el cuadro de diálogo Configure connector task, haz clic en Entities.
    2. Selecciona salesOrderLines en la lista Entity.
    3. Selecciona la operación Update y, a continuación, haz clic en Hecho.
    4. En la sección Data Mapper (Asignador de datos) de la tarea Data Mapping (Asignación de datos), haga clic en Open Data Mapping Editor y, a continuación, introduzca un valor similar al siguiente en el campo Input Value y elija EntityId/ConnectorInputPayload/FilterClause como variable local.
      {
           "description": "Test from Altostrat"
           }
           
    5. Defina el ID de entidad en Data Mapper como la entidad de salesOrderLines. Para definir el ID de entidad, haga clic en Open Data Mapping Editor y, a continuación, introduzca un valor similar al siguiente en el campo Input Value y elija EntityId/ConnectorInputPayload/FilterClause como variable local.

      En lugar de especificar el entityId, también puede definir filterClause como id ='35535130-d09d-ef11-8a6b-002248d4cc93'.

    Ejemplo: actualizar una oferta

    1. En el cuadro de diálogo Configure connector task, haz clic en Entities.
    2. Selecciona salesQuotes en la lista Entity.
    3. Selecciona la operación Update y, a continuación, haz clic en Hecho.
    4. En la sección Mapper de datos de la tarea Asignación de datos, haga clic en Open Data Mapping Editor y, a continuación, introduzca un valor similar al siguiente en el campo Input Value y elija EntityId/ConnectorInputPayload/FilterClause como variable local.
      {
           "currencyCode": "USD"
           }
           
    5. Defina el ID de entidad en Data Mapper como la entidad de salesQuotes. Para definir el ID de entidad, haga clic en Open Data Mapping Editor y, a continuación, introduzca un valor similar al siguiente en el campo Input Value y elija EntityId/ConnectorInputPayload/FilterClause como variable local.

      En lugar de especificar el entityId, también puede definir filterClause como id='2116bd4e-3ba3-ef11-8a6b-6045bdacfb5e'.

    Ejemplo: actualizar una orden de compra

    1. En el cuadro de diálogo Configure connector task, haz clic en Entities.
    2. Selecciona purchaseOrders en la lista Entity.
    3. Selecciona la operación Update y, a continuación, haz clic en Hecho.
    4. En la sección Mapper de datos de la tarea Asignación de datos, haga clic en Open Data Mapping Editor y, a continuación, introduzca un valor similar al siguiente en el campo Input Value y elija EntityId/ConnectorInputPayload/FilterClause como variable local.
      {
           "shipToName": "Charlie Cruz"
           }
           
    5. Defina el ID de entidad en Data Mapper como la entidad de purchaseOrders. Para definir el ID de entidad, haga clic en Open Data Mapping Editor y, a continuación, introduzca un valor similar al siguiente en el campo Input Value y elija EntityId/ConnectorInputPayload/FilterClause como variable local.

      En lugar de especificar el entityId, también puede definir filterClause como id ='6b88738e-3891-ef11-8a6b-002248d4e29e'.

    Ejemplo: actualizar un elemento

    1. En el cuadro de diálogo Configure connector task, haz clic en Entities.
    2. Selecciona items en la lista Entity.
    3. Selecciona la operación Update y, a continuación, haz clic en Hecho.
    4. En la sección Mapper de datos de la tarea Asignación de datos, haga clic en Open Data Mapping Editor y, a continuación, introduzca un valor similar al siguiente en el campo Input Value y elija EntityId/ConnectorInputPayload/FilterClause como variable local.
      {
           "displayName": "Updates Altostrat name"
           }
           
    5. Defina el ID de entidad en Data Mapper como la entidad de los elementos. Para definir el ID de entidad, haga clic en Open Data Mapping Editor y, a continuación, introduzca un valor similar al siguiente en el campo Input Value y elija EntityId/ConnectorInputPayload/FilterClause como variable local.

      En lugar de especificar el entityId, también puede definir filterClause como id ='fad09437-8d9e-ef11-8a6b-000d3af0e092'.

    Obtener ayuda de la comunidad de Google Cloud

    Puedes publicar tus preguntas y hablar sobre este conector en la comunidad de Google Cloud, en los foros de Cloud.

    Siguientes pasos