Kopírování a transformace dat v Dynamics 365 (Microsoft Dataverse) nebo Dynamics CRM pomocí Azure Data Factory nebo Azure Synapse Analytics

PLATÍ PRO: Azure Data Factory Azure Synapse Analytics

Tip

Vyzkoušejte si službu Data Factory v Microsoft Fabric, řešení pro analýzy typu all-in-one pro podniky. Microsoft Fabric zahrnuje všechno od přesunu dat až po datové vědy, analýzy v reálném čase, business intelligence a vytváření sestav. Přečtěte si, jak začít používat novou zkušební verzi zdarma.

Tento článek popisuje, jak pomocí aktivity kopírování v kanálech Azure Data Factory nebo Synapse kopírovat data z dynamics 365 (Microsoft Dataverse) nebo Dynamics CRM a pomocí toku dat transformovat data v Dynamics 365 (Microsoft Dataverse) nebo Dynamics CRM. Další informace najdete v úvodních článcích o službě Azure Data Factory a Azure Synapse Analytics .

Podporované funkce

Tento konektor je podporovaný pro následující aktivity:

Podporované funkce IR
aktivita Copy (zdroj/jímka) ① ②
Mapování toku dat (zdroj/jímka)
Aktivita Lookup ① ②

(1) Prostředí Azure Integration Runtime (2) Místní prostředí Integration Runtime

Seznam úložišť dat, která aktivita kopírování podporuje jako zdroje a jímky, najdete v tabulce Podporované úložiště dat.

Poznámka:

S platností od listopadu 2020 byl Common Data Service přejmenován na Microsoft Dataverse. Tento článek se aktualizuje tak, aby odrážel nejnovější terminologii.

Tento konektor Dynamics podporuje Dynamics verze 7 až 9 pro online i místní prostředí. Konkrétně:

  • Verze 7 se mapuje na Dynamics CRM 2015.
  • Verze 8 se mapuje na Dynamics CRM 2016 a na dřívější verzi Dynamics 365.
  • Verze 9 se mapuje na novější verzi Dynamics 365.

Projděte si následující tabulku podporovaných typů a konfigurací ověřování pro verze a produkty Dynamics.

Verze Dynamics Typy ověřování Ukázky propojených služeb
Dataverse

Dynamics 365 Online

Dynamics CRM Online
Instanční objekt Microsoft Entra

Office 365

Spravovaná identita přiřazená uživatelem
Dynamics Online a instanční objekt Microsoft Entra nebo ověřování Office 365
Místní Dynamics 365 s internetovým nasazením (IFD)

Místní Dynamics CRM 2016 s IFD

Místní Dynamics CRM 2015 s IFD
internetové nasazení (IFD) Místní Dynamics s ověřováním IFD a IFD

Poznámka:

Díky vyřazení regionální služby zjišťování služba upgradovala, aby při používání ověřování Office 365 využívala globální službu zjišťování.

Důležité

Pokud je váš tenant a uživatel nakonfigurovaný v Microsoft Entra ID pro podmíněný přístup nebo vícefaktorové ověřování, nebudete moct používat typ ověřování Office 365. V takových situacích musíte použít ověřování instančního objektu Microsoft Entra.

Pro Dynamics 365 jsou podporované následující typy aplikací:

  • Dynamics 365 for Sales
  • Dynamics 365 for Customer Service
  • Dynamics 365 for Field Service
  • Dynamics 365 for Project Service Automation
  • Dynamics 365 for Marketing

Tento konektor nepodporuje jiné typy aplikací, jako jsou Finance, Operations a Talent.

Tip

Ke kopírování dat z Dynamics 365 Finance and Operations můžete použít konektor Dynamics AX.

Tento konektor Dynamics je založený na nástrojích Dynamics XRM.

Požadavky

Pokud chcete tento konektor používat s ověřováním instančního objektu Microsoft Entra, musíte nastavit ověřování typu server-to-server (S2S) v Dataverse nebo Dynamics. Nejprve zaregistrujte uživatele aplikace (instanční objekt) v MICROSOFT Entra ID. Tady se dozvíte, jak to udělat. Během registrace aplikace budete muset vytvořit tohoto uživatele v Dataverse nebo Dynamics a udělit oprávnění. Tato oprávnění se dají udělit přímo nebo nepřímo přidáním uživatele aplikace do týmu, kterému byla udělena oprávnění v Dataverse nebo Dynamics. Další informace o tom, jak nastavit uživatele aplikace pro ověření pomocí služby Dataverse , najdete tady.

Začínáme

K provedení aktivita Copy s kanálem můžete použít jeden z následujících nástrojů nebo sad SDK:

Vytvoření propojené služby pro Dynamics 365 (Microsoft Dataverse) nebo Dynamics CRM pomocí uživatelského rozhraní

Pomocí následujícího postupu vytvořte propojenou službu s Dynamics 365 v uživatelském rozhraní webu Azure Portal.

  1. Přejděte na kartu Správa v pracovním prostoru Azure Data Factory nebo Synapse a vyberte Propojené služby a pak klikněte na Nový:

  2. Vyhledejte Dynamics nebo Dataverse a vyberte konektor Dynamics 365 (Microsoft Dataverse) nebo Dynamics CRM.

    Screenshot of the Dynamics 365 connector.

    Screenshot of the Dataverse connector.

  3. Nakonfigurujte podrobnosti o službě, otestujte připojení a vytvořte novou propojenou službu.

    Screenshot of linked service configuration for Dynamics 365.

podrobnosti o konfiguraci Připojení oru

Následující části obsahují podrobnosti o vlastnostech, které slouží k definování entit specifických pro Dynamics.

Vlastnosti propojené služby

Pro propojenou službu Dynamics jsou podporovány následující vlastnosti.

Dynamics 365 a Dynamics CRM online

Vlastnost Popis Povinní účastníci
type Vlastnost typu musí být nastavená na Dynamics, DynamicsCrm nebo CommonDataServiceForApps. Ano
deploymentType Typ nasazení instance Dynamics. Hodnota musí být online pro Dynamics Online. Ano
serviceUri Adresa URL služby vaší instance Dynamics, stejná jako v prohlížeči. Příkladem je "https://< organization-name.crm>[x].dynamics.com". Ano
authenticationType Typ ověřování pro připojení k serveru Dynamics. Platné hodnoty jsou AADServicePrincipal, Office365 a ManagedIdentity. Ano
servicePrincipalId ID klienta aplikace Microsoft Entra. Ano, pokud je ověřování AADServicePrincipal
servicePrincipalCredentialType Typ přihlašovacích údajů, který se má použít pro ověřování instančního objektu. Platné hodnoty jsou ServicePrincipalKey a ServicePrincipalCert.

Poznámka: Doporučuje se použít ServicePrincipalKey. Pro typ přihlašovacích údajů ServicePrincipalCert existuje známé omezení, kdy může služba narazit na přechodný problém, kdy se nepodařilo načíst tajný klíč z trezoru klíčů.
Ano, pokud je ověřování AADServicePrincipal
servicePrincipalCredential Přihlašovací údaje instančního objektu.

Pokud jako typ přihlašovacích údajů použijete "ServicePrincipalKey", může být řetězec, servicePrincipalCredential který služba při nasazení propojené služby šifruje. Nebo to může být odkaz na tajný klíč ve službě Azure Key Vault.

Pokud jako přihlašovací údaje použijete servicePrincipalCert, servicePrincipalCredential musí být odkazem na certifikát ve službě Azure Key Vault a ujistěte se, že typ obsahu certifikátu je PKCS #12.
Ano, pokud je ověřování AADServicePrincipal
username Uživatelské jméno pro připojení k Dynamics. Ano, pokud je ověřování "Office365".
Heslo Heslo pro uživatelský účet, který jste zadali jako uživatelské jméno. Označte toto pole pomocí řetězce SecureString, aby bylo možné ho bezpečně uložit, nebo odkazovat na tajný kód uložený ve službě Azure Key Vault. Ano, pokud je ověřování "Office365".
přihlašovací údaje Jako objekt přihlašovacích údajů zadejte spravovanou identitu přiřazenou uživatelem.

Vytvořte jednu nebo více spravovaných identit přiřazených uživatelem, přiřaďte je k objektu pro vytváření dat a vytvořte přihlašovací údaje pro každou spravovanou identitu přiřazenou uživatelem.
Ano, pokud je ověřování ManagedIdentity
connectVia Prostředí Integration Runtime , které se má použít pro připojení k úložišti dat. Pokud není zadána žádná hodnota, vlastnost používá výchozí prostředí Azure Integration Runtime. No

Poznámka:

Konektor Dynamics dříve použil volitelnou vlastnost organizationName k identifikaci vaší online instance Dynamics CRM nebo Dynamics 365. I když tato vlastnost stále funguje, doporučujeme místo toho zadat novou vlastnost serviceUri , abyste získali lepší výkon pro zjišťování instancí.

Příklad: Dynamics online s využitím instančního objektu Microsoft Entra a ověřování klíčů

{  
    "name": "DynamicsLinkedService",  
    "properties": {  
        "type": "Dynamics",  
        "typeProperties": {  
            "deploymentType": "Online",  
            "serviceUri": "https://<organization-name>.crm[x].dynamics.com",  
            "authenticationType": "AADServicePrincipal",  
            "servicePrincipalId": "<service principal id>",  
            "servicePrincipalCredentialType": "ServicePrincipalKey",  
            "servicePrincipalCredential": "<service principal key>"
        },  
        "connectVia": {  
            "referenceName": "<name of Integration Runtime>",  
            "type": "IntegrationRuntimeReference"  
        }  
    }  
}  

Příklad: Dynamics Online s využitím instančního objektu Microsoft Entra a ověřování certifikátů

{ 
    "name": "DynamicsLinkedService", 
    "properties": { 
        "type": "Dynamics", 
        "typeProperties": { 
            "deploymentType": "Online", 
            "serviceUri": "https://<organization-name>.crm[x].dynamics.com", 
            "authenticationType": "AADServicePrincipal", 
            "servicePrincipalId": "<service principal id>", 
            "servicePrincipalCredentialType": "ServicePrincipalCert", 
            "servicePrincipalCredential": { 
                "type": "AzureKeyVaultSecret", 
                "store": { 
                    "referenceName": "<AKV reference>", 
                    "type": "LinkedServiceReference" 
                }, 
                "secretName": "<certificate name in AKV>" 
            } 
        }, 
        "connectVia": { 
            "referenceName": "<name of Integration Runtime>", 
            "type": "IntegrationRuntimeReference" 
        } 
    } 
} 

Příklad: Dynamics Online s ověřováním Office 365

{
    "name": "DynamicsLinkedService",
    "properties": {
        "type": "Dynamics",
        "typeProperties": {
            "deploymentType": "Online",
            "serviceUri": "https://<organization-name>.crm[x].dynamics.com",
            "authenticationType": "Office365",
            "username": "test@contoso.onmicrosoft.com",
            "password": {
                "type": "SecureString",
                "value": "<password>"
            }
        },
        "connectVia": {
            "referenceName": "<name of Integration Runtime>",
            "type": "IntegrationRuntimeReference"
        }
    }
}

Příklad: Dynamics Online s využitím ověřování spravované identity přiřazené uživatelem

{
    "name": "DynamicsLinkedService",
    "properties": {
        "type": "Dynamics",
        "typeProperties": {
            "deploymentType": "Online",
            "serviceUri": "https://<organization-name>.crm[x].dynamics.com",
            "authenticationType": "ManagedIdentity",
            "credential": {
                "referenceName": "credential1",
                "type": "CredentialReference"
            }
        },
        "connectVia": {
            "referenceName": "<name of Integration Runtime>",
            "type": "IntegrationRuntimeReference"
        }
    }
}

Místní Dynamics 365 a Dynamics CRM s IFD

Mezi další vlastnosti, které se porovnávají s Dynamics Online, patří název hostitele a port.

Vlastnost Popis Povinní účastníci
type Vlastnost typu musí být nastavená na Dynamics, DynamicsCrm nebo CommonDataServiceForApps. Ano.
deploymentType Typ nasazení instance Dynamics. Hodnota musí být OnPremisesWithIfd pro místní Dynamics s IFD. Ano.
Hostname Název hostitele místního serveru Dynamics. Ano.
port Port místního serveru Dynamics. Ne. Výchozí hodnota je 443.
Názevorganizace Název organizace instance Dynamics. Ano.
authenticationType Typ ověřování pro připojení k serveru Dynamics. Zadejte "Ifd" pro místní Dynamics s IFD. Ano.
username Uživatelské jméno pro připojení k Dynamics. Ano.
Heslo Heslo pro uživatelský účet, který jste zadali pro uživatelské jméno. Toto pole můžete označit řetězcem SecureString a bezpečně ho uložit. Nebo můžete uložit heslo ve službě Key Vault a nechat aktivitu kopírování vytáhnout tam, když kopíruje data. Další informace najdete v úložišti přihlašovacích údajů ve službě Key Vault. Ano.
connectVia Prostředí Integration Runtime , které se má použít pro připojení k úložišti dat. Pokud není zadána žádná hodnota, vlastnost používá výchozí prostředí Azure Integration Runtime. No

Příklad: Místní Dynamics s IFD pomocí ověřování IFD

{
    "name": "DynamicsLinkedService",
    "properties": {
        "type": "Dynamics",
        "description": "Dynamics on-premises with IFD linked service using IFD authentication",
        "typeProperties": {
            "deploymentType": "OnPremisesWithIFD",
            "hostName": "contosodynamicsserver.contoso.com",
            "port": 443,
            "organizationName": "admsDynamicsTest",
            "authenticationType": "Ifd",
            "username": "test@contoso.onmicrosoft.com",
            "password": {
                "type": "SecureString",
                "value": "<password>"
            }
        },
        "connectVia": {
            "referenceName": "<name of Integration Runtime>",
            "type": "IntegrationRuntimeReference"
        }
    }
}

Vlastnosti datové sady

Úplný seznam oddílů a vlastností dostupných pro definování datových sad najdete v článku Datové sady . Tato část obsahuje seznam vlastností podporovaných datovou sadou Dynamics.

Pro kopírování dat z a do Dynamics jsou podporovány následující vlastnosti:

Vlastnost Popis Povinní účastníci
type Vlastnost typu datové sady musí být nastavená na DynamicsEntity, DynamicsCrmEntity nebo CommonDataServiceForAppsEntity. Ano
entityName Logický název entity, která se má načíst. Ne pro zdroj, pokud je zdroj aktivity zadán jako "dotaz" a ano pro jímku

Příklad

{
    "name": "DynamicsDataset",
    "properties": {
        "type": "DynamicsEntity",
        "schema": [],
        "typeProperties": {
            "entityName": "account"
        },
        "linkedServiceName": {
            "referenceName": "<Dynamics linked service name>",
            "type": "linkedservicereference"
        }
    }
}

Vlastnosti aktivity kopírování

Úplný seznam oddílů a vlastností dostupných pro definování aktivit najdete v článku Pipelines . Tato část obsahuje seznam vlastností podporovaných typy zdrojů a jímek Dynamics.

Dynamics jako typ zdroje

Pokud chcete kopírovat data z Dynamics, oddíl zdroje aktivity kopírování podporuje následující vlastnosti:

Vlastnost Popis Povinní účastníci
type Vlastnost typu zdroje aktivity kopírování musí být nastavena na DynamicsSource, DynamicsCrmSource nebo CommonDataServiceForAppsSource. Ano
query FetchXML je proprietární dotazovací jazyk, který se používá v Dynamics Online a místně. Viz následující příklad. Další informace najdete v tématu Vytváření dotazů pomocí FetchXML. Ne, pokud entityName je v datové sadě zadána

Poznámka:

Sloupec PK se vždy zkopíruje i v případě, že projekce sloupce, kterou nakonfigurujete v dotazu FetchXML, neobsahuje.

Důležité

  • Při kopírování dat z Dynamics je explicitní mapování sloupců z Dynamics do jímky volitelné. Důrazně ale doporučujeme mapování zajistit deterministický výsledek kopírování.
  • Když služba naimportuje schéma v uživatelském rozhraní pro vytváření, odvodí schéma. Provede to tak, že vzorkováním horních řádků z výsledku dotazu Dynamics inicializujete seznam zdrojových sloupců. V takovém případě nejsou vynechány sloupce bez hodnot v horních řádcích. Stejné chování platí také pro náhled dat a spouštění kopírování, pokud neexistuje explicitní mapování. Do mapování můžete zkontrolovat a přidat další sloupce, které jsou dodrženy během modulu runtime kopírování.

Příklad

"activities":[
    {
        "name": "CopyFromDynamics",
        "type": "Copy",
        "inputs": [
            {
                "referenceName": "<Dynamics input dataset>",
                "type": "DatasetReference"
            }
        ],
        "outputs": [
            {
                "referenceName": "<output dataset>",
                "type": "DatasetReference"
            }
        ],
        "typeProperties": {
            "source": {
                "type": "DynamicsSource",
                "query": "<FetchXML Query>"
            },
            "sink": {
                "type": "<sink type>"
            }
        }
    }
]

Ukázkový dotaz FetchXML

<fetch>
  <entity name="account">
    <attribute name="accountid" />
    <attribute name="name" />
    <attribute name="marketingonly" />
    <attribute name="modifiedon" />
    <order attribute="modifiedon" descending="false" />
    <filter type="and">
      <condition attribute ="modifiedon" operator="between">
        <value>2017-03-10 18:40:00z</value>
        <value>2017-03-12 20:40:00z</value>
      </condition>
    </filter>
  </entity>
</fetch>

Dynamics jako typ jímky

Pokud chcete kopírovat data do Dynamics, oddíl jímky aktivity kopírování podporuje následující vlastnosti:

Vlastnost Popis Povinní účastníci
type Vlastnost typu jímky aktivity kopírování musí být nastavena na DynamicsSink, DynamicsCrmSink nebo CommonDataServiceForAppsSink. Ano.
writeBehavior Chování zápisu operace. Hodnota musí být Upsert. Ano
alternateKeyName Alternativní název klíče definovaný ve vaší entitě pro upsert. Ne.
writeBatchSize Počet dat zapsaných do Dynamics v každé dávce. Ne. Výchozí hodnota je 10.
ignoreNullValues Zda se mají ignorovat hodnoty null ze vstupních dat kromě polí klíčů během operace zápisu.

Platné hodnoty jsou TRUE a FALSE:
  • PRAVDA: Při operaci upsertu nebo aktualizace ponechte data v cílovém objektu beze změny. Při operaci vložení vložte definovanou výchozí hodnotu.
  • NEPRAVDA: Aktualizujte data v cílovém objektu na hodnotu null, když provedete operaci upsertu nebo aktualizace. Pokud provedete operaci vložení, vložte hodnotu null.
Ne. Výchozí hodnota je FALSE.
maxConcurrent Připojení ions Horní limit souběžných připojení vytvořených k úložišti dat během spuštění aktivity. Zadejte hodnotu pouze v případech, kdy chcete omezit souběžná připojení. No

Poznámka:

Výchozí hodnota pro hodnotu writeBatchSize jímky i paralelněCopies aktivity kopírování pro jímku Dynamics je 10. Proto se do Dynamics ve výchozím nastavení odesílá 100 záznamů současně.

Pro Dynamics 365 online platí limit 52 souběžných dávkových volání na organizaci. Pokud je tento limit překročen, vyvolá se výjimka Zaneprázdněný serverem před spuštěním prvního požadavku. Zachovejte writeBatchSize na 10 nebo méně, abyste se vyhnuli takovému omezování souběžných volání.

Optimální kombinace writeBatchSize a parallelCopies závisí na schématu entity. Prvky schématu zahrnují počet sloupců, velikost řádků a počet modulů plug-in, pracovních postupů nebo aktivit pracovních postupů připojených k těmto voláním. Výchozí nastavení writeBatchSize (10) × parallelCopies (10) je doporučení podle služby Dynamics. Tato hodnota funguje pro většinu entit Dynamics, i když nemusí poskytovat nejlepší výkon. Výkon můžete vyladit úpravou kombinace v nastavení aktivity kopírování.

Příklad

"activities":[
    {
        "name": "CopyToDynamics",
        "type": "Copy",
        "inputs": [
            {
                "referenceName": "<input dataset>",
                "type": "DatasetReference"
            }
        ],
        "outputs": [
            {
                "referenceName": "<Dynamics output dataset>",
                "type": "DatasetReference"
            }
        ],
        "typeProperties": {
            "source": {
                "type": "<source type>"
            },
            "sink": {
                "type": "DynamicsSink",
                "writeBehavior": "Upsert",
                "writeBatchSize": 10,
                "ignoreNullValues": true
            }
        }
    }
]

Načítání dat ze zobrazení

Pokud chcete načíst data ze zobrazení Dynamics, musíte získat uložený dotaz zobrazení a pomocí dotazu získat data.

Existují dvě entity, které ukládají různé typy zobrazení: "uložený dotaz" ukládá zobrazení systému a dotaz uživatele ukládá zobrazení uživatele. Chcete-li získat informace o zobrazeních, projděte si následující dotaz FetchXML a nahraďte "TARGETENTITY" za savedquery nebo userquery. Každý typ entity má k dispozici více dostupných atributů, které můžete přidat do dotazu podle potřeby. Přečtěte si další informace o entitě savedquery a entitě userquery.

<fetch top="5000" >
  <entity name="<TARGETENTITY>">
    <attribute name="name" />
    <attribute name="fetchxml" />
    <attribute name="returnedtypecode" />
    <attribute name="querytype" />
  </entity>
</fetch>

Můžete také přidat filtry pro filtrování zobrazení. Přidejte například následující filtr, abyste získali zobrazení s názvem Moje aktivní účty v entitě účtu.

<filter type="and" >
    <condition attribute="returnedtypecode" operator="eq" value="1" />
    <condition attribute="name" operator="eq" value="My Active Accounts" />
</filter>

Mapování datových typů pro Dynamics

Při kopírování dat z Dynamics ukazuje následující tabulka mapování z datových typů Dynamics na dočasné datové typy v rámci služby. Informace o tom, jak se aktivita kopírování mapuje na zdrojové schéma a datový typ mapuje na jímku, najdete v tématu Mapování schématu a datového typu.

Pomocí následující tabulky mapování nakonfigurujte odpovídající dočasný datový typ ve struktuře datové sady, která je založená na vašem zdrojovém datovém typu Dynamics:

Datový typ Dynamics Dočasný datový typ služby Podporováno jako zdroj Podporováno jako jímka
AttributeTypeCode.BigInt Dlouhé celé číslo
AttributeTypeCode.Boolean Boolean
AttributeType.Customer Identifikátor GUID – (viz pokyny)
AttributeType.DateTime Datum a čas
AttributeType.Decimal Desetinné číslo
AttributeType.Double Hodnota s dvojitou přesností
AttributeType.EntityName String
AttributeType.Integer Int32
AttributeType.Lookup Identifikátor GUID – (viz pokyny)
AttributeType.ManagedProperty Boolean
AttributeType.Memo String
AttributeType.Money Desetinné číslo
AttributeType.Owner Identifikátor GUID – (viz pokyny)
AttributeType.Picklist Int32
AttributeType.Uniqueidentifier Identifikátor GUID
AttributeType.String String
AttributeType.State Int32
AttributeType.Status Int32

Poznámka:

Datové typy Dynamics AttributeType.CalendarRules, AttributeType.MultiSelectPicklist a AttributeType.PartyList nejsou podporované.

Zápis dat do vyhledávacího pole

Pokud chcete zapisovat data do vyhledávacího pole s více cíli, jako je zákazník a vlastník, postupujte podle těchto pokynů a příkladu:

  1. Nastavení zdroje obsahuje hodnotu pole i odpovídající název cílové entity.

    • Pokud se všechny záznamy mapuje na stejnou cílovou entitu, zajistěte jednu z následujících podmínek:
      • Zdrojová data mají sloupec, který ukládá název cílové entity.
      • Do zdroje aktivity kopírování jste přidali další sloupec, který definuje cílovou entitu.
    • Pokud se různé záznamy mapují na různé cílové entity, ujistěte se, že zdrojová data mají sloupec, do kterého se uloží odpovídající název cílové entity.
  2. Namapujte sloupce odkazu na hodnoty i entity ze zdroje na jímku. Sloupec odkazu na entitu musí být namapován na virtuální sloupec se speciálním vzorem {lookup_field_name}@EntityReferencepojmenování . Sloupec ve skutečnosti v Dynamics neexistuje. Slouží k označení tohoto sloupce jako sloupec metadat daného vyhledávacího pole s více cíleními.

Předpokládejme například, že zdroj má tyto dva sloupce:

  • Sloupec CustomerField typu GUID, což je hodnota primárního klíče cílové entity v Dynamics.
  • Cílový sloupec typu String, což je logický název cílové entity.

Také předpokládejme, že chcete tato data zkopírovat do pole entity Dynamics v poli entity Dynamics CustomerField typu Zákazník.

V mapování sloupců aktivity kopírování namapujte tyto dva sloupce následujícím způsobem:

  • CustomerField to CustomerField. Toto mapování je normální mapování polí.
  • Cíl na CustomerField@EntityReference. Sloupec jímky je virtuální sloupec představující odkaz na entitu. Zadejte takové názvy polí do mapování, protože se nezobrazí importem schémat.

Dynamics lookup-field column mapping

Pokud se všechny zdrojové záznamy mapuje na stejnou cílovou entitu a zdrojová data neobsahují název cílové entity, tady je zástupce: ve zdroji aktivity kopírování přidejte další sloupec. Nový sloupec pojmenujte pomocí vzoru {lookup_field_name}@EntityReference, nastavte hodnotu na název cílové entity a pak pokračujte v mapování sloupců obvyklým způsobem. Pokud jsou názvy sloupců zdroje a jímky stejné, můžete také přeskočit explicitní mapování sloupců, protože aktivita kopírování ve výchozím nastavení mapuje sloupce podle názvu.

Dynamics lookup-field adding an entity-reference column

Zápis dat do vyhledávacího pole prostřednictvím alternativních klíčů

Pokud chcete zapisovat data do vyhledávacího pole pomocí alternativních klíčových sloupců, postupujte podle těchto pokynů a příkladu:

  1. Ujistěte se, že zdroj obsahuje všechny vyhledávací klíčové sloupce.

  2. Alternativní klíčové sloupce musí být namapovány na sloupec pomocí speciálního vzoru {lookup_field_name}@{alternate_key_column_name}pojmenování . Sloupec v Dynamics neexistuje. Slouží k označení, že se tento sloupec používá k vyhledání záznamu v cílové entitě.

  3. Přejděte na kartu Mapování v transformaci toků dat mapování jímky. Vyberte alternativní klíč jako výstupní sloupce pod vyhledávacím polem. Hodnota za označuje klíčové sloupce tohoto alternativního klíče.

    Screenshot shows selecting alternate key columns.

  4. Po výběru se alternativní klíčové sloupce automaticky zobrazí níže.

    Screenshot shows mapping columns to lookup fields via alternate keys step 1.

  5. Namapujte vstupní sloupce vlevo s výstupními sloupci.

    Screenshot shows mapping columns to lookup fields via alternate keys step 2.

Poznámka:

V současné době je to podporováno pouze v případě, že v transformaci mapování toků dat používáte vložený režim.

Mapování vlastností toku dat

Při transformaci dat v mapování toku dat můžete číst a zapisovat do tabulek v Dynamics. Další informace najdete v tématu transformace zdroje a transformace jímky v mapování toků dat. Jako typ zdroje a jímky můžete použít datovou sadu Dynamics nebo vloženou datovou sadu .

Transformace zdroje

V následující tabulce jsou uvedeny vlastnosti podporované Dynamics. Tyto vlastnosti můžete upravit na kartě Možnosti zdroje.

Název Popis Povinní účastníci Povolené hodnoty Vlastnost skriptu toku dat
Název entity Logický název entity, která se má načíst. Ano při použití vložené datové sady - (pouze pro vloženou datovou sadu)
entity
Dotaz FetchXML je proprietární dotazovací jazyk, který se používá v Dynamics Online a místně. Viz následující příklad. Další informace najdete v tématu Vytváření dotazů pomocí FetchXML. No String query

Poznámka:

Pokud jako typ vstupu vyberete Dotaz , typ sloupce z tabulek nelze načíst. Ve výchozím nastavení se bude považovat za řetězec.

Příklad zdrojového skriptu Dynamics

Pokud jako typ zdroje použijete datovou sadu Dynamics, přidružený skript toku dat:

source(allowSchemaDrift: true,
	validateSchema: false,
	query: '<fetch mapping='logical' count='3 paging-cookie=''><entity name='new_dataflow_crud_test'><attribute name='new_name'/><attribute name='new_releasedate'/></entity></fetch>') ~> DynamicsSource

Pokud používáte vloženou datovou sadu, přidružený skript toku dat je:

source(allowSchemaDrift: true,
	validateSchema: false,
	store: 'dynamics',
	format: 'dynamicsformat',
	entity: 'Entity1',
	query: '<fetch mapping='logical' count='3 paging-cookie=''><entity name='new_dataflow_crud_test'><attribute name='new_name'/><attribute name='new_releasedate'/></entity></fetch>') ~> DynamicsSource

Transformace jímky

Následující tabulka uvádí vlastnosti podporované jímkou Dynamics. Tyto vlastnosti můžete upravit na kartě Možnosti jímky.

Název Popis Povinní účastníci Povolené hodnoty Vlastnost skriptu toku dat
Alternativní název klíče Alternativní název klíče definovaný ve vaší entitě pro aktualizaci, upsert nebo odstranění. No - alternateKeyName
Metoda aktualizace Určete, jaké operace jsou povolené v cíli databáze. Výchozí hodnota je povolit pouze vkládání.
Pokud chcete aktualizovat, upsertovat nebo odstranit řádky, je k označení řádků pro tyto akce potřeba transformace alter řádku.
Ano true nebo false vložitelné
Aktualizovatelné
upsertable
s možností odsud
Název entity Logický název entity, která se má zapisovat. Ano při použití vložené datové sady - (pouze pro vloženou datovou sadu)
entity

Ukázkový skript jímky Dynamics

Pokud jako typ jímky použijete datovou sadu Dynamics, přidružený skript toku dat:

IncomingStream sink(allowSchemaDrift: true,
    validateSchema: false,
    deletable:true,
    insertable:true,
    updateable:true,
    upsertable:true,
    skipDuplicateMapInputs: true,
    skipDuplicateMapOutputs: true) ~> DynamicsSink

Pokud používáte vloženou datovou sadu, přidružený skript toku dat je:

IncomingStream sink(allowSchemaDrift: true,
    validateSchema: false,
    store: 'dynamics',
    format: 'dynamicsformat',
    entity: 'Entity1',
    deletable: true,
    insertable: true,
    updateable: true,
    upsertable: true,
    skipDuplicateMapInputs: true,
    skipDuplicateMapOutputs: true) ~> DynamicsSink

Vlastnosti aktivity vyhledávání

Podrobnosti o vlastnostech najdete v tématu Aktivita vyhledávání.

Seznam podporovaných dat ukládá aktivitu kopírování jako zdroje a jímky, viz Podporované úložiště dat.