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) | (1) (2) |
Mapování toku dat (zdroj/jímka) | (1) |
Aktivita Lookup | (1) (2) |
(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:
- Nástroj pro kopírování dat
- Azure Portal
- Sada .NET SDK
- Sada Python SDK
- Azure PowerShell
- Rozhraní REST API
- Šablona Azure Resource Manageru
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.
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ý:
Vyhledejte Dynamics nebo Dataverse a vyberte konektor Dynamics 365 (Microsoft Dataverse) nebo Dynamics CRM.
Nakonfigurujte podrobnosti o službě, otestujte připojení a vytvořte novou propojenou službu.
Podrobnosti konfigurace konektoru
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. |
organizationName | Název organizace instance Dynamics. | Ano |
authenticationType | Typ ověřování pro připojení k serveru Dynamics. Zadejte ActiveDirectoryAuthentication pro místní Dynamics s IFD. | Ano |
domain | Doména služby Active Directory, která ověří přihlašovací údaje uživatele. | 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 |
Poznámka:
Vzhledem k ukončení platnosti typu ověřování Ifd do 31. srpna 2024 upgradujte na typ ověřování služby Active Directory před datem, pokud ho aktuálně používáte.
Příklad: Místní Dynamics s IFD s ověřováním Active Directory
{
"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": "ActiveDirectoryAuthentication",
"domain": "< Active Directory domain >",
"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:
|
Ne. Výchozí hodnota je FALSE. |
maxConcurrentConnections | 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 | Logická hodnota | ✓ | ✓ |
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 | Logická hodnota | ✓ | |
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:
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.
- Pokud se všechny záznamy mapuje na stejnou cílovou entitu, zajistěte jednu z následujících podmínek:
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}@EntityReference
pojmenová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.
Nastavení pole Vlastník
Při nastavování pole Vlastník v Dynamics 365 (Microsoft Dataverse) nebo Dynamics CRM je důležité zadat platný odkaz. Platné možnosti pro:@EntityReference
systemuser
: To se týká jednotlivého uživatele v systému.team
: Týká se to týmu uživatelů v organizaci.
Ujistěte se, že zadaná hodnota odpovídá jedné z těchto možností, abyste se vyhnuli chybám během transformace dat.
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.
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.
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:
Ujistěte se, že zdroj obsahuje všechny vyhledávací klíčové sloupce.
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ě.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.
Po výběru se alternativní klíčové sloupce automaticky zobrazí níže.
Namapujte vstupní sloupce vlevo s výstupními sloupci.
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í.
Související obsah
Seznam podporovaných dat ukládá aktivitu kopírování jako zdroje a jímky, viz Podporované úložiště dat.