Copiare dati da Xero tramite Azure Data Factory (anteprima)Copy data from Xero using Azure Data Factory (Preview)

Questo articolo illustra come usare l'attività di copia in Azure Data Factory per copiare dati da e in Xero.This article outlines how to use the Copy Activity in Azure Data Factory to copy data from Xero. Si basa sull'articolo di panoramica dell'attività di copia che presenta una panoramica generale sull'attività di copia.It builds on the copy activity overview article that presents a general overview of copy activity.

Importante

Questo connettore è attualmente disponibile in anteprima.This connector is currently in preview. È possibile provarlo e inviare commenti e suggerimenti.You can try it out and provide feedback. Se si vuole accettare una dipendenza dai connettori in versione di anteprima nella propria soluzione, contattare il supporto tecnico di Azure.If you want to take a dependency on preview connectors in your solution, please contact Azure support.

Funzionalità supportateSupported capabilities

Questo connettore Xero è supportato per le attività seguenti:This Xero connector is supported for the following activities:

È possibile copiare dati da Xero a qualsiasi archivio dati di sink supportato.You can copy data from Xero to any supported sink data store. Per un elenco degli archivi dati supportati come origini/sink dall'attività di copia, vedere la tabella relativa agli archivi dati supportati.For a list of data stores that are supported as sources/sinks by the copy activity, see the Supported data stores table.

In particolare, il connettore Xero supporta:Specifically, this Xero connector supports:

  • L'applicazione privata Xero, ma non l'applicazione pubblica.Xero private application but not public application.
  • Tutte le tabelle di Xero (endpoint dell'API), ad eccezione di "Reports".All Xero tables (API endpoints) except "Reports".

Azure Data Factory offre un driver predefinito per consentire la connettività, pertanto non è necessario installare manualmente alcun driver usando questo connettore.Azure Data Factory provides a built-in driver to enable connectivity, therefore you don't need to manually install any driver using this connector.

IntroduzioneGetting started

È possibile usare l'attività di copia con una pipeline tramite uno degli strumenti o degli SDK seguenti.You can use one of the following tools or SDKs to use the copy activity with a pipeline. Per istruzioni dettagliate, selezionare un collegamento:Select a link for step-by-step instructions:

Le sezioni seguenti riportano informazioni dettagliate sulle proprietà che vengono usate per definire entità di Data Factory specifiche per il connettore Xero.The following sections provide details about properties that are used to define Data Factory entities specific to Xero connector.

Proprietà del servizio collegatoLinked service properties

Per il servizio collegato Xero sono supportate le proprietà seguenti:The following properties are supported for Xero linked service:

ProprietàProperty DescrizioneDescription ObbligatoriaRequired
typetype La proprietà type deve essere impostata su: XeroThe type property must be set to: Xero YesYes
hosthost Endpoint del server Xero (api.xero.com).The endpoint of the Xero server (api.xero.com). YesYes
consumerKeyconsumerKey Chiave utente associata all'applicazione Xero.The consumer key associated with the Xero application. Contrassegnare questo campo come SecureString per archiviarlo in modo sicuro in Azure Data Factory oppure fare riferimento a un segreto archiviato in Azure Key Vault.Mark this field as a SecureString to store it securely in Data Factory, or reference a secret stored in Azure Key Vault. YesYes
privateKeyprivateKey Chiave privata dal file con estensione pem generato per l'applicazione Xero privata; vedere Create a public/private key pair (Creare una coppia di chiavi pubblica/privata).The private key from the .pem file that was generated for your Xero private application, see Create a public/private key pair. Si noti che la generazione di file privatekey.pem di 512 bit tramite openssl genrsa -out privatekey.pem 512; 1024 non è supportata.Note to generate the privatekey.pem with numbits of 512 using openssl genrsa -out privatekey.pem 512; 1024 is not supported. Includere tutto il testo dal file con estensione pem, incluse le terminazioni riga Unix (\n): vedere l'esempio seguente.Include all the text from the .pem file including the Unix line endings(\n), see sample below.

Contrassegnare questo campo come SecureString per archiviarlo in modo sicuro in Azure Data Factory oppure fare riferimento a un segreto archiviato in Azure Key Vault.Mark this field as a SecureString to store it securely in Data Factory, or reference a secret stored in Azure Key Vault.
Yes
useEncryptedEndpointsuseEncryptedEndpoints Specifica se gli endpoint dell'origine dati vengono crittografati tramite HTTPS.Specifies whether the data source endpoints are encrypted using HTTPS. Il valore predefinito è true.The default value is true. NoNo
useHostVerificationuseHostVerification Specifica se è necessario che il nome host nel certificato del server corrisponda al nome host del server per la connessione tramite SSL.Specifies whether the host name is required in the server's certificate to match the host name of the server when connecting over SSL. Il valore predefinito è true.The default value is true. NoNo
usePeerVerificationusePeerVerification Specifica se verificare l'identità del server durante la connessione tramite SSL.Specifies whether to verify the identity of the server when connecting over SSL. Il valore predefinito è true.The default value is true. NoNo

Esempio:Example:

{
    "name": "XeroLinkedService",
    "properties": {
        "type": "Xero",
        "typeProperties": {
            "host" : "api.xero.com",
            "consumerKey": {
                 "type": "SecureString",
                 "value": "<consumerKey>"
            },
            "privateKey": {
                 "type": "SecureString",
                 "value": "<privateKey>"
            }
        }
    }
}

Valore di chiave privata di esempio:Sample private key value:

Includere tutto il testo dal file con estensione pem, incluse le terminazioni riga Unix (\n).Include all the text from the .pem file including the Unix line endings(\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-----"

Proprietà del set di datiDataset properties

Per un elenco completo delle sezioni e delle proprietà disponibili per la definizione di set di dati, vedere l'articolo sui set di dati.For a full list of sections and properties available for defining datasets, see the datasets article. Questa sezione presenta un elenco delle proprietà supportate dal set di dati Xero.This section provides a list of properties supported by Xero dataset.

Per copiare dati da Xero, impostare la proprietà type del set di dati su XeroObject.To copy data from Xero, set the type property of the dataset to XeroObject. Sono supportate le proprietà seguenti:The following properties are supported:

ProprietàProperty DescrizioneDescription ObbligatoriaRequired
typetype La proprietà type del set di dati deve essere impostata su: XeroObjectThe type property of the dataset must be set to: XeroObject Yes
tableNametableName Nome della tabella.Name of the table. No (se nell'origine dell'attività è specificato "query")No (if "query" in activity source is specified)

EsempioExample

{
    "name": "XeroDataset",
    "properties": {
        "type": "XeroObject",
        "typeProperties": {},
        "schema": [],
        "linkedServiceName": {
            "referenceName": "<Xero linked service name>",
            "type": "LinkedServiceReference"
        }
    }
}

Proprietà dell'attività di copiaCopy activity properties

Per un elenco completo delle sezioni e delle proprietà disponibili per la definizione delle attività, vedere l'articolo sulle pipeline.For a full list of sections and properties available for defining activities, see the Pipelines article. Questa sezione presenta un elenco delle proprietà supportate dall'origine Xero.This section provides a list of properties supported by Xero source.

Xero come origineXero as source

Per copiare dati da Xero, impostare il tipo di origine nell'attività di copia su XeroSource.To copy data from Xero, set the source type in the copy activity to XeroSource. Nella sezione origine dell'attività di copia sono supportate le proprietà seguenti:The following properties are supported in the copy activity source section:

ProprietàProperty DescrizioneDescription ObbligatoriaRequired
typetype La proprietà type dell'origine di attività di copia deve essere impostata su: XeroSourceThe type property of the copy activity source must be set to: XeroSource Yes
queryquery Usare la query SQL personalizzata per leggere i dati.Use the custom SQL query to read data. Ad esempio: "SELECT * FROM Contacts".For example: "SELECT * FROM Contacts". No (se nel set di dati è specificato "tableName")No (if "tableName" in dataset is specified)

Esempio:Example:

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

Notare quanto segue quando si specifica la query Xero:Note the following when specifying the Xero query:

  • Le tabelle con elementi complessi verranno suddivise in più tabelle.Tables with complex items will be split to multiple tables. Le transazioni bancarie, ad esempio, hanno una struttura di dati complessa "LineItems" e i dati delle transazioni vengono quindi mappati alla tabella Bank_Transaction e a Bank_Transaction_Line_Items, con Bank_Transaction_ID come chiave esterna per collegarli tra loro.For example, Bank transactions has a complex data structure "LineItems", so data of bank transaction is mapped to table Bank_Transaction and Bank_Transaction_Line_Items, with Bank_Transaction_ID as foreign key to link them together.

  • I dati Xero sono disponibili tramite due schemi: Minimal (impostazione predefinita) e Complete.Xero data is available through two schemas: Minimal (default) and Complete. Lo schema Complete contiene tabelle di chiamate obbligatorie che richiedono dati aggiuntivi (ad esempio, la colonna ID) per poter eseguire la query desiderata.The Complete schema contains prerequisite call tables which require additional data (e.g. ID column) before making the desired query.

Le tabelle seguenti contengono le stesse informazioni degli schemi Minimal e Complete.The following tables have the same information in the Minimal and Complete schema. Per ridurre il numero di chiamate API, usare uno schema Minimal (impostazione predefinita).To reduce the number of API calls, use Minimal schema (default).

  • Bank_TransactionsBank_Transactions
  • Contact_GroupsContact_Groups
  • ContattiContacts
  • Contacts_Sales_Tracking_CategoriesContacts_Sales_Tracking_Categories
  • Contacts_PhonesContacts_Phones
  • Contacts_AddressesContacts_Addresses
  • Contacts_Purchases_Tracking_CategoriesContacts_Purchases_Tracking_Categories
  • Credit_NotesCredit_Notes
  • Credit_Notes_AllocationsCredit_Notes_Allocations
  • Expense_ClaimsExpense_Claims
  • Expense_Claim_Validation_ErrorsExpense_Claim_Validation_Errors
  • FattureInvoices
  • Invoices_Credit_NotesInvoices_Credit_Notes
  • Invoices_ PrepaymentsInvoices_ Prepayments
  • Invoices_OverpaymentsInvoices_Overpayments
  • Manual_JournalsManual_Journals
  • OverpaymentsOverpayments
  • Overpayments_AllocationsOverpayments_Allocations
  • PrepaymentsPrepayments
  • Prepayments_AllocationsPrepayments_Allocations
  • ReceiptsReceipts
  • Receipt_Validation_ErrorsReceipt_Validation_Errors
  • Tracking_CategoriesTracking_Categories

Nelle tabelle seguenti è possibile eseguire query solo con lo schema Complete:The following tables can only be queried with complete schema:

  • Complete.Bank_Transaction_Line_ItemsComplete.Bank_Transaction_Line_Items
  • Complete.Bank_Transaction_Line_Item_TrackingComplete.Bank_Transaction_Line_Item_Tracking
  • Complete.Contact_Group_ContactsComplete.Contact_Group_Contacts
  • Complete.Contacts_Contact_ PersonsComplete.Contacts_Contact_ Persons
  • Complete.Credit_Note_Line_ItemsComplete.Credit_Note_Line_Items
  • Complete.Credit_Notes_Line_Items_TrackingComplete.Credit_Notes_Line_Items_Tracking
  • Complete.Expense_Claim_ PaymentsComplete.Expense_Claim_ Payments
  • Complete.Expense_Claim_ReceiptsComplete.Expense_Claim_Receipts
  • Complete.Invoice_Line_ItemsComplete.Invoice_Line_Items
  • Complete.Invoices_Line_Items_TrackingComplete.Invoices_Line_Items_Tracking
  • Complete.Manual_Journal_LinesComplete.Manual_Journal_Lines
  • Complete.Manual_Journal_Line_TrackingComplete.Manual_Journal_Line_Tracking
  • Complete.Overpayment_Line_ItemsComplete.Overpayment_Line_Items
  • Complete.Overpayment_Line_Items_TrackingComplete.Overpayment_Line_Items_Tracking
  • Complete.Prepayment_Line_ItemsComplete.Prepayment_Line_Items
  • Complete.Prepayment_Line_Item_TrackingComplete.Prepayment_Line_Item_Tracking
  • Complete.Receipt_Line_ItemsComplete.Receipt_Line_Items
  • Complete.Receipt_Line_Item_TrackingComplete.Receipt_Line_Item_Tracking
  • Complete.Tracking_Category_OptionsComplete.Tracking_Category_Options

Proprietà attività di ricercaLookup activity properties

Per informazioni dettagliate sulle proprietà, controllare l' attività di ricerca.To learn details about the properties, check Lookup activity.

Passaggi successiviNext steps

Per un elenco di archivi dati supportati dall'attività di copia, vedere Archivi dati supportati.For a list of supported data stores by the copy activity, see supported data stores.