Azure Data Factory veya Azure Synapse Analytics kullanarak Dynamics 365 (Microsoft Dataverse) veya Dynamics CRM'de verileri kopyalama ve dönüştürme

UYGULANANLAR: Azure Data Factory Azure Synapse Analytics

Bahşiş

Kuruluşlar için hepsi bir arada analiz çözümü olan Microsoft Fabric'te Data Factory'yi deneyin. Microsoft Fabric , veri taşımadan veri bilimine, gerçek zamanlı analize, iş zekasına ve raporlamaya kadar her şeyi kapsar. Yeni bir deneme sürümünü ücretsiz olarak başlatmayı öğrenin!

Bu makalede, Verileri Dynamics 365 (Microsoft Dataverse) veya Dynamics CRM'den veya Dynamics CRM'den kopyalamak için Azure Data Factory veya Synapse işlem hatlarında kopyalama etkinliğinin nasıl kullanılacağı ve Dynamics 365 (Microsoft Dataverse) veya Dynamics CRM'deki verileri dönüştürmek için veri akışının nasıl kullanılacağı özetlenmiştir. Daha fazla bilgi edinmek için Azure Data Factory ve Azure Synapse Analytics giriş makalelerini okuyun.

Desteklenen özellikler

Bu bağlayıcı aşağıdaki etkinlikler için desteklenir:

Desteklenen özellikler IR
Kopyalama etkinliği (kaynak/havuz) ① ②
Eşleme veri akışı (kaynak/havuz)
Arama etkinliği ① ②

(1) Azure tümleştirme çalışma zamanı (2) Şirket içinde barındırılan tümleştirme çalışma zamanı

Kopyalama etkinliğinin kaynak ve havuz olarak desteklediği veri depolarının listesi için Desteklenen veri depoları tablosuna bakın.

Dekont

Kasım 2020'den itibaren geçerli olacak şekilde, Common Data Service Microsoft Dataverse olarak yeniden adlandırıldı. Bu makale en son terminolojiyi yansıtacak şekilde güncelleştirildi.

Bu Dynamics bağlayıcısı hem çevrimiçi hem de şirket içi için Dynamics 7 ile 9 arası sürümleri destekler. Daha açık belirtmek gerekirse:

  • Sürüm 7, Dynamics CRM 2015 ile eşler.
  • Sürüm 8, Dynamics CRM 2016 ve Dynamics 365'in ilk sürümüyle eşler.
  • Sürüm 9, Dynamics 365'in sonraki sürümüyle eşler.

Aşağıdaki Dynamics sürümleri ve ürünleri için desteklenen kimlik doğrulama türleri ve yapılandırmaları tablosuna bakın.

Dynamics sürümleri Kimlik doğrulama türleri Bağlı hizmet örnekleri
Dataverse

Dynamics 365 çevrimiçi

Dynamics CRM Online
Microsoft Entra hizmet sorumlusu

Office 365

Kullanıcı tarafından atanan yönetilen kimlik
Dynamics online ve Microsoft Entra hizmet sorumlusu veya Office 365 kimlik doğrulaması
İnternet'e yönelik dağıtım (IFD) ile şirket içi Dynamics 365

IFD ile şirket içi Dynamics CRM 2016

IFD ile şirket içi Dynamics CRM 2015
IFD IFD ve IFD kimlik doğrulaması ile şirket içi Dynamics

Dekont

Bölgesel Bulma Hizmeti'nin kullanımdan kaldırılmasıyla hizmet, Office 365 Kimlik Doğrulaması'nı kullanırken genel Bulma Hizmeti'nden yararlanacak şekilde yükseltildi.

Önemli

Kiracınız ve kullanıcınız koşullu erişim için Microsoft Entra Id'de yapılandırılmışsa ve/veya Multi-Factor Authentication gerekiyorsa, Office 365 Kimlik Doğrulama türünü kullanamazsınız. Bu gibi durumlarda Microsoft Entra hizmet sorumlusu kimlik doğrulamasını kullanmanız gerekir.

Özellikle Dynamics 365 için aşağıdaki uygulama türleri desteklenir:

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

Bu bağlayıcı Finance, Operations ve Talent gibi diğer uygulama türlerini desteklemez.

Bahşiş

Dynamics 365 Finance and Operations'tan veri kopyalamak için Dynamics AX bağlayıcısını kullanabilirsiniz.

Bu Dynamics bağlayıcısı, Dynamics XRM araçlarının üzerine kurulmuştur.

Önkoşullar

Bu bağlayıcıyı Microsoft Entra hizmet sorumlusu kimlik doğrulamasıyla kullanmak için Dataverse veya Dynamics'te sunucudan sunucuya (S2S) kimlik doğrulamasını ayarlamanız gerekir. İlk olarak uygulama kullanıcısını (Hizmet Sorumlusu) Microsoft Entra Id'ye kaydedin. Bunun nasıl yapıldığını burada bulabilirsiniz. Uygulama kaydı sırasında bu kullanıcıyı Dataverse veya Dynamics'te oluşturmanız ve izinler vermeniz gerekir. Bu izinler, uygulama kullanıcısını Dataverse veya Dynamics'te izin verilen bir ekime ekleyerek doğrudan veya dolaylı olarak verilebilir. Dataverse ile kimlik doğrulaması yapmak için bir uygulama kullanıcısını ayarlama hakkında daha fazla bilgiyi burada bulabilirsiniz.

Başlarken

İşlem hattıyla Kopyalama etkinliği gerçekleştirmek için aşağıdaki araçlardan veya SDK'lardan birini kullanabilirsiniz:

Kullanıcı arabirimini kullanarak Dynamics 365 (Microsoft Dataverse) veya Dynamics CRM'e bağlı hizmet oluşturma

Azure portalı kullanıcı arabiriminde Dynamics 365'e bağlı bir hizmet oluşturmak için aşağıdaki adımları kullanın.

  1. Azure Data Factory veya Synapse çalışma alanınızda Yönet sekmesine göz atın ve Bağlı Hizmetler'i seçin, ardından Yeni'ye tıklayın:

  2. Dynamics veya Dataverse'i arayın ve Dynamics 365 (Microsoft Dataverse) veya Dynamics CRM bağlayıcısını seçin.

    Screenshot of the Dynamics 365 connector.

    Screenshot of the Dataverse connector.

  3. Hizmet ayrıntılarını yapılandırın, bağlantıyı test edin ve yeni bağlı hizmeti oluşturun.

    Screenshot of linked service configuration for Dynamics 365.

Bağlan veya yapılandırma ayrıntıları

Aşağıdaki bölümlerde Dynamics'e özgü varlıkları tanımlamak için kullanılan özelliklerle ilgili ayrıntılar sağlanır.

Bağlı hizmet özellikleri

Dynamics bağlı hizmeti için aşağıdaki özellikler desteklenir.

Dynamics 365 ve Dynamics CRM online

Özellik Açıklama Gerekli
type Tür özelliği "Dynamics", "DynamicsCrm" veya "CommonDataServiceForApps" olarak ayarlanmalıdır. Evet
Deploymenttype Dynamics örneğinin dağıtım türü. Değerin Dynamics online için "Çevrimiçi" olması gerekir. Evet
Serviceuri Tarayıcıdan erişdiğiniz Dynamics örneğinizin hizmet URL'si. "https://< organization-name.crm>[x].dynamics.com" örnektir. Evet
authenticationType Bir Dynamics sunucusuna bağlanmak için kimlik doğrulama türü. Geçerli değerler "AADServicePrincipal", "Office365" ve "ManagedIdentity" değerleridir. Evet
servicePrincipalId Microsoft Entra uygulamasının istemci kimliği. Kimlik doğrulaması "AADServicePrincipal" olduğunda evet
servicePrincipalCredentialType Hizmet sorumlusu kimlik doğrulaması için kullanılacak kimlik bilgisi türü. Geçerli değerler "ServicePrincipalKey" ve "ServicePrincipalCert" değerleridir.

Not: ServicePrincipalKey kullanılması önerilir. ServicePrincipalCert kimlik bilgisi türü için, hizmetin anahtar kasasından gizli dizi alınamamasıyla ilgili geçici bir sorunla karşılaşabileceği bilinen bir sınırlama vardır.
Kimlik doğrulaması "AADServicePrincipal" olduğunda evet
servicePrincipalCredential Hizmet sorumlusu kimlik bilgileri.

Kimlik bilgisi türü olarak "ServicePrincipalKey" kullandığınızda, servicePrincipalCredential bağlı hizmet dağıtımında hizmetin şifrelediği bir dize olabilir. Veya Azure Key Vault'taki bir gizli diziye başvuru olabilir.

Kimlik bilgisi olarak "ServicePrincipalCert" kullandığınızda, servicePrincipalCredential Azure Key Vault'taki bir sertifikaya başvuru olmalıdır ve sertifika içerik türünün PKCS #12 olduğundan emin olun.
Kimlik doğrulaması "AADServicePrincipal" olduğunda evet
username Dynamics'e bağlanmak için kullanılan kullanıcı adı. Kimlik doğrulaması "Office365" olduğunda evet
password Kullanıcı adı olarak belirttiğiniz kullanıcı hesabının parolası. Güvenli bir şekilde depolamak için bu alanı "SecureString" ile işaretleyin veya Azure Key Vault'ta depolanan bir gizli diziye başvurun. Kimlik doğrulaması "Office365" olduğunda evet
kimlik bilgileri Kimlik bilgisi nesnesi olarak kullanıcı tarafından atanan yönetilen kimliği belirtin.

Kullanıcı tarafından atanan bir veya birden çok yönetilen kimlik oluşturun, bunları veri fabrikanıza atayın ve kullanıcı tarafından atanan her yönetilen kimlik için kimlik bilgileri oluşturun.
Kimlik doğrulaması "ManagedIdentity" olduğunda evet
connectVia Veri deposuna bağlanmak için kullanılacak tümleştirme çalışma zamanı . Değer belirtilmezse, özelliği varsayılan Azure tümleştirme çalışma zamanını kullanır. No

Dekont

Dynamics bağlayıcısı daha önce Dynamics CRM veya Dynamics 365 çevrimiçi örneğinizi tanımlamak için isteğe bağlı organizationName özelliğini kullanıyordu. Bu özellik çalışmaya devam ederken, örnek bulma için daha iyi performans elde etmek için bunun yerine yeni serviceUri özelliğini belirtmenizi öneririz.

Örnek: Microsoft Entra hizmet sorumlusu ve anahtar kimlik doğrulaması kullanarak Dynamics online

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

Örnek: Microsoft Entra hizmet sorumlusu ve sertifika kimlik doğrulaması kullanarak Dynamics online

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

Örnek: Office 365 kimlik doğrulaması kullanarak Dynamics online

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

Örnek: Kullanıcı tarafından atanan yönetilen kimlik kimlik doğrulamayı kullanarak Dynamics online

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

DYNAMICS 365 ve DYNAMICS CRM IFD ile şirket içi

Dynamics online ile karşılaştıran ek özellikler hostName ve bağlantı noktasıdır.

Özellik Açıklama Gerekli
type Tür özelliği "Dynamics", "DynamicsCrm" veya "CommonDataServiceForApps" olarak ayarlanmalıdır. Evet.
Deploymenttype Dynamics örneğinin dağıtım türü. Değer, IFD ile şirket içi Dynamics için "OnPremisesWithIfd" olmalıdır. Evet.
Hostname Şirket içi Dynamics sunucusunun ana bilgisayar adı. Evet.
port Şirket içi Dynamics sunucusunun bağlantı noktası. Hayır. Varsayılan değer 443'dür.
organizationName Dynamics örneğinin kuruluş adı. Evet.
authenticationType Dynamics sunucusuna bağlanmak için kimlik doğrulama türü. IFD ile şirket içi Dynamics için "Ifd" değerini belirtin. Evet.
username Dynamics'e bağlanmak için kullanılan kullanıcı adı. Evet.
password Kullanıcı adı için belirttiğiniz kullanıcı hesabının parolası. Güvenli bir şekilde depolamak için bu alanı "SecureString" ile işaretleyebilirsiniz. İsterseniz Key Vault'ta bir parola depolayabilir ve veri kopyalama işlemi sırasında kopyalama etkinliğinin oradan çekmesine izin vekleyebilirsiniz. Key Vault'ta kimlik bilgilerini depolama bölümünden daha fazla bilgi edinin. Evet.
connectVia Veri deposuna bağlanmak için kullanılacak tümleştirme çalışma zamanı . Değer belirtilmezse, özelliği varsayılan Azure tümleştirme çalışma zamanını kullanır. No

Örnek: IFD kimlik doğrulaması kullanan IFD ile şirket içi Dynamics

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

Veri kümesi özellikleri

Veri kümelerini tanımlamak için kullanılabilen bölümlerin ve özelliklerin tam listesi için Veri kümeleri makalesine bakın. Bu bölümde Dynamics veri kümesi tarafından desteklenen özelliklerin listesi sağlanır.

Dynamics'ten ve Dynamics'e veri kopyalamak için aşağıdaki özellikler desteklenir:

Özellik Açıklama Gerekli
type Veri kümesinin tür özelliği "DynamicsEntity", "DynamicsCrmEntity" veya "CommonDataServiceForAppsEntity" olarak ayarlanmalıdır. Evet
Varlıkadı Alınacak varlığın mantıksal adı. Etkinlik kaynağı "sorgu" olarak belirtilirse kaynak için hayır ve havuz için evet

Örnek

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

Kopyalama etkinliğinin özellikleri

Etkinlikleri tanımlamak için kullanılabilen bölümlerin ve özelliklerin tam listesi için İşlem hatları makalesine bakın. Bu bölümde, Dynamics kaynak ve havuz türleri tarafından desteklenen özelliklerin listesi sağlanır.

Kaynak türü olarak Dynamics

Dynamics'ten veri kopyalamak için kopyalama etkinliği kaynağı bölümü aşağıdaki özellikleri destekler:

Özellik Açıklama Gerekli
type Kopyalama etkinliği kaynağının tür özelliği "DynamicsSource", "DynamicsCrmSource" veya "CommonDataServiceForAppsSource" olarak ayarlanmalıdır. Evet
query FetchXML, Dynamics çevrimiçi ve şirket içinde kullanılan özel bir sorgu dilidir. Aşağıdaki örneğe bakın. Daha fazla bilgi edinmek için bkz . FetchXML ile sorgu oluşturma. Veri kümesinde belirtildiyse entityName hayır

Dekont

FetchXML sorgusunda yapılandırdığınız sütun projeksiyonu bunu içermese bile PK sütunu her zaman kopyalanır.

Önemli

  • Dynamics'ten veri kopyaladığınızda, Dynamics'ten havuza açık sütun eşleme isteğe bağlıdır. Ancak, belirleyici bir kopyalama sonucu elde etmek için eşlemeyi kesinlikle öneririz.
  • Hizmet yazma kullanıcı arabiriminde bir şemayı içeri aktardığında şemayı çıkarsar. Kaynak sütun listesini başlatmak için Dynamics sorgu sonucundaki en üst satırları örnekleme yoluyla bunu yapar. Bu durumda, üst satırlarda değer içermeyen sütunlar atlanır. Aynı davranış, açık eşleme yoksa veri önizleme ve kopyalama yürütmeleri için de geçerlidir. Eşlemeyi gözden geçirebilir ve kopyalama çalışma zamanı sırasında kabul edilen daha fazla sütun ekleyebilirsiniz.

Örnek

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

Örnek FetchXML sorgusu

<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>

Havuz türü olarak Dynamics

Verileri Dynamics'e kopyalamak için kopyalama etkinliği havuzu bölümü aşağıdaki özellikleri destekler:

Özellik Açıklama Gerekli
type Kopyalama etkinliği havuzu tür özelliği "DynamicsSink", "DynamicsCrmSink" veya "CommonDataServiceForAppsSink" olarak ayarlanmalıdır. Evet.
writeBehavior İşlemin yazma davranışı. Değer "Upsert" olmalıdır. Evet
alternateKeyName Bir upsert yapmak için varlığınızda tanımlanan alternatif anahtar adı. Hayır.
writeBatchSize Her toplu işlemde Dynamics'e yazılan verilerin satır sayısı. Hayır. Varsayılan değer 10'dur.
ignoreNullValues Yazma işlemi sırasında anahtar alanları dışındaki giriş verilerindeki null değerlerin yoksayılıp yoksayılmayacağı.

Geçerli değerler DOĞRU ve YANLIŞ'tır:
  • DOĞRU: Bir upsert veya update işlemi yaptığınızda hedef nesnedeki verileri değiştirmeden bırakın. Ekleme işlemi yaparken tanımlı bir varsayılan değer ekleyin.
  • YANLIŞ: Upsert veya update işlemi yaptığınızda hedef nesnedeki verileri null değere güncelleştirin. Ekleme işlemi yaparken null değer ekleyin.
Hayır. Varsayılan değer YANLIŞ'tır.
maxConcurrent Bağlan ions Etkinlik çalıştırması sırasında veri deposuna kurulan eş zamanlı bağlantıların üst sınırı. Yalnızca eşzamanlı bağlantıları sınırlamak istediğinizde bir değer belirtin. No

Dekont

Hem havuz writeBatchSize hem de Dynamics havuzu için kopyalama etkinliği parallelCopies için varsayılan değer 10'dur. Bu nedenle, varsayılan olarak Dynamics'e 100 kayıt eşzamanlı olarak gönderilir.

Dynamics 365 online için kuruluş başına 52 eşzamanlı toplu çağrı sınırı vardır. Bu sınır aşılırsa, ilk istek hiç çalıştırılmadan önce "Sunucu Meşgul" özel durumu oluşturulur. Eş zamanlı çağrıların bu kadar azaltmasını önlemek için writeBatchSize'ı 10 veya daha düşük bir değerde tutun.

writeBatchSize ve parallelCopies'in en uygun birleşimi varlığınızın şemasına bağlıdır. Şema öğeleri sütun sayısını, satır boyutunu ve bu çağrılara bağlı eklenti, iş akışı veya iş akışı etkinliği sayısını içerir. varsayılan writeBatchSize (10) × parallelCopies (10) ayarı Dynamics hizmetine göre öneridir. Bu değer çoğu Dynamics varlığı için çalışır, ancak en iyi performansı vermeyebilir. Kopyalama etkinliği ayarlarınızdaki bileşimi ayarlayarak performansı ayarlayabilirsiniz.

Örnek

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

Görünümlerden veri alma

Dynamics görünümlerinden veri almak için görünümün kaydedilmiş sorgusunu almanız ve verileri almak için sorguyu kullanmanız gerekir.

Farklı görünüm türlerini depolayan iki varlık vardır: "kaydedilen sorgu" sistem görünümünü depolar ve "kullanıcı sorgusu" kullanıcı görünümünü depolar. Görünümlerin bilgilerini almak için aşağıdaki FetchXML sorgusuna bakın ve "TARGETENTITY" değerini veya userqueryile savedquery değiştirin. Her varlık türünün, ihtiyacınıza göre sorguya ekleyebileceğiniz daha fazla kullanılabilir özniteliği vardır. Kayıtlı sorgu varlığı ve kullanıcı sorgusu varlığı hakkında daha fazla bilgi edinin.

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

Görünümleri filtrelemek için filtreler de ekleyebilirsiniz. Örneğin, hesap varlığında "Etkin Hesaplarım" adlı bir görünüm elde etmek için aşağıdaki filtreyi ekleyin.

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

Dynamics için veri türü eşlemesi

Dynamics'ten veri kopyaladığınızda, aşağıdaki tabloda Dynamics veri türlerinden hizmet içindeki ara veri türlerine eşlemeler gösterilmektedir. Kopyalama etkinliğinin kaynak şemayla ve veri türünün havuza nasıl eşlediğini öğrenmek için bkz . Şema ve veri türü eşlemeleri.

Aşağıdaki eşleme tablosunu kullanarak kaynak Dynamics veri türünüzü temel alan bir veri kümesi yapısında karşılık gelen ara veri türünü yapılandırın:

Dynamics veri türü Hizmet ara veri türü Kaynak olarak desteklenir Havuz olarak desteklenir
AttributeTypeCode.BigInt Uzun
AttributeTypeCode.Boolean Boolean
AttributeType.Customer GUID ✓ (Rehberliğe bakın)
AttributeType.DateTime Datetime
AttributeType.Decimal Ondalık
AttributeType.Double Çift
AttributeType.EntityName String
AttributeType.Integer Int32
AttributeType.Lookup GUID ✓ (Rehberliğe bakın)
AttributeType.ManagedProperty Boolean
AttributeType.Memo String
AttributeType.Money Ondalık
AttributeType.Owner GUID ✓ (Rehberliğe bakın)
AttributeType.Picklist Int32
AttributeType.Uniqueidentifier GUID
AttributeType.String String
AttributeType.State Int32
AttributeType.Status Int32

Dekont

AttributeType.CalendarRules, AttributeType.MultiSelectPicklist ve AttributeType.PartyList Dynamics veri türleri desteklenmez.

Arama alanına veri yazma

Müşteri ve Sahip gibi birden çok hedefi olan bir arama alanına veri yazmak için şu kılavuzu ve örneği izleyin:

  1. Kaynağınızın hem alan değerini hem de karşılık gelen hedef varlık adını içermesini sağlayın.

    • Tüm kayıtlar aynı hedef varlığa eşlenirse aşağıdaki koşullardan birini sağlayın:
      • Kaynak verilerinizin hedef varlık adını depolayan bir sütunu vardır.
      • Hedef varlığı tanımlamak için kopyalama etkinliği kaynağına ek bir sütun eklediniz.
    • Farklı kayıtlar farklı hedef varlıklarla eşlenirse, kaynak verilerinizin ilgili hedef varlık adını depolayan bir sütunu olduğundan emin olun.
  2. Hem değer hem de varlık başvurusu sütunlarını kaynaktan havuza eşleyin. Varlık başvurusu sütunu, özel adlandırma desenine {lookup_field_name}@EntityReferencesahip bir sanal sütuna eşlenmelidir. Sütun aslında Dynamics'te yok. Bu sütunun, verilen çok hedefli arama alanının meta veri sütunu olduğunu belirtmek için kullanılır.

Örneğin, kaynağın şu iki sütunu olduğunu varsayalım:

  • Dynamics'teki hedef varlığın birincil anahtar değeri olan GUID türünde CustomerField sütunu.
  • Hedef varlığın mantıksal adı olan Dize türünde hedef sütun.

Ayrıca, bu tür verileri Müşteri türündeki CustomerField havuz Dynamics varlık alanına kopyalamak istediğinizi varsayalım.

Kopyalama etkinliği sütun eşlemesinde iki sütunu aşağıdaki gibi eşleyin:

  • CustomerField'ı CustomerField'a. Bu eşleme normal alan eşlemesidir.
  • hedef CustomerField@EntityReference. Havuz sütunu, varlık başvuruyu temsil eden bir sanal sütundur. Şemaları içeri aktararak gösterilmeydiklerinden, eşlemeye bu tür alan adlarını girin.

Dynamics lookup-field column mapping

Tüm kaynak kayıtlarınız aynı hedef varlığa eşleniyorsa ve kaynak verileriniz hedef varlık adını içermiyorsa, şu kısayolu bulabilirsiniz: kopyalama etkinliği kaynağında ek bir sütun ekleyin. Desenini {lookup_field_name}@EntityReferencekullanarak yeni sütunu adlandırın, değeri hedef varlık adına ayarlayın, ardından sütun eşlemesine her zamanki gibi devam edin. Kaynak ve havuz sütun adlarınız aynıysa, varsayılan olarak kopyalama etkinliği sütunları ada göre eşlediğinden, açık sütun eşlemesini de atlayabilirsiniz.

Dynamics lookup-field adding an entity-reference column

Alternatif anahtarlar aracılığıyla arama alanına veri yazma

Alternatif anahtar sütunlarını kullanarak arama alanına veri yazmak için şu kılavuzu ve örneği izleyin:

  1. Kaynağınızın tüm arama anahtarı sütunlarını içerdiğinden emin olun.

  2. Alternatif anahtar sütunları, özel adlandırma düzenine {lookup_field_name}@{alternate_key_column_name}sahip sütuna eşlenmelidir. Sütun Dynamics'te yok. Bu sütunun hedef varlıktaki kaydı aramak için kullanıldığını belirtmek için kullanılır.

  3. Eşleme veri akışlarının havuz dönüşümünde Eşleme sekmesine gidin. Arama alanının altında çıkış sütunları olarak alternatif anahtarı seçin. Sonra gelen değer, bu alternatif anahtarın anahtar sütunlarını gösterir.

    Screenshot shows selecting alternate key columns.

  4. Seçildikten sonra, alternatif anahtar sütunları otomatik olarak aşağıda görüntülenir.

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

  5. Soldaki giriş sütunlarınızı çıkış sütunlarıyla eşleyin.

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

Dekont

Şu anda bu yalnızca eşleme veri akışlarının havuz dönüşümünde satır içi modu kullandığınızda desteklenir.

Eşleme veri akışı özellikleri

Eşleme veri akışındaki verileri dönüştürürken, Dynamics'teki tablolardan okuyabilir ve tablolara yazabilirsiniz. Daha fazla bilgi için bkz . Eşleme veri akışlarında kaynak dönüştürme ve havuz dönüşümü . Kaynak ve havuz türü olarak Dynamics veri kümesini veya satır içi veri kümesini kullanmayı seçebilirsiniz.

Kaynak dönüştürme

Aşağıdaki tabloda Dynamics tarafından desteklenen özellikler listelenmiştir. Bu özellikleri Kaynak seçenekleri sekmesinde düzenleyebilirsiniz.

Adı Açıklama Gerekli İzin verilen değerler Veri akışı betiği özelliği
Varlık adı Alınacak varlığın mantıksal adı. Satır içi veri kümesi kullanılırken Evet - (yalnızca satır içi veri kümesi için)
varlık
Sorgu FetchXML, Dynamics çevrimiçi ve şirket içinde kullanılan özel bir sorgu dilidir. Aşağıdaki örneğe bakın. Daha fazla bilgi edinmek için bkz . FetchXML ile sorgu oluşturma. No String query

Dekont

Giriş türü olarak Sorgu'yu seçerseniz, tablolardan sütun türü alınamıyor. Varsayılan olarak dize olarak değerlendirilir.

Dynamics kaynak betiği örneği

Kaynak türü olarak Dynamics veri kümesini kullandığınızda, ilişkili veri akışı betiği şöyledir:

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

Satır içi veri kümesi kullanıyorsanız, ilişkili veri akışı betiği şu şekildedir:

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

Havuz dönüşümü

Aşağıdaki tabloda Dynamics havuzu tarafından desteklenen özellikler listelenmektedir. Bu özellikleri Havuz seçenekleri sekmesinde düzenleyebilirsiniz.

Adı Açıklama Gerekli İzin verilen değerler Veri akışı betiği özelliği
Alternatif anahtar adı Bir güncelleştirme, yükseltme veya silme işlemi yapmak için varlığınızda tanımlanan alternatif anahtar adı. No - alternateKeyName
Güncelleştirme yöntemi Veritabanı hedefinizde hangi işlemlere izin verileceğini belirtin. Varsayılan değer yalnızca eklemelere izin vermektir.
Satırları güncelleştirmek, eklemek veya silmek için, bu eylemlerin satırlarını etiketlemek için bir Değişiklik satırı dönüştürmesi gerekir.
Evet true veya false eklenebilir
Güncelleştirilebilir
upsertable
deletable
Varlık adı Yazacak varlığın mantıksal adı. Satır içi veri kümesi kullanılırken Evet - (yalnızca satır içi veri kümesi için)
varlık

Dynamics havuz betiği örneği

Dynamics veri kümesini havuz türü olarak kullandığınızda, ilişkili veri akışı betiği şöyledir:

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

Satır içi veri kümesi kullanıyorsanız, ilişkili veri akışı betiği şu şekildedir:

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

Arama etkinliği özellikleri

Özellikler hakkında ayrıntılı bilgi edinmek için bkz . Arama etkinliği.

Kaynak ve havuz olarak kopyalama etkinliğinin desteklenen veri depolarının listesi için bkz . Desteklenen veri depoları.