Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
APLICA-SE A:
Azure Data Factory
Azure Synapse Analytics
Dica
Experimente o Data Factory no Microsoft Fabric, uma solução de análise completa 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 nova avaliação gratuitamente!
Este artigo descreve como usar a atividade de cópia em um pipeline do Azure Data Factory ou do Azure Synapse Analytics para copiar dados do QuickBooks Online. Ele se baseia no artigo de visão geral sobre a atividade de cópia.
Importante
O conector QuickBooks versão 1.0 está em fase de remoção. Você é recomendado a atualizar o conector QuickBooks da versão 1.0 para a 2.0.
Funcionalidades com suporte
O conector do QuickBooks oferece suporte para os seguintes recursos:
| Funcionalidades com suporte | IR |
|---|---|
| Atividade de cópia (origem/-) | (1) (2) |
| Atividade de pesquisa | (1) (2) |
① Tempo de execução de integração do Azure ② Tempo de execução de integração auto-hospedado
Para obter uma lista de armazenamentos de dados com suporte como fontes ou destinos, consulte armazenamentos de dados suportados.
O conector dá suporte à autenticação do QuickBooks OAuth 2.0.
Introdução
Para executar a atividade de cópia com um pipeline, você pode usar uma das seguintes ferramentas ou SDKs:
- Ferramenta Copiar Dados
- Portal do Azure
- SDK do .NET
- SDK do Python
- PowerShell do Azure
- REST API
- Modelo do Azure Resource Manager
Criar um serviço vinculado para QuickBooks usando a interface do usuário
No portal do Azure, acesse o workspace do Azure Data Factory ou do Azure Synapse.
Vá para a guia Gerenciar , selecione Serviços vinculados e selecione Novo.
Pesquise 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
Você usa propriedades para definir entidades do Data Factory específicas para o conector QuickBooks.
Propriedades do serviço vinculado
O conector do QuickBooks agora dá suporte à versão 2.0. Para atualizar o conector do QuickBooks da versão 1.0 para a versão 2.0, consulte o procedimento posteriormente neste artigo. As seções a seguir descrevem os detalhes da propriedade para as duas versões.
Versão 2.0
O serviço vinculado QuickBooks dá suporte às seguintes propriedades para o conector versão 2.0:
| Propriedade | Descrição | Obrigatório |
|---|---|---|
type |
O tipo do serviço vinculado. Ele deve ser definido como QuickBooks. |
Sim |
version |
A versão que você especifica. O valor é 2.0. |
Sim |
endpoint |
O ponto de extremidade do servidor do QuickBooks Online. O valor é quickbooks.api.intuit.com. |
Sim |
companyId |
A ID de empresa da empresa QuickBooks para autorização. Para obter informações sobre como encontrar a ID da empresa, consulte o tópico de ajuda do QuickBooks Online. | Sim |
consumerKey |
A ID do cliente do seu aplicativo QuickBooks Online para autenticação OAuth 2.0. Saiba mais. | Sim |
consumerSecret |
O segredo do cliente do seu aplicativo QuickBooks Online para autenticação OAuth 2.0. Marque esse campo para SecureString 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. Marque esse campo para SecureString armazená-lo com segurança ou referencie um segredo armazenado no Azure Key Vault. O token de atualização expira após 180 dias, portanto, os clientes precisam atualizá-lo regularmente. |
Sim |
Veja um exemplo:
{
"name": "QuickBooksLinkedService",
"properties": {
"type": "QuickBooks",
"version": "2.0",
"typeProperties": {
"endpoint": "quickbooks.api.intuit.com",
"companyId": "<company id>",
"consumerKey": "<consumer key>",
"consumerSecret": {
"type": "SecureString",
"value": "<clientSecret>"
},
"refreshToken": {
"type": "SecureString",
"value": "<refresh token>"
}
}
}
}
Versão 1.0
O serviço vinculado QuickBooks dá suporte às seguintes propriedades para a versão 1.0 do conector:
| Propriedade | Descrição | Obrigatório |
|---|---|---|
type |
O tipo do serviço vinculado. Ele deve ser definido como QuickBooks. |
Sim |
connectionProperties |
Um grupo de propriedades que definem como se conectar a QuickBooks. | Sim |
Em connectionProperties: |
||
endpoint |
O ponto de extremidade do servidor do QuickBooks Online. O valor é quickbooks.api.intuit.com. |
Sim |
companyId |
A ID de empresa da empresa QuickBooks para autorização. Para obter informações sobre como encontrar a ID da empresa, consulte o tópico de ajuda do QuickBooks Online. | Sim |
consumerKey |
A ID do cliente do seu aplicativo QuickBooks Online para autenticação OAuth 2.0. Saiba mais. | Sim |
consumerSecret |
O segredo do cliente do seu aplicativo QuickBooks Online para autenticação OAuth 2.0. Marque esse campo para SecureString 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. Marque esse campo para SecureString armazená-lo com segurança ou referencie um segredo armazenado no Azure Key Vault. O token de atualização expira após 180 dias, portanto, os clientes precisam atualizá-lo regularmente. |
Sim |
useEncryptedEndpoints |
Especifica se os pontos de extremidade da fonte de dados são criptografados via HTTPS. O valor padrão é true. |
Não |
Veja um 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. Essa ação invalida o token 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á encontrar falhas de autenticação após a expiração do token de atualização.
Você pode atualizar manualmente o token de atualização no Azure Key Vault com base na política do QuickBooks Online para expiração de tokens de atualização. Outra abordagem é automatizar atualizações usando 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 conjuntos de dados, consulte Conjuntos de dados no Azure Data Factory e no Azure Synapse Analytics.
Para copiar dados do QuickBooks Online, defina a type propriedade do conjunto de dados como QuickBooksObject. O conjunto de dados QuickBooks dá suporte às seguintes propriedades:
| Propriedade | Descrição | Obrigatório |
|---|---|---|
type |
O tipo do conjunto de dados. Ele deve ser definido como QuickBooksObject. |
Sim |
tableName |
Nome da tabela. | Não (se query na origem da atividade for especificada) |
Veja um exemplo:
{
"name": "QuickBooksDataset",
"properties": {
"type": "QuickBooksObject",
"typeProperties": {},
"schema": [],
"linkedServiceName": {
"referenceName": "<QuickBooks linked service name>",
"type": "LinkedServiceReference"
}
}
}
O conector na versão 2.0 dá suporte às seguintes tabelas QuickBooks:
- Conta
- Anexável
- Attachable_AttachableRef
- Attachable_AttachableRef_CustomField
- Bill
- BillPayment_Line
- BillPayment_Line_LinkedTxn
- Bill_Account_Based_Expense_Line
- Bill_Item_Based_Expense_Line
- Bill_LinkedTxn
- Pagamento_de_Contas
- Bill_TxnTaxDetail_TaxLine
- Orçamento
- Detalhes do Orçamento
- Class
- CompanyCurrency_CustomField
- CompanyInfo_NameValue
- Moeda_da_Empresa
- Informações_da_Empresa
- PagamentoComCartãoDeCrédito
- NotaDeCrédito_CustomField
- CreditMemo_Description_Line
- CreditMemo_Discount_Line
- CreditMemo_Group_Individual_Item_Line
- CreditMemo_Group_Item_Line
- CreditMemo_Sales_Item_Line
- CreditMemo_Subtotal_Line
- CreditMemo_TxnTaxDetail_TaxLine
- Credit_Memo
- Customer
- CustomerType
- Departamento
- Depósito
- Deposit_CustomField
- Linha_de_Depósito
- Deposit_Line_CustomField
- Deposit_Linked_Transaction_Detail
- Deposit_Linked_Transaction_Line
- Deposit_TxnTaxDetail_TaxLine
- Funcionário
- Estimativa
- Estimate_CustomField
- Estimate_Description_Line
- Linha_Estimativa_Desconto
- Estimate_Group_Individual_Item_Line
- Estimate_Group_Item_Line
- Estimate_LinkedTxn
- Linha_de_Item_de_Venda_Estimada
- Estimate_Subtotal_Line
- Estimate_TxnTaxDetail_TaxLine
- Invoice
- Invoice_CustomField
- Invoice_Description_Line
- Linha_De_Desconto_De_Fatura
- Invoice_Group_Individual_Item_Line
- Invoice_Group_Item_Line
- Invoice_LinkedTxn
- Invoice_Sales_Item_Line
- Invoice_Subtotal_Line
- Invoice_TxnTaxDetail_TaxLine
- Item
- CódigoDoJornal_CampoPersonalizado
- JournalEntry_Description_Line
- JournalEntry_Line
- JournalEntry_TxnTaxDetail_TaxLine
- Journal_Code
- Journal_Entry
- Pagamento
- Linha_de_Pagamento
- Payment_Line_LinkedTxn
- Método de Pagamento
- Preferences
- Preferências_FormuláriosDeVendas_CampoPersonalizado
- Preferences_OtherPrefs_NameValue
- Preferences_VendorAndPurchasesPrefs_POCustomField
- Compra
- Linha_de_Despesa_Baseada_em_Conta_de_Compra
- Linha_de_Despesa_Baseada_no_Item_de_Compra
- Purchase_TxnTaxDetail_TaxLine
- Pedido de Compra
- PurchaseOrder_CustomField
- PurchaseOrder_Account_Based_Expense_Line
- PurchaseOrder_Item_Based_Expense_Line
- PurchaseOrder_LinkedTxn
- PurchaseOrder_TxnTaxDetail_TaxLine
- TransaçãoRecorrente
- RecurringTransactionLines
- ReciboDeReembolso_CampoPersonalizado
- RefundReceipt_Description_Line
- RefundReceipt_Discount_Line
- RefundReceipt_Group_Individual_Item_Line
- RefundReceipt_Group_Item_Line
- RefundReceipt_Sales_Item_Line
- RefundReceipt_Subtotal_Line
- RefundReceipt_TxnTaxDetail_TaxLine
- Recibo_de_Reembolso
- ReimburseCharge
- ReimburseCharge_Line
- ComprovanteDeVenda_CampoPersonalizado
- SalesReceipt_Description_Line
- SalesReceipt_Discount_Line
- SalesReceipt_Group_Individual_Item_Line
- SalesReceipt_Group_Item_Line
- SalesReceipt_Sales_Item_Line
- SalesReceipt_Subtotal_Line
- SalesReceipt_TxnTaxDetail_TaxLine
- Recibo_de_Venda
- Classificação Fiscal
- TaxCode_PurchaseTaxRateList_TaxRateDetail
- TaxCode_SalesTaxRateList_TaxRateDetail
- Agência Fiscal
- Código Tributário
- Taxa_De_Imposto
- Prazo
- Time_Activity
- Transferência
- Fornecedor
- VendorCredit_Account_Based_Expense_Line
- Linha_de_Despesa_Baseada_em_Item_de_Crédito_do_Fornecedor
- Crédito_do_Fornecedor
Propriedades da atividade de cópia
Para obter uma lista completa de seções e propriedades disponíveis para definir atividades, consulte Pipelines e atividades no Azure Data Factory e no Azure Synapse Analytics. Esta seção fornece uma lista de propriedades que a origem do QuickBooks suporta.
QuickBooks como fonte
Para copiar dados do QuickBooks Online, defina o tipo de origem na atividade de cópia como QuickBooksSource. O conjunto de dados do QuickBooks suporta as seguintes propriedades na seção source da atividade de cópia.
| Propriedade | Descrição | Obrigatório |
|---|---|---|
type |
O tipo da origem da atividade de cópia. Ele deve ser definido como QuickBooksSource. |
Sim |
query |
Utiliza a consulta SQL personalizada para ler os dados. Para a versão 2.0 do conector QuickBooks, você pode usar apenas a consulta nativa do QuickBooks, com limitações. Para obter mais informações, consulte Operações de consulta e sintaxe no site do Intuit Developer. Para a versão 1.0 do conector QuickBooks, você pode usar a consulta SQL-92. Por exemplo: "SELECT * FROM "Bill" WHERE Id = '123'". |
Não (se tableName no conjunto de dados for especificado) |
Veja um 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>"
}
}
}
]
Para obter uma lista completa das seções e propriedades disponíveis para definir atividades, consulte Pipelines e atividades no Azure Data Factory e no Azure Synapse Analytics.
Copiar dados do QuickBooks Desktop
A atividade de cópia no serviço não pode copiar dados diretamente do QuickBooks Desktop. Para copiar dados do QuickBooks Desktop, exporte seus dados do QuickBooks para um arquivo CSV (valores separados por vírgula) e 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.
Mapeamento de tipo de dados para Quickbooks
Quando você copia dados de QuickBooks, os mapeamentos a seguir se aplicam dos tipos de dados QuickBooks aos tipos de dados internos que o serviço usa. Para saber mais sobre como a atividade Copy mapeia o tipo de dados e o esquema de origem para o coletor, confira Mapeamentos de tipo de dados e esquema na atividade Copy.
| Tipo de dados QuickBooks | Tipo de dados de serviço provisório (para a versão 2.0) | Tipo de dados de serviço provisório (para a versão 1.0) |
|---|---|---|
String |
string |
string |
Boolean |
bool |
bool |
DateTime |
datetime |
datetime |
Decimal |
decimal (15,2) |
decimal (15, 2) |
Enum |
string |
string |
Date |
datetime |
datetime |
BigDecimal |
decimal (15,2) |
decimal (15, 2) |
Integer |
int |
int |
Pesquisar propriedades de atividade
Para obter detalhes sobre as propriedades da atividade de pesquisa, consulte a atividade pesquisa no Azure Data Factory e no Azure Synapse Analytics.
Ciclo de vida e atualização do conector QuickBooks
A tabela a seguir resume as informações sobre as versões do conector QuickBooks.
| Versão | Fase de liberação | Log de alterações |
|---|---|---|
| 1,0 | Removed | Não aplicável. |
| 2.0 | Disponibilidade Geral | Há suporte para consultas nativas do QuickBooks, com limitações.
GROUP BY cláusulas, JOIN cláusulas e funções de agregação (Avg, Max, Sum) não têm suporte. Para obter mais informações, consulte Operações de consulta e sintaxe no site do Intuit Developer. Não há suporte para a consulta SQL-92. A propriedade useEncryptedEndpoints não é suportada. Suporte a tabelas específicas do Quickbooks. Para a lista de tabelas com suporte, acesse as propriedades do conjunto de dados. |
Atualizar o conector do Quickbooks da versão 1.0 para a versão 2.0
No portal do Azure, acesse o workspace do Azure Data Factory ou do Azure Synapse.
Vá para a guia Gerenciar , selecione Serviços vinculados e selecione Editar para o serviço vinculado.
No painel Editar serviço vinculado , selecione 2.0 para a versão. Para obter mais informações, consulte as propriedades de serviço vinculadas para a versão 2.0 anteriormente neste artigo.
Se você usar uma consulta SQL na origem da atividade de cópia ou na atividade de pesquisa que refere ao serviço vinculado versão 1.0, será necessário convertê-la na consulta nativa do QuickBooks. Saiba mais sobre a consulta nativa das propriedades da atividade Copy mencionadas anteriormente neste artigo e sobre as operações de consulta e sintaxe no site do Intuit Developer.
Observe que a versão 2.0 dá suporte a tabelas quickbooks específicas. Para a lista de tabelas com suporte, acesse as propriedades do conjunto de dados.
Conteúdo relacionado
- Para obter uma lista de armazenamentos de dados que a atividade de cópia suporta como fontes e destinos, consulte Armazenamentos de dados e formatos com suporte.