Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
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 działania kopiowania w potoku usługi Azure Data Factory lub Synapse Analytics do kopiowania danych z usługi Xero. Jest on oparty na artykule omówienie działania kopiowania, który przedstawia ogólne omówienie działania kopiowania.
Uwaga
Łącznik Xero wymaga uwierzytelniania OAuth i nie jest przeznaczony do użycia serwer-serwer.
Ważne
Łącznik Xero w wersji 2.0 zapewnia ulepszoną natywną obsługę środowiska Xero. Jeśli używasz łącznika Xero w wersji 1.0 w rozwiązaniu, uaktualnij łącznik Xero przed 31 marca 2026 r. Zapoznaj się z tą sekcją , aby uzyskać szczegółowe informacje na temat różnic między wersją 2.0 a wersją 1.0.
Obsługiwane możliwości
Ten łącznik Xero 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/ujścia, zobacz tabelę Obsługiwane magazyny danych.
W szczególności ten łącznik Xero obsługuje następujące funkcje:
- Uwierzytelnianie OAuth 2.0.
- Wszystkie tabele Xero (punkty końcowe interfejsu API) z wyjątkiem "Raporty".
- Wersje systemu Windows w tym artykule.
Uwaga
Ze względu na zachód uwierzytelniania OAuth 1.0 w usłudze Xero przeprowadź uaktualnienie do typu uwierzytelniania OAuth 2.0, jeśli obecnie używasz typu uwierzytelniania OAuth 1.0.
Wprowadzenie
Aby wykonać działanie kopiowania za pomocą pipeline'u, możesz użyć jednego z następujących narzędzi lub zestawów SDK:
- Narzędzie do kopiowania danych
- Portal Azure
- zestawu SDK platformy .NET
- Zestaw SDK dla języka Python
- Azure PowerShell
- API REST
- Szablon usługi Azure Resource Manager
Tworzenie połączonej usługi z usługą Xero przy użyciu interfejsu użytkownika
Wykonaj poniższe kroki, aby utworzyć połączoną usługę xero w interfejsie użytkownika witryny Azure Portal.
Przejdź do karty Zarządzanie w obszarze roboczym usługi Azure Data Factory lub Synapse i wybierz pozycję Połączone usługi, a następnie kliknij pozycję Nowy:
Wyszukaj ciąg Xero i wybierz łącznik Xero.
Skonfiguruj szczegóły usługi, przetestuj połączenie i utwórz nową połączoną usługę.
Szczegóły konfiguracji łącznika
Poniższe sekcje zawierają szczegółowe informacje o właściwościach używanych do definiowania jednostek usługi Data Factory specyficznych dla łącznika Xero.
Właściwości połączonej usługi
Łącznik Xero obsługuje teraz wersję 2.0. Zapoznaj się z tą sekcją , aby uaktualnić wersję łącznika Xero z wersji 1.0. Aby uzyskać informacje szczegółowe dotyczące nieruchomości, zobacz odpowiednie sekcje.
Wersja 2.0
Połączona usługa Xero obsługuje następujące właściwości podczas stosowania wersji 2.0:
| Właściwości | Opis | Wymagania |
|---|---|---|
| typ | Właściwość type musi być ustawiona na: Xero | Tak |
| wersja | Wersja, którą określisz. Wartość to 2.0. |
Tak |
| gospodarz | Punkt końcowy serwera Xero (api.xero.com). |
Tak |
| clientId | Określ identyfikator klienta aplikacji Xero. Oznacz to pole jako element SecureString w celu bezpiecznego przechowywania go lub odwołuj się do wpisu tajnego przechowywanego w usłudze Azure Key Vault. |
Tak |
| clientSecret | Określ klucz tajny klienta dla aplikacji Xero. Oznacz to pole jako element SecureString w celu bezpiecznego przechowywania go lub odwołuj się do wpisu tajnego przechowywanego w usłudze Azure Key Vault. |
Tak |
| tenantId | Identyfikator dzierżawy skojarzony z aplikacją Xero. Dotyczy uwierzytelniania OAuth 2.0. Dowiedz się, jak uzyskać identyfikator dzierżawy z sekcji Sprawdź dzierżawy, do których masz uprawnienia dostępu. |
Tak |
| refreshToken | Token odświeżania OAuth 2.0 jest skojarzony z aplikacją Xero i używany do odświeżania tokenu dostępu; token dostępu wygasa po upływie 30 minut. Dowiedz się, jak działa przepływ autoryzacji Xero i jak uzyskać token odświeżania z tego artykułu. Aby uzyskać token odświeżania, musisz zażądać zakresu offline_access. Ograniczenie wiedzy: Uwaga Xero resetuje token odświeżania po jego użyciu na potrzeby odświeżania tokenu dostępu. W przypadku obciążenia zoperacjonalizowanego przed uruchomieniem każdego działania kopiowania należy ustawić prawidłowy token odświeżania dla usługi do użycia. Oznacz to pole jako element SecureString w celu bezpiecznego przechowywania go lub odwołuj się do wpisu tajnego przechowywanego w usłudze Azure Key Vault. |
Tak |
| connectVia | Środowisko Integration Runtime będzie użyte do połączenia z repozytorium danych. Jeśli nie określono żadnej wartości, właściwość używa domyślnego środowiska Azure Integration Runtime. Możesz użyć własnego środowiska Integration Runtime, a jego wersja powinna mieć wartość 5.61 lub nowszą. | Nie. |
Przykład:
{
"name": "XeroLinkedService",
"properties": {
"type": "Xero",
"typeProperties": {
"host": "api.xero.com",
"clientId": "<client ID>",
"clientSecret": "<client secret>",
"tenantId": "<tenant ID>",
"refreshToken": {
"type": "SecureString",
"value": "<refresh token>"
},
"authenticationType":"OAuth_2.0",
"version": "2.0"
}
}
}
Wersja 1.0
Połączona usługa Xero obsługuje następujące właściwości podczas stosowania wersji 1.0:
| Właściwości | Opis | Wymagania |
|---|---|---|
| typ | Właściwość type musi być ustawiona na: Xero | Tak |
| connectionProperties | Grupa właściwości definiujących sposób nawiązywania połączenia z usługą Xero. | Tak |
W obszarze connectionProperties: |
||
| gospodarz | Punkt końcowy serwera Xero (api.xero.com). |
Tak |
| authenticationType | Dozwolone wartości to OAuth_2.0 i OAuth_1.0. |
Tak |
| consumerKey | W przypadku protokołu OAuth 2.0 określ identyfikator klienta aplikacji Xero. W przypadku protokołu OAuth 1.0 określ klucz konsumenta skojarzony z aplikacją Xero. Oznacz to pole jako element SecureString w celu bezpiecznego przechowywania go lub odwołuj się do wpisu tajnego przechowywanego w usłudze Azure Key Vault. |
Tak |
| privateKey | W przypadku protokołu OAuth 2.0 określ klucz tajny klienta dla aplikacji Xero. W przypadku protokołu OAuth 1.0 określ klucz prywatny z pliku pem wygenerowanego dla aplikacji prywatnej Xero. Pamiętaj, aby wygenerować wartość privatekey.pem z numbitami 512 przy użyciu parametru openssl genrsa -out privatekey.pem 512, 1024 nie jest obsługiwany. Uwzględnij cały tekst z pliku pem, w tym zakończenia wiersza systemu Unix(\n), zobacz przykład poniżej.Oznacz to pole jako element SecureString w celu bezpiecznego przechowywania go lub odwołuj się do wpisu tajnego przechowywanego w usłudze Azure Key Vault. |
Tak |
| tenantId | Identyfikator dzierżawy skojarzony z aplikacją Xero. Dotyczy uwierzytelniania OAuth 2.0. Dowiedz się, jak uzyskać identyfikator dzierżawy z sekcji Sprawdź dzierżawy, do których masz uprawnienia dostępu. |
Tak w przypadku uwierzytelniania OAuth 2.0 |
| refreshToken | Dotyczy uwierzytelniania OAuth 2.0. Token odświeżania OAuth 2.0 jest skojarzony z aplikacją Xero i używany do odświeżania tokenu dostępu; token dostępu wygasa po upływie 30 minut. Dowiedz się, jak działa przepływ autoryzacji Xero i jak uzyskać token odświeżania z tego artykułu. Aby uzyskać token odświeżania, musisz zażądać zakresu offline_access. Ograniczenie wiedzy: Uwaga Xero resetuje token odświeżania po jego użyciu na potrzeby odświeżania tokenu dostępu. W przypadku obciążenia zoperacjonalizowanego przed uruchomieniem każdego działania kopiowania należy ustawić prawidłowy token odświeżania dla usługi do użycia. Oznacz to pole jako element SecureString w celu bezpiecznego przechowywania go lub odwołuj się do wpisu tajnego przechowywanego w usłudze Azure Key Vault. |
Tak w przypadku uwierzytelniania OAuth 2.0 |
| useEncryptedEndpoints | Określa, czy punkty końcowe źródła danych są szyfrowane przy użyciu protokołu HTTPS. Wartość domyślna to true. | Nie. |
| useHostVerification | Określa, czy nazwa hosta jest wymagana w certyfikacie serwera, aby odpowiadała nazwie hosta serwera podczas nawiązywania połączenia za pośrednictwem protokołu TLS. Wartość domyślna to true. | Nie. |
| usePeerVerification | Określa, czy należy zweryfikować tożsamość serwera podczas nawiązywania połączenia za pośrednictwem protokołu TLS. Wartość domyślna to true. | Nie. |
Przykład: uwierzytelnianie OAuth 2.0
{
"name": "XeroLinkedService",
"properties": {
"type": "Xero",
"typeProperties": {
"connectionProperties": {
"host": "api.xero.com",
"authenticationType":"OAuth_2.0",
"consumerKey": {
"type": "SecureString",
"value": "<client ID>"
},
"privateKey": {
"type": "SecureString",
"value": "<client secret>"
},
"tenantId": "<tenant ID>",
"refreshToken": {
"type": "SecureString",
"value": "<refresh token>"
},
"useEncryptedEndpoints": true,
"useHostVerification": true,
"usePeerVerification": true
}
}
}
}
Przykład: uwierzytelnianie OAuth 1.0
{
"name": "XeroLinkedService",
"properties": {
"type": "Xero",
"typeProperties": {
"connectionProperties": {
"host": "api.xero.com",
"authenticationType":"OAuth_1.0",
"consumerKey": {
"type": "SecureString",
"value": "<consumer key>"
},
"privateKey": {
"type": "SecureString",
"value": "<private key>"
},
"useEncryptedEndpoints": true,
"useHostVerification": true,
"usePeerVerification": true
}
}
}
}
Przykładowa wartość klucza prywatnego:
Uwzględnij cały tekst z pliku pem, w tym zakończenia wierszy systemu Unix(\n).
"-----BEGIN RSA PRIVATE KEY-----\nMII***************************************************P\nbu****************************************************s\nU/****************************************************B\nA*****************************************************W\njH****************************************************e\nsx*****************************************************l\nq******************************************************X\nh*****************************************************i\nd*****************************************************s\nA*****************************************************dsfb\nN*****************************************************M\np*****************************************************Ly\nK*****************************************************Y=\n-----END RSA PRIVATE KEY-----"
Właściwości zestawu danych
Pełna lista sekcji i właściwości dostępnych do definiowania zestawów danych znajduje się w artykule dotyczącym zestawów danych. Ta sekcja zawiera listę właściwości obsługiwanych przez zestaw danych Xero.
Aby skopiować dane z Xero, ustaw właściwość type zestawu danych na wartość XeroObject. Obsługiwane są następujące właściwości:
| Właściwości | Opis | Wymagania |
|---|---|---|
| typ | Właściwość type zestawu danych musi być ustawiona na: XeroObject | Tak |
| tabela | Nazwa tabeli. Nazwy tabel używają nazwy obiektu, na przykład: Accounts. Ta właściwość jest obsługiwana tylko w wersji 2.0. |
Tak |
| tableName | Nazwa tabeli. Nazwy tabel używają nazw obiektów z prefiksem, na przykład "Global"."Accounts". Ta właściwość jest obsługiwana tylko w wersji 1.0. |
Nie (jeśli w źródle aktywności określono "zapytanie") |
Przykład
{
"name": "XeroDataset",
"properties": {
"type": "XeroObject",
"typeProperties": {},
"schema": [],
"linkedServiceName": {
"referenceName": "<Xero linked service name>",
"type": "LinkedServiceReference"
}
}
}
Łącznik w wersji 2.0 obsługuje następujące tabele Xero:
- Accounts
- Elementy_Linii_Transakcji_Bankowej
- Przelewy Bankowe
- Budgets
- Contacts_Addresses
- Grupa_Kontaktów_Kontakty
- Contacts_Phones
- Pozycje_Noty_Kredytowej
- Śledzenie_Pozycji_Linii_Korekty_Kredytowej
- Waluty
- Pozycje_Faktury
- Śledzenie_Pozycji_Faktury
- Przedmioty
- Arkusze
- Journal_Lines
- Kategorie_Śledzenia_Linii_Dziennika
- Manual_Journals
- Ręczne_Linie_Dziennika
- Organizacje
- Pozycje_Linii_Uiszczenia_Zaliczki
- Projekty
- UżytkownicyProjektu
- Pozycje_wierszy_zamówienia_zakupu
- Stawki_Podatkowe
- Tracking_Categories
- Opcje_Kategorii_Śledzenia
- Użytkownicy
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 artykuł Pipelines (Potoki ). Ta sekcja zawiera listę właściwości obsługiwanych przez źródło Xero.
Xero jako źródło
Aby skopiować dane z Xero, ustaw typ źródła w działaniu kopiowania na XeroSource. Następujące właściwości są obsługiwane w sekcji źródło działania kopiowania:
| Właściwości | Opis | Wymagania |
|---|---|---|
| typ | Właściwość type źródła działania kopiowania musi być ustawiona na: XeroSource | Tak |
| kwerenda | Użyj niestandardowego zapytania SQL, aby odczytać dane. Na przykład: "SELECT * FROM Contacts". |
Nie (jeśli określono "tableName" w zestawie danych) |
Uwaga
query nie jest obsługiwany w wersji 2.0.
Przykład:
"activities":[
{
"name": "CopyFromXero",
"type": "Copy",
"inputs": [
{
"referenceName": "<Xero input dataset name>",
"type": "DatasetReference"
}
],
"outputs": [
{
"referenceName": "<output dataset name>",
"type": "DatasetReference"
}
],
"typeProperties": {
"source": {
"type": "XeroSource",
"query": "SELECT * FROM Contacts"
},
"sink": {
"type": "<sink type>"
}
}
}
]
Podczas określania zapytania Xero zwróć uwagę na następujące kwestie:
Tabele ze złożonymi elementami zostaną podzielone na wiele tabel. Na przykład transakcje bankowe mają złożoną strukturę danych "LineItems", więc dane transakcji bankowych są mapowane na tabelę
Bank_TransactioniBank_Transaction_Line_Items, z kluczemBank_Transaction_IDobcym, aby połączyć je ze sobą.Dane Xero są dostępne za pośrednictwem dwóch schematów:
Minimal(wartość domyślna) iComplete. Schemat Complete zawiera tabele wywołań wstępnych, które wymagają dodatkowych danych (np. kolumny ID) przed wykonaniem żądanego zapytania.
Poniższe tabele zawierają te same informacje w schemacie Minimum i Complete. Aby zmniejszyć liczbę wywołań interfejsu API, użyj minimalnego schematu (ustawienie domyślne).
- Bank_Transactions
- Contact_Groups
- Kontakty
- Contacts_Sales_Tracking_Categories
- Contacts_Phones
- Contacts_Addresses
- Contacts_Purchases_Tracking_Categories
- Credit_Notes
- Credit_Notes_Allocations
- Expense_Claims
- Expense_Claim_Validation_Errors
- Faktury
- Invoices_Credit_Notes
- Invoices_ przedpłaty
- Invoices_Overpayments
- Manual_Journals
- Nadpłaty
- Overpayments_Allocations
- Zaliczki
- Prepayments_Allocations
- Rachunki
- Receipt_Validation_Errors
- Tracking_Categories
Następujące tabele mogą być odpytywane tylko z pełnym schematem:
- Complete.Bank_Transaction_Line_Items
- Complete.Bank_Transaction_Line_Item_Tracking
- Complete.Contact_Group_Contacts
- osoby Complete.Contacts_Contact_
- Complete.Credit_Note_Line_Items
- Complete.Credit_Notes_Line_Items_Tracking
- Complete.Expense_Claim_ Płatności
- Complete.Expense_Claim_Receipts
- Complete.Invoice_Line_Items
- Complete.Invoices_Line_Items_Tracking
- Complete.Manual_Journal_Lines
- Complete.Manual_Journal_Line_Tracking
- Complete.Overpayment_Line_Items
- Complete.Overpayment_Line_Items_Tracking
- Complete.Prepayment_Line_Items
- Complete.Prepayment_Line_Item_Tracking
- Complete.Receipt_Line_Items
- Complete.Receipt_Line_Item_Tracking
- Complete.Tracking_Category_Options
Mapowanie typów danych dla Xero
Podczas kopiowania danych z Xero następujące mapowania mają zastosowanie z typów danych Xero 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 docelowy, zobacz Mapowanie schematu i typu danych.
| Typ danych Xero | Typ danych usługi tymczasowej (wersja 2.0) | Typ danych usługi tymczasowej (wersja 1.0) |
|---|---|---|
| Sznurek | Sznurek | Sznurek |
| Date | Sznurek | Date |
| DateTime | Sznurek | Sznurek |
| logiczny | logiczny | logiczny |
| Liczba (standardowa) | Int32 | Int32 |
| Liczba (duża) | Int64 | Int64 |
Właściwości działania wyszukiwania
Aby dowiedzieć się więcej o właściwościach, sprawdź działanie Wyszukiwania.
Cykl życia i uaktualnianie łącznika Xero
W poniższej tabeli przedstawiono etap wydania i dzienniki zmian dla różnych wersji łącznika Xero:
| wersja | Etap wydania | Dziennik zmian |
|---|---|---|
| Wersja 1.0 | Ogłoszono zakończenie wsparcia | / |
| Wersja 2.0 | Wersja GA dostępna | • W połączonej usłudze consumerKey jest zastępowane przez clientId, a privateKey zostaje zastąpione przez clientSecret. • Użyj table zamiast tableName w zestawach danych. • Wartość parametru table to nazwa obiektu, na przykład: Accounts. • Wersja własnego środowiska Integration Runtime powinna mieć wartość 5.61 lub nowszą. • Data jest odczytywana jako typ danych tekst. • Obsługa określonych tabel Xero. Aby uzyskać listę obsługiwanych tabel, przejdź do pozycji Właściwości zestawu danych. • useEncryptedEndpoints, useHostVerification, usePeerVerification nie są obsługiwane w połączonej usłudze. • query nie jest obsługiwana. • Uwierzytelnianie OAuth 1.0 nie jest obsługiwane. |
Uaktualnianie łącznika Xero z wersji 1.0 do wersji 2.0
Na stronie Edytowanie połączonej usługi wybierz wersję 2.0 i skonfiguruj połączoną usługę, odwołując się do właściwości połączonej usługi w wersji 2.0.
Mapowanie typu danych dla połączonej usługi Xero w wersji 2.0 różni się od tego dla wersji 1.0. Aby dowiedzieć się więcej na temat najnowszego mapowania typów danych, zobacz Mapowanie typów danych dla Xero.
Jeśli używasz własnego środowiska Integration Runtime, jego wersja powinna mieć wartość 5.61 lub nowszą.
Użyj
tablezamiasttableNamew wersji 2.0. Aby uzyskać szczegółową konfigurację, przejdź do pozycji Właściwości zestawu danych.queryprogram jest obsługiwany tylko w wersji 1.0. Należy użyć elementutablezamiastqueryw wersji 2.0.Należy pamiętać, że wersja 2.0 obsługuje określone tabele Xero. Aby uzyskać listę obsługiwanych tabel, przejdź do pozycji Właściwości zestawu danych.
Powiązana zawartość
Aby uzyskać listę obsługiwanych magazynów danych przez działanie kopiowania, zobacz obsługiwane magazyny danych.