Copiar dados do ou para o SAP Cloud for Customer (C4C) usando o Azure Data Factory ou o Synapse Analytics

APLICA-SE A: Azure Data Factory Azure Synapse Analytics

Dica

Experimente o Data Factory no Microsoft Fabric, uma solução de análise tudo-em-um para empresas. O Microsoft Fabric abrange desde movimentação de dados até ciência de dados, análise em tempo real, business intelligence e relatórios. Saiba como iniciar uma avaliação gratuita!

Este artigo descreve como usar a atividade de cópia nos pipelines do Azure Data Factory ou do Azure Synapse Analytics para copiar dados de/para o Cloud for Customer (C4C). Ele amplia o artigo Visão geral da atividade de cópia que apresenta uma visão geral da atividade de cópia.

Dica

Para saber mais sobre o suporte geral do serviço no cenário de integração de dados do SAP, confira o artigo técnico Integração de dados do SAP usando o Azure Data Factory com introdução detalhada sobre cada conector SAP, comparações e orientações.

Funcionalidades com suporte

Há suporte para esse conector do SAP Cloud for Customer nas seguintes recursos:

Funcionalidades com suporte IR
Atividade de cópia (origem/coletor) ① ②
Atividade de pesquisa ① ②

① Runtime de integração do Azure ② Runtime de integração auto-hospedada

Para obter uma lista de armazenamentos de dados com suporte como origens e coletores, confira a tabela Armazenamentos de dados com suporte.

Especificamente, este conector permite que o serviço copie dados de/para SAP Cloud for Customer, inclusive as soluções SAP Cloud for Sales, SAP Cloud for Service e SAP Cloud for Social Engagement.

Introdução

Para executar a atividade de Cópia com um pipeline, será possível usar as ferramentas ou os SDKs abaixo:

Criar um serviço vinculado ao SAP Cloud for Customer usando a interface do usuário

Use as etapas a seguir para criar um serviço vinculado ao SAP Cloud for Customer na interface do usuário do portal do Microsoft Azure.

  1. Navegue até a guia Gerenciar no workspace do Azure Data Factory ou do Synapse, selecione Serviços Vinculados e clique em Novo:

  2. Pesquise por SAP e selecione o conector do SAP Cloud for Customer.

    Selecione o conector do SAP Cloud for Customer.

  3. Configure os detalhes do serviço, teste a conexão e crie o novo serviço vinculado.

    Configurar um serviço vinculado ao SAP Cloud for Customer.

Detalhes da configuração do conector

As seções a seguir fornecem detalhes sobre propriedades usadas para definir entidades de Data Factory específicas do conector do SAP Cloud for Customer.

Propriedades do serviço vinculado

As propriedades a seguir são compatíveis com o serviço vinculado SAP Cloud for Customer:

Propriedade Descrição Obrigatório
type A propriedade type deve ser definida como: SapCloudForCustomer. Sim
url A URL do serviço SAP C4C OData. Sim
Nome de Usuário Especifique o nome de usuário para se conectar ao SAP C4C. Sim
password Especifique a senha da conta de usuário que você especificou para o nome de usuário. Marque este campo como um SecureString para armazená-lo com segurança ou referencie um segredo armazenado no Azure Key Vault. Sim
connectVia O Integration Runtime a ser usado para se conectar ao armazenamento de dados. Se não for especificado, ele usa o Integration Runtime padrão do Azure. Não

Exemplo:

{
    "name": "SAPC4CLinkedService",
    "properties": {
        "type": "SapCloudForCustomer",
        "typeProperties": {
            "url": "https://<tenantname>.crm.ondemand.com/sap/c4c/odata/v1/c4codata/" ,
            "username": "<username>",
            "password": {
                "type": "SecureString",
                "value": "<password>"
            }
        },
        "connectVia": {
            "referenceName": "<name of Integration Runtime>",
            "type": "IntegrationRuntimeReference"
        }
    }
}

Propriedades do conjunto de dados

Para obter uma lista completa das seções e propriedades disponíveis para definir os conjuntos de dados, confira o artigo sobre conjuntos de dados. Esta seção fornece uma lista de propriedades compatíveis com o conjunto de dados do SAP Cloud for Customer.

Para copiar dados do SAP Cloud for Customer, defina a propriedade type do conjunto de dados como SapCloudForCustomerResource. Há suporte para as seguintes propriedades:

Propriedade Descrição Obrigatório
type A propriedade type do conjunto de dados deve ser definida como: SapCloudForCustomerResource Sim
caminho Especifique o caminho da entidade SAP C4C OData. Sim

Exemplo:

{
    "name": "SAPC4CDataset",
    "properties": {
        "type": "SapCloudForCustomerResource",
        "typeProperties": {
            "path": "<path e.g. LeadCollection>"
        },
        "schema": [],
        "linkedServiceName": {
            "referenceName": "<SAP C4C linked service>",
            "type": "LinkedServiceReference"
        }
    }
}

Propriedades da atividade de cópia

Para obter uma lista completa das seções e propriedades disponíveis para definir atividades, confia o artigo Pipelines. Esta seção fornece uma lista de propriedades compatíveis com a fonte do SAP Cloud for Customer.

SAP C4C como fonte

Para copiar dados do SAP Cloud for Customer, defina o tipo de origem na atividade de cópia como SapCloudForCustomerSource. As propriedades a seguir têm suporte na seção source da atividade de cópia:

Propriedade Descrição Obrigatório
type A propriedade type deve ser definida como: SapCloudForCustomerSource Sim
Consulta Especifique a consulta OData personalizada para ler dados. Não
httpRequestTimeout O tempo limite (o valor TimeSpan) para a solicitação HTTP para obter uma resposta. Esse valor é o tempo limite para obter uma resposta, não o tempo limite para ler os dados da resposta. Se não for especificado, o valor padrão será 00:30:00 (30 minutos). Não

Consulta de exemplo para obter dados de um dia específico:"query": "$filter=CreatedOn ge datetimeoffset'2017-07-31T10:02:06.4202620Z' and CreatedOn le datetimeoffset'2017-08-01T10:02:06.4202620Z'"

Exemplo:

"activities":[
    {
        "name": "CopyFromSAPC4C",
        "type": "Copy",
        "inputs": [
            {
                "referenceName": "<SAP C4C input dataset>",
                "type": "DatasetReference"
            }
        ],
        "outputs": [
            {
                "referenceName": "<output dataset>",
                "type": "DatasetReference"
            }
        ],
        "typeProperties": {
            "source": {
                "type": "SapCloudForCustomerSource",
                "query": "<custom query e.g. $top=10>"
            },
            "sink": {
                "type": "<sink type>"
            }
        }
    }
]

SAP C4C como coletor

Para copiar dados do SAP Cloud for Customer, defina o tipo de coletor na atividade de cópia como SapCloudForCustomerSource. As propriedades a seguir têm suporte na seção sink da atividade de cópia:

Propriedade Descrição Obrigatório
type A propriedade type deve ser definida como: SapCloudForCustomerSink Sim
writeBehavior O comportamento da operação de gravação. Pode ser “Inserir”, “Atualizar”.  Não. Padrão “Inserir”.
writeBatchSize O tamanho do lote da operação de gravação. O tamanho do lote para obter o melhor desempenho pode ser diferente da tabela ou do servidor diferente. Não. Padrão 10. 
 maxConcurrentConnections O limite superior de conexões simultâneas estabelecidas com o armazenamento de dados durante a execução da atividade. Especifique um valor somente quando desejar limitar as conexões simultâneas.  Nenhum

Exemplo:

"activities":[
    {
        "name": "CopyToSapC4c",
        "type": "Copy",
        "inputs": [{
            "type": "DatasetReference",
            "referenceName": "<dataset type>"
        }],
        "outputs": [{
            "type": "DatasetReference",
            "referenceName": "SapC4cDataset"
        }],
        "typeProperties": {
            "source": {
                "type": "<source type>"
            },
            "sink": {
                "type": "SapCloudForCustomerSink",
                "writeBehavior": "Insert",
                "writeBatchSize": 30
            },
            "parallelCopies": 10,
            "dataIntegrationUnits": 4,
            "enableSkipIncompatibleRow": true,
            "redirectIncompatibleRowSettings": {
                "linkedServiceName": {
                    "referenceName": "ErrorLogBlobLinkedService",
                    "type": "LinkedServiceReference"
                },
                "path": "incompatiblerows"
            }
        }
    }
]

Mapeamento do tipo de dados para o SAP Cloud for Customer

Durante a cópia de dados do SAP Cloud for Customer, os mapeamentos a seguir são usados do tipos de dados do SAP Cloud for Customer para os tipos de dados provisórios usados internamente no serviço. Consulte Mapeamentos de tipo de dados e esquema para saber mais sobre como a atividade de cópia mapeia o tipo de dados e esquema de origem para o coletor.

Tipo de dados SAP C4C OData Tipo de dados provisório do serviço
Edm.Binary Byte[]
Edm.Boolean Bool
Edm.Byte Byte[]
Edm.DateTime Datetime
Edm.Decimal Decimal
Edm.Double Double
Edm.Single Single
Edm.Guid Guid
Edm.Int16 Int16
Edm.Int32 Int32
Edm.Int64 Int64
Edm.SByte Int16
Edm.String String
Edm.Time TimeSpan
Edm.DateTimeOffset DateTimeOffset

Pesquisar propriedades de atividade

Para saber detalhes sobre as propriedades, verifique Pesquisar atividade.

Para obter uma lista de armazenamentos de dados com suporte como coletores e fontes da atividade de cópia, confira os armazenamentos de dados com suporte.