Partekatu honen bidez:


Copia de datos de QuickBooks Online con Azure Data Factory o Synapse Analytics (versión preliminar)

SE APLICA A: Azure Data Factory Azure Synapse Analytics

Sugerencia

Pruebe Data Factory en Microsoft Fabric, una solución de análisis todo en uno para empresas. Microsoft Fabric abarca todo, desde el movimiento de datos hasta la ciencia de datos, el análisis en tiempo real, la inteligencia empresarial y los informes. Obtenga información sobre cómo iniciar una nueva evaluación gratuita.

En este artículo se explica cómo usar la actividad de copia en una canalización de Azure Data Factory o Synapse Analytics para copiar datos de QuickBooks Online. El documento se basa en el artículo de introducción a la actividad de copia que describe información general de la actividad de copia.

Importante

Este conector está actualmente en versión preliminar. Puede probarlo y enviarnos sus comentarios. Si desea depender de los conectores de versión preliminar en la solución, póngase en contacto con el soporte técnico de Azure.

Funcionalidades admitidas

Este conector de QuickBooks es compatible con las funcionalidades siguientes:

Funcionalidades admitidas IR
Actividad de copia (origen/-) ① ②
Actividad de búsqueda ① ②

① Azure Integration Runtime ② Entorno de ejecución de integración autohospedado

Para obtener una lista de los almacenes de datos que se admiten como orígenes y receptores, consulte la tabla de almacenes de datos admitidos.

Este conector admite la autenticación de QuickBooks OAuth 2.0.

Introducción

Para realizar la actividad de copia con una canalización, puede usar una de los siguientes herramientas o SDK:

Creación de un servicio vinculado a QuickBooks mediante la interfaz de usuario

Siga estos pasos para crear un servicio vinculado a QuickBooks en la interfaz de usuario de Azure Portal.

  1. Vaya a la pestaña Administrar del área de trabajo de Azure Data Factory o Synapse y seleccione Servicios vinculados; luego haga clic en Nuevo:

  2. Busque QuickBooks y seleccione el conector de QuickBooks.

    Captura de pantalla del conector de QuickBooks.

  3. Configure los detalles del servicio, pruebe la conexión y cree el nuevo servicio vinculado.

    Captura de pantalla de la configuración del servicio vinculado en QuickBooks.

Detalles de configuración del conector

En las secciones siguientes se proporcionan detalles sobre las propiedades que se usan para definir entidades de Data Factory específicas para el conector QuickBooks.

Propiedades del servicio vinculado

Las siguientes propiedades son compatibles con el servicio vinculado de QuickBooks:

Propiedad Descripción Obligatorio
type La propiedad type debe establecerse en: QuickBooks
connectionProperties Grupo de propiedades que define cómo conectarse a QuickBooks.
En connectionProperties:
endpoint Punto de conexión del servidor de QuickBooks Online. (es decir, quickbooks.api.intuit.com)
companyId Id. de empresa de la compañía de QuickBooks que se debe autorizar. Para obtener información sobre cómo buscar el identificador de empresa, consulte Cómo encontrar el identificador de mi empresa.
consumerKey El identificador de cliente de la aplicación en línea QuickBooks para la autenticación OAuth 2.0. Puede obtener más información sobre esto aquí.
consumerSecret El secreto de cliente de la aplicación en línea QuickBooks para la autenticación OAuth 2.0. Marque este campo como SecureString para almacenarlo de forma segura, o bien haga referencia a un secreto almacenado en Azure Key Vault.
refreshToken El token de actualización de OAuth 2,0 asociado a la aplicación de QuickBooks. Puede obtener más información sobre esto aquí. Tenga en cuenta que el token de actualización expirará pasados 180 días. El cliente debe actualizar periódicamente el token de actualización.
Marque este campo como SecureString para almacenarlo de forma segura, o bien haga referencia a un secreto almacenado en Azure Key Vault.
useEncryptedEndpoints Especifica si los puntos de conexión de origen de datos se cifran mediante HTTPS. El valor predeterminado es true. No

Ejemplo:

{
    "name": "QuickBooksLinkedService",
    "properties": {
        "type": "QuickBooks",
        "typeProperties": {
            "connectionProperties": {
                "endpoint": "quickbooks.api.intuit.com",
                "companyId": "<company id>",
                "consumerKey": "<consumer key>", 
                "consumerSecret": {
                     "type": "SecureString",
                     "value": "<clientSecret>"
            	},
                "refreshToken": {
                     "type": "SecureString",
                     "value": "<refresh token>"
            	},
                "useEncryptedEndpoints": true
            }
        }
    }
}

Control de tokens de actualización para el servicio vinculado

Al usar el conector QuickBooks Online en un servicio vinculado, es importante administrar correctamente los tokens de actualización de OAuth 2.0 desde QuickBooks. El servicio vinculado usa un token de actualización para obtener nuevos tokens de acceso. Pero QuickBooks Online actualiza periódicamente el token de actualización, lo que invalida el anterior. El servicio vinculado no actualiza automáticamente el token de actualización en Azure Key Vault, por lo que debes administrar el token de actualización para garantizar una conectividad ininterrumpida. De lo contrario, es posible que encuentres errores de autenticación una vez que expire el token de actualización.

Puedes actualizar manualmente el token de actualización en Azure Key Vault en función de la directiva de expiración del token de actualización de QuickBooks Online. Pero otro enfoque consiste en automatizar las actualizaciones con una tarea programada o Azure Function, que comprueba si hay un nuevo token de actualización y lo actualiza en Azure Key Vault.

Propiedades del conjunto de datos

Si desea ver una lista completa de las secciones y propiedades disponibles para definir conjuntos de datos, consulte el artículo sobre conjuntos de datos. En esta sección se proporciona una lista de las propiedades compatibles con el conjunto de datos de QuickBooks.

Para copiar datos de QuickBooks Online, establezca la propiedad type del conjunto de datos en QuickBooksObject. Se admiten las siguientes propiedades:

Propiedad Descripción Obligatorio
type La propiedad type del conjunto de datos debe establecerse en: QuickBooksObject
tableName Nombre de la tabla. No (si se especifica "query" en el origen de la actividad)

Ejemplo

{
    "name": "QuickBooksDataset",
    "properties": {
        "type": "QuickBooksObject",
        "typeProperties": {},
        "schema": [],
        "linkedServiceName": {
            "referenceName": "<QuickBooks linked service name>",
            "type": "LinkedServiceReference"
        }
    }
}

Propiedades de la actividad de copia

Si desea ver una lista completa de las secciones y propiedades disponibles para definir actividades, consulte el artículo sobre canalizaciones. En esta sección se proporciona una lista de las propiedades compatibles con el origen de QuickBooks.

QuickBooks como origen

Para copiar datos de QuickBooks Online, establezca el tipo de origen de la actividad de copia en QuickBooksSource. Se admiten las siguientes propiedades en la sección source de la actividad de copia:

Propiedad Descripción Obligatorio
type La propiedad type del origen de la actividad de copia debe establecerse en: QuickBooksSource
Query Use la consulta SQL personalizada para leer los datos. Por ejemplo: "SELECT * FROM "Bill" WHERE Id = '123'". No (si se especifica "tableName" en el conjunto de datos)

Ejemplo:

"activities":[
    {
        "name": "CopyFromQuickBooks",
        "type": "Copy",
        "inputs": [
            {
                "referenceName": "<QuickBooks input dataset name>",
                "type": "DatasetReference"
            }
        ],
        "outputs": [
            {
                "referenceName": "<output dataset name>",
                "type": "DatasetReference"
            }
        ],
        "typeProperties": {
            "source": {
                "type": "QuickBooksSource",
                "query": "SELECT * FROM \"Bill\" WHERE Id = '123' "
            },
            "sink": {
                "type": "<sink type>"
            }
        }
    }
]

Copia de datos de QuickBooks Desktop

La actividad de copia en el servicio no puede copiar datos directamente desde Quickbooks Desktop. Para copiar datos desde Quickbooks Desktop, exporte los datos de Quickbooks en un archivo de valores separados por comas (CSV) y, a continuación, cargue el archivo en Azure Blob Storage. Desde ahí puede usar el servicio para copiar los datos al receptor que prefiera.

Propiedades de la actividad de búsqueda

Para obtener información detallada sobre las propiedades, consulte Actividad de búsqueda.

Para obtener una lista de almacenes de datos que la actividad de copia admite como orígenes y receptores, vea Almacenes de datos que se admiten.