Udostępnij przez


Kopiowanie danych z usługi QuickBooks Online przy użyciu usługi Azure Data Factory lub Azure Synapse Analytics

DOTYCZY: Azure Data Factory Azure Synapse Analytics

Napiwek

Wypróbuj usługę Data Factory w usłudze Microsoft Fabric — rozwiązanie analityczne typu all-in-one dla przedsiębiorstw. Usługa Microsoft Fabric obejmuje wszystko, od przenoszenia danych do nauki o danych, analizy w czasie rzeczywistym, analizy biznesowej i raportowania. Dowiedz się, jak bezpłatnie rozpocząć nową wersję próbną !

W tym artykule opisano sposób używania aktywności kopiowania w ramach potoku usługi Azure Data Factory lub Azure Synapse Analytics do kopiowania danych z usługi QuickBooks Online. Jest on oparty na artykule z omówieniem działania kopiowania.

Ważne

Łącznik QuickBooks w wersji 1.0 jest na etapie usuwania. Zaleca się uaktualnienie łącznika QuickBooks z wersji 1.0 do 2.0.

Obsługiwane możliwości

Łącznik QuickBooks jest obsługiwany w następujących funkcjach:

Obsługiwane możliwości środowisko IR
działanie Kopiuj (źródło/-) (1) (2)
Działanie Lookup (1) (2)

(1) Środowisko Azure Integration Runtime (2) Self-hosted Integration Runtime

Aby uzyskać listę magazynów danych obsługiwanych jako źródła lub ujścia, zobacz Obsługiwane magazyny danych.

Łącznik obsługuje uwierzytelnianie QuickBooks OAuth 2.0.

Wprowadzenie

Aby wykonać działanie kopiowania za pomocą potoku, możesz użyć jednego z następujących narzędzi lub zestawów SDK:

Tworzenie połączonej usługi z aplikacją QuickBooks przy użyciu interfejsu użytkownika

  1. W witrynie Azure Portal przejdź do obszaru roboczego usługi Azure Data Factory lub Azure Synapse.

  2. Przejdź do karty Zarządzanie , wybierz pozycję Połączone usługi, a następnie wybierz pozycję Nowy.

  3. Wyszukaj program QuickBooks, a następnie wybierz łącznik QuickBooks.

    Zrzut ekranu przedstawiający wyniki wyszukiwania łącznika QuickBooks.

  4. Skonfiguruj szczegóły usługi, przetestuj połączenie i utwórz nową połączoną usługę.

    Zrzut ekranu przedstawiający panel konfiguracji usługi powiązanej dla QuickBooks.

Szczegóły konfiguracji łącznika

Właściwości służą do definiowania jednostek usługi Data Factory specyficznych dla łącznika QuickBooks.

Właściwości połączonej usługi

Łącznik QuickBooks obsługuje teraz wersję 2.0. Aby uaktualnić łącznik QuickBooks z wersji 1.0 do wersji 2.0, zapoznaj się z procedurą w dalszej części tego artykułu. W poniższych sekcjach opisano szczegóły właściwości dla dwóch wersji.

Wersja 2.0

Połączona usługa QuickBooks obsługuje następujące właściwości łącznika w wersji 2.0:

Właściwości Opis Wymagania
type Typ połączonej usługi. Musi być ustawione na QuickBooks. Tak
version Wersja, którą określisz. Wartość to 2.0. Tak
endpoint Punkt końcowy serwera QuickBooks Online. Wartość to quickbooks.api.intuit.com. Tak
companyId Identyfikator firmy QuickBooks do autoryzowania. Aby uzyskać informacje na temat znajdowania identyfikatora firmy, zobacz temat Pomocy quickBooks Online. Tak
consumerKey Identyfikator klienta aplikacji QuickBooks Online na potrzeby uwierzytelniania OAuth 2.0. Dowiedz się więcej. Tak
consumerSecret Wpis tajny klienta aplikacji QuickBooks Online na potrzeby uwierzytelniania OAuth 2.0. Oznacz to pole jako SecureString, aby bezpiecznie je przechowywać lub odwołać się do tajemnicy przechowywanej w usłudze Azure Key Vault. Tak
refreshToken Token odświeżania OAuth 2.0 skojarzony z aplikacją QuickBooks. Dowiedz się więcej. Oznacz to pole jako SecureString, aby bezpiecznie je przechowywać lub odwołać się do tajemnicy przechowywanej w usłudze Azure Key Vault.

Token odświeżania wygasa po upływie 180 dni, więc klienci muszą je regularnie aktualizować.
Tak

Oto przykład:

{
    "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>"
            }
        }
    }
}

Wersja 1.0

Połączona usługa QuickBooks obsługuje następujące właściwości łącznika w wersji 1.0:

Właściwości Opis Wymagania
type Typ połączonej usługi. Musi być ustawione na QuickBooks. Tak
connectionProperties Grupa właściwości definiujących sposób nawiązywania połączenia z elementami QuickBooks. Tak
W obszarze connectionProperties:
endpoint Punkt końcowy serwera QuickBooks Online. Wartość to quickbooks.api.intuit.com. Tak
companyId Identyfikator firmy QuickBooks do autoryzowania. Aby uzyskać informacje na temat znajdowania identyfikatora firmy, zobacz temat Pomocy quickBooks Online. Tak
consumerKey Identyfikator klienta aplikacji QuickBooks Online na potrzeby uwierzytelniania OAuth 2.0. Dowiedz się więcej. Tak
consumerSecret Wpis tajny klienta aplikacji QuickBooks Online na potrzeby uwierzytelniania OAuth 2.0. Oznacz to pole jako SecureString, aby bezpiecznie je przechowywać lub odwołać się do tajemnicy przechowywanej w usłudze Azure Key Vault. Tak
refreshToken Token odświeżania OAuth 2.0 skojarzony z aplikacją QuickBooks. Dowiedz się więcej. Oznacz to pole jako SecureString, aby bezpiecznie je przechowywać lub odwołać się do tajemnicy przechowywanej w usłudze Azure Key Vault.

Token odświeżania wygasa po upływie 180 dni, więc klienci muszą je regularnie aktualizować.
Tak
useEncryptedEndpoints Określa, czy punkty końcowe źródła danych są szyfrowane za pośrednictwem protokołu HTTPS. Domyślna wartość to true. Nie.

Oto przykład:

{
    "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
            }
        }
    }
}

Obsługa tokenów odświeżania dla połączonej usługi

Jeśli używasz łącznika QuickBooks Online w połączonej usłudze, ważne jest prawidłowe zarządzanie tokenami odświeżania protokołu OAuth 2.0 z poziomu elementów QuickBooks.

Połączona usługa używa tokenu odświeżania do uzyskiwania nowych tokenów dostępu. Jednak usługa QuickBooks Online okresowo aktualizuje token odświeżania. Ta akcja unieważnia poprzedni token.

Połączona usługa nie aktualizuje automatycznie tokenu odświeżania w usłudze Azure Key Vault, dlatego należy zarządzać aktualizowaniem tokenu odświeżania, aby zapewnić nieprzerwaną łączność. W przeciwnym razie po wygaśnięciu tokenu odświeżania mogą wystąpić błędy uwierzytelniania.

Możesz ręcznie zaktualizować token odświeżania w usłudze Azure Key Vault zgodnie z polityką QuickBooks Online dotyczącą ważności tokenów odświeżania. Innym podejściem jest zautomatyzowanie aktualizacji przy użyciu zaplanowanego zadania lub funkcji platformy Azure , która sprawdza nowy token odświeżania i aktualizuje je w usłudze Azure Key Vault.

Właściwości zestawu danych

Aby uzyskać pełną listę dostępnych sekcji i właściwości do definiowania zestawów danych, zobacz Zestawy danych w usługach Azure Data Factory i Azure Synapse Analytics.

Aby skopiować dane z usługi QuickBooks Online, ustaw type właściwość zestawu danych na QuickBooksObject. Zestaw danych QuickBooks obsługuje następujące właściwości:

Właściwości Opis Wymagania
type Typ zestawu danych. Musi być ustawione na QuickBooksObject. Tak
tableName Nazwa tabeli. Nie (jeśli query w źródle aktywności jest określone)

Oto przykład:

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

Łącznik w wersji 2.0 obsługuje następujące tabele QuickBooks:

  • Account
  • Dołączany
  • Attachable_AttachableRef
  • Attachable_AttachableRef_CustomField
  • Rachunek
  • OpłataRachunku_Linia
  • PłatnośćFaktur_Linia_PowiązanaTransakcja
  • Linia_Wydatku_Oparta_O_Konto_Rachunku
  • Wiersz_Rachunek_Wydatki_Bazowane_Na_Pozycji
  • Bill_LinkedTxn
  • Płatność_rachunku
  • Bill_TxnTaxDetail_TaxLine
  • Budżet
  • Szczegóły_Budżetu
  • Class
  • WalutaFirmy_PoleNiestandardowe
  • CompanyInfo_NameValue
  • Company_Currency
  • Informacje_o_Firmie
  • PłatnośćKartąKredytową
  • CreditMemo_CustomField
  • CreditMemo_Description_Line
  • Linia_Rabatu_NotyKredytowej
  • NotaKredytowa_Grupa_Indywidualna_Pozycja_Linia
  • NotatkaKredytowa_Grupa_Pozycja_Linia
  • CreditMemo_Sales_Item_Line
  • NotaKredytowa_SumaCzęściowa_Linia
  • CreditMemo_TxnTaxDetail_TaxLine
  • Nota_kredytowa
  • Klient
  • Typ klienta
  • Dział
  • Przelew
  • Depozyt_PoleNiestandardowe
  • Linia Depozytu
  • Linia_Depozytu_PoleNiestandardowe
  • Szczegóły_Transakcji_Powiązanej_z_Depozytem
  • Linia_Transakcji_Powiązana_z_Depozytem
  • Deposit_TxnTaxDetail_TaxLine
  • Pracownik
  • Szacowanie
  • PoleNiestandardowe_Szacowanie
  • Linia Opisu Szacowania
  • Szacowanie_Rabat_Linia
  • Szacowanie_Grupa_Indywidualny_Element_Linia
  • Linia_Elementów_Grupy_Szacowania
  • Estimate_LinkedTxn
  • Szacowanie_Linii_Pozycji_Sprzedaży
  • Estimate_Subtotal_Line
  • Estimate_TxnTaxDetail_TaxLine
  • Invoice
  • Faktura_PoleDostosowane
  • Invoice_Description_Line
  • Linia_Rabatowa_Faktury
  • Grupa_Faktury_Indywidualny_Element_Wiersz
  • Faktura_Grupa_Pozycja_Linia
  • Faktura_PowiązanaTransakcja
  • Faktura_Sprzedaż_Pozycja_Linii
  • Linia_Podsumowania_Faktury
  • Invoice_TxnTaxDetail_TaxLine
  • Produkt
  • KodDziennika_PoleNiestandardowe
  • JournalEntry_Description_Line
  • WpisDziennika_Linia
  • JournalEntry_TxnTaxDetail_TaxLine
  • Kod_Czasopisma
  • Zapis_dziennika
  • Płatność
  • Linia_Płatności
  • Payment_Linia_PołączonaTransakcja
  • Metoda_Płatności
  • Preferences
  • Preferencje_FormularzeSprzedaży_PoleNiestandardowe
  • Preferences_OtherPrefs_NameValue
  • Preferencje_DostawcaIZakupy_PoleUżytkownikaPO
  • Zakup
  • Zakup_konto_oparte_na_kosztach_linia
  • Linia wydatków oparta na zakupie przedmiotu
  • Purchase_TxnTaxDetail_TaxLine
  • Zamówienie_Zakupu
  • PurchaseOrder_CustomField
  • Zamówienie_Zakup_Opłaty_Na_Podstawie_Konta
  • ZamówienieZakupu_Pozycja_Podstawowa_LiniaKosztów
  • ZamówienieZakupu_PowiązanaTransakcja
  • ZamówienieZakupu_SzczegółyPodatkuTransakcji_LiniaPodatkowa
  • Cykliczna transakcja
  • Cykliczne linie transakcji
  • RefundReceipt_CustomField
  • Opis wiersza paragonu zwrotu
  • ParagonZwrotu_LiniaRabatu
  • ParagonZwrotu_Grupa_Indywidualny_Pożedczy_Linia
  • RefundReceipt_Group_Item_Line
  • ParagonZwrotu_Sprzedaż_Pozycja_Linia
  • RefundParagon_SumaCzęściowa_Linia
  • PotwierdzenieZwrotu_SzczegółyPodatkuTxLiniaPodatkowa
  • Paragon Zwrotu
  • Opłata za zwrot kosztów
  • Linia_Opłat_Zwrotnych
  • ParagonSprzedaży_PoleUżytkownika
  • OpisWierszaParagonuSprzedaży
  • ParagonSprzedaży_LiniaRabatowa
  • Paragon_NaGrupę_Pojedynczy_Pozycja_Linia
  • Linia_Pozycji_Grupy_Paragonu
  • Linia_Pozycji_Sprzedaży_Paragonu_Sprzedaży
  • Linia_Podsumowanie_RachunkuSprzedaży
  • SalesReceipt_SzczegółyPodatkuTransakcji_LiniaPodatku
  • Paragon_sprzedaży
  • Klasyfikacja Podatkowa
  • TaxCode_PurchaseTaxRateList_TaxRateDetail
  • TaxCode_SalesTaxRateList_TaxRateDetail
  • Agencja_Podatkowa
  • Kod_Podatkowy
  • Stawka_Podatkowa
  • Termin
  • Czas_Aktywność
  • Przenoszenie
  • Sprzedawca
  • KredytDostawcy_OparteNaKoncie_LiniaWydatków
  • NotaKredytowaDostawcy_Element_Based_WierszWydatków
  • Kredyt dostawcy

Właściwości działania kopiowania

Aby uzyskać pełną listę sekcji i właściwości dostępnych do definiowania działań, zobacz Pipelines and activities in Azure Data Factory and Azure Synapse Analytics (Potoki i działania w usługach Azure Data Factory i Azure Synapse Analytics). Ta sekcja zawiera listę właściwości, które obsługuje źródło QuickBooks.

QuickBooks jako źródło

Aby skopiować dane z usługi QuickBooks Online, ustaw typ źródła w działaniu kopiowania na wartość QuickBooksSource. Zestaw danych QuickBooks obsługuje następujące właściwości w sekcji działania kopiowania source :

Właściwości Opis Wymagania
type Typ źródła działania kopiowania. Musi być ustawione na QuickBooksSource. Tak
query Użyj niestandardowego zapytania SQL, aby odczytać dane.

W wersji 2.0 łącznika QuickBooks można używać tylko zapytania natywnego QuickBooks z ograniczeniami. Aby uzyskać więcej informacji, zobacz Operacje zapytań i składnia w witrynie Intuit Developer.

W przypadku wersji 1.0 łącznika QuickBooks można użyć zapytania SQL-92. Na przykład: "SELECT * FROM "Bill" WHERE Id = '123'".
Nie (jeśli tableName w zestawie danych jest określone)

Oto przykład:

"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>"
            }
        }
    }
]

Aby uzyskać pełną listę dostępnych sekcji i właściwości definiowania działań, zobacz Pipelines and activities in Azure Data Factory and Azure Synapse Analytics (Potoki i działania w usłudze Azure Data Factory i Azure Synapse Analytics).

Kopiowanie danych z programu QuickBooks Desktop

Działanie kopiowania w usłudze nie może kopiować danych bezpośrednio z programu QuickBooks Desktop. Aby skopiować dane z programu QuickBooks Desktop, wyeksportuj dane QuickBooks do pliku wartości rozdzielonych przecinkami (CSV), a następnie przekaż plik do usługi Azure Blob Storage. Z tego miejsca możesz użyć usługi, aby skopiować dane do wybranego ujścia.

Mapowanie typów danych dla QuickBooks

Podczas kopiowania danych z programu QuickBooks następujące mapowania są stosowane z typów danych QuickBooks do wewnętrznych typów danych używanych przez usługę. Aby dowiedzieć się, jak działanie kopiowania mapuje schemat źródłowy i typ danych na ujście, zobacz Mapowanie schematu i typu danych w działaniu kopiowania.

Typ danych QuickBooks Typ danych usługi tymczasowej (wersja 2.0) Typ danych usługi tymczasowej (wersja 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

Właściwości działania wyszukiwania

Aby uzyskać szczegółowe informacje o właściwościach działania wyszukiwania, zobacz Działanie wyszukiwania w usłudze Azure Data Factory i usłudze Azure Synapse Analytics.

Cykl życia i uaktualnianie łącznika Quickbooks

Poniższa tabela zawiera podsumowanie informacji o wersjach łącznika QuickBooks:

wersja Etap wydania Dziennik zmian
1.0 Removed Nie dotyczy.
2.0 Ogólna dostępność Zapytanie natywne QuickBooks jest obsługiwane z ograniczeniami. GROUP BY klauzule, JOIN klauzule i funkcje agregujące (Avg, Max, Sum) nie są obsługiwane. Aby uzyskać więcej informacji, zobacz Operacje zapytań i składnia w witrynie Intuit Developer.

Zapytanie SQL-92 nie jest obsługiwane.

Właściwość useEncryptedEndpoints nie jest obsługiwana.

Obsługa określonych tabel QuickBooks. Aby uzyskać listę obsługiwanych tabel, przejdź do pozycji Właściwości zestawu danych.

Uaktualnianie łącznika Quickbooks z wersji 1.0 do wersji 2.0

  1. W witrynie Azure Portal przejdź do obszaru roboczego usługi Azure Data Factory lub Azure Synapse.

  2. Przejdź do karty Zarządzanie , wybierz pozycję Połączone usługi, a następnie wybierz pozycję Edytuj dla połączonej usługi.

  3. W okienku Edytuj połączoną usługę wybierz wersję 2.0 . Aby uzyskać więcej informacji, zobacz właściwości połączonej usługi dla wersji 2.0, jak wspomniano wcześniej w tym artykule.

  4. Jeśli używasz zapytania SQL w źródle działania kopiowania lub działania wyszukiwania odwołującego się do połączonej usługi w wersji 1.0, musisz przekonwertować je na zapytanie natywne QuickBooks. Dowiedz się więcej o zapytaniu natywnym z właściwości aktywności kopiowania we wcześniejszej części tego artykułu oraz z Operacji i składni zapytań na stronie Intuit Developer.

  5. Należy pamiętać, że wersja 2.0 obsługuje określone tabele Quickbook. Aby uzyskać listę obsługiwanych tabel, przejdź do pozycji Właściwości zestawu danych.