Copiar dados do QuickBooks Online usando o Azure Data Factory ou o Synapse Analytics (versão prévia)
APLICA-SE A: Azure Data Factory Azure Synapse Analytics
Dica
Experimente o Data Factory no Microsoft Fabric, uma solução de análise tudo-em-um para empresas. O Microsoft Fabric abrange desde movimentação de dados até ciência de dados, análise em tempo real, business intelligence e relatórios. Saiba como iniciar uma avaliação gratuita!
Este artigo descreve como usar a atividade de cópia nos pipelines do Azure Data Factory ou do Azure Synapse Analytics para copiar dados de uma tabela do QuickBooks Online. Ele amplia o artigo Visão geral da atividade de cópia que apresenta uma visão geral da atividade de cópia.
Importante
Atualmente, esse conector está em versão prévia. Você pode experimentá-lo e oferecer comentários. Se você quiser uma dependência de conectores em versão prévia em sua solução, entre em contato com suporte do Azure.
Funcionalidades com suporte
Este conector QuickBooks é compatível com as seguintes funcionalidades:
Funcionalidades com suporte | IR |
---|---|
Atividade de cópia (origem/-) | ① ② |
Atividade de pesquisa | ① ② |
① Runtime de integração do Azure ② Runtime de integração auto-hospedada
Para obter uma lista de armazenamentos de dados com suporte como origens/coletores, confira a tabela Armazenamentos de dados com suporte.
Este conector dá suporte à autenticação OAuth 2.0 do QuickBooks.
Introdução
Para executar a atividade de Cópia com um pipeline, será possível usar as ferramentas ou os SDKs abaixo:
- A ferramenta Copiar Dados
- O portal do Azure
- O SDK do .NET
- O SDK do Python
- PowerShell do Azure
- A API REST
- O modelo do Azure Resource Manager
Criar um serviço vinculado aos QuickBooks usando a interface do usuário
Use as etapas a seguir para criar um serviço vinculado aos QuickBooks na interface do usuário do portal do Microsoft Azure.
Navegue até a guia Gerenciar em seu espaço de trabalho do Azure Data Factory ou do Synapse e selecione Serviços Vinculados, em seguida, clique em Novo:
Pesquise por QuickBooks e selecione o conector QuickBooks.
Configure os detalhes do serviço, teste a conexão e crie o novo serviço vinculado.
Detalhes da configuração do conector
As seções a seguir fornecem detalhes sobre as propriedades usadas para definir entidades do Data Factory específicas ao conector do QuickBooks.
Propriedades do serviço vinculado
As propriedades a seguir têm suporte no serviço vinculado do QuickBooks:
Propriedade | Descrição | Obrigatório |
---|---|---|
type | A propriedade de tipo deve ser definida como: QuickBooks | Sim |
connectionProperties | Um grupo de propriedades que define como se conectar ao QuickBooks. | Sim |
Em connectionProperties : |
||
endpoint | O ponto de extremidade do servidor do QuickBooks Online. (ou seja, quickbooks.api.intuit.com) | Sim |
companyId | A ID de empresa da empresa QuickBooks para autorização. Para obter informações sobre como localizar a ID da empresa, confira Como encontrar minha ID da Empresa?. | Sim |
consumerKey | A ID do cliente do seu aplicativo QuickBooks Online para autenticação OAuth 2.0. Saiba mais aqui. | Sim |
consumerSecret | O segredo do cliente do seu aplicativo QuickBooks Online para autenticação OAuth 2.0. Marque este campo como um SecureString para armazená-lo com segurança ou referencie um segredo armazenado no Azure Key Vault. | Sim |
refreshToken | O token de atualização OAuth 2.0 associado ao aplicativo QuickBooks. Saiba mais aqui. Observe que o token de atualização expira após 180 dias. O cliente precisa atualizar regularmente o token de atualização. Marque este campo como um SecureString para armazená-lo com segurança ou referencie um segredo armazenado no Azure Key Vault. |
Sim |
useEncryptedEndpoints | Especifica se os endpoints de fonte de dados são criptografados usando HTTPS. O valor padrão é true. | Não |
Exemplo:
{
"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
}
}
}
}
Como tratar tokens de atualização para o serviço vinculado
Quando você usa o conector do QuickBooks Online em um serviço vinculado, é importante gerenciar corretamente os tokens de atualização OAuth 2.0 por meio do QuickBooks. O serviço vinculado usa um token de atualização para obter novos tokens de acesso. No entanto, o QuickBooks Online atualiza periodicamente o token de atualização, invalidando o anterior. O serviço vinculado não atualiza automaticamente o token de atualização no Azure Key Vault. Portanto, você precisa gerenciar a atualização do token de atualização para garantir a conectividade ininterrupta. Caso contrário, você poderá observar falhas de autenticação quando o token de atualização expirar.
Você pode atualizar manualmente o token de atualização no Azure Key Vault com base na política de expiração do token de atualização do QuickBooks Online. Porém, outra abordagem é automatizar atualizações com uma tarefa agendada ou uma função do Azure que verifica um novo token de atualização e o atualiza no Azure Key Vault.
Propriedades do conjunto de dados
Para obter uma lista completa das seções e propriedades disponíveis para definir os conjuntos de dados, confira o artigo sobre conjuntos de dados. Esta seção fornece uma lista das propriedades com suporte pelo conjunto de dados do QuickBooks.
Para copiar dados do QuickBooks Online, defina a propriedade type do conjunto de dados como QuickBooksObject. Há suporte para as seguintes propriedades:
Propriedade | Descrição | Obrigatório |
---|---|---|
type | A propriedade type do conjunto de dados precisa ser definida como QuickBooksObject | Sim |
tableName | Nome da tabela. | Não (se "query" na fonte da atividade for especificada) |
Exemplo
{
"name": "QuickBooksDataset",
"properties": {
"type": "QuickBooksObject",
"typeProperties": {},
"schema": [],
"linkedServiceName": {
"referenceName": "<QuickBooks linked service name>",
"type": "LinkedServiceReference"
}
}
}
Propriedades da atividade de cópia
Para obter uma lista completa das seções e propriedades disponíveis para definir atividades, confia o artigo Pipelines. Esta seção fornece uma lista das propriedades com suporte pela fonte do QuickBooks.
QuickBooks como fonte
Para copiar dados do QuickBooks Online, defina o tipo de fonte na atividade de cópia como QuickBooksSource. As propriedades a seguir têm suporte na seção source da atividade de cópia:
Propriedade | Descrição | Obrigatório |
---|---|---|
type | A o tipo da propriedade da fonte da atividade de cópia deve ser definida como: QuickBooksSource | Sim |
Consulta | Utiliza a consulta SQL personalizada para ler os dados. Por exemplo: "SELECT * FROM "Bill" WHERE Id = '123'" . |
Não (se "tableName" no conjunto de dados for especificado) |
Exemplo:
"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>"
}
}
}
]
Copiar dados do QuickBooks Desktop
A atividade de cópia no serviço não consegue copiar dados diretamente do Quickbooks Desktop. Para copiar dados do Quickbooks Desktop, exporte os dados do seu Quickbooks para um arquivo CSV (valores separados por vírgula) e, depois, carregue o arquivo no Armazenamento de Blobs do Azure. A partir daí, você pode usar o serviço para copiar os dados para o seu coletor preferido.
Pesquisar propriedades de atividade
Para saber detalhes sobre as propriedades, verifique Pesquisar atividade.
Conteúdo relacionado
Para obter uma lista de armazenamentos de dados com suporte como coletores e fontes da atividade de cópia, confira os armazenamentos de dados com suporte.