Copier des données de SAP ECC à l’aide d’Azure Data Factory ou de Synapse Analytics

S’APPLIQUE À : Azure Data Factory Azure Synapse Analytics

Conseil

Essayez Data Factory dans Microsoft Fabric, une solution d’analyse tout-en-un pour les entreprises. Microsoft Fabric couvre tous les aspects, du déplacement des données à la science des données, en passant par l’analyse en temps réel, l’aide à la décision et la création de rapports. Découvrez comment démarrer un nouvel essai gratuitement !

Cet article explique comment utiliser l’activité de copie dans Azure Data Factory pour copier des données à partir de SAP ECC (SAP Enterprise Central Component). Pour plus d’informations, consultez l’article Vue d’ensemble d’activité de copie.

Conseil

Pour en savoir plus sur la prise en charge générale de l’intégration de données SAP, consultez le livre blanc Intégration de données SAP à l’aide d’Azure Data Factory offrant une présentation détaillée sur chaque connecteur SAP, une comparaison et des conseils.

Fonctionnalités prises en charge

Ce connecteur SAP ECC est pris en charge pour les activités suivantes :

Fonctionnalités prises en charge IR
Activité de copie (source/-)
Activité de recherche

① Runtime d’intégration Azure ② Runtime d’intégration auto-hébergé

Pour obtenir la liste des magasins de données pris en charge en tant que sources ou récepteurs, consultez le tableau Magasins de données pris en charge.

Plus précisément, ce connecteur SAP ECC prend en charge ce qui suit :

  • Copie de données à partir de SAP ECC sur SAP NetWeaver version 7.0 et ultérieures.

  • Copie de données à partir de tous les objets exposés par les services SAP ECC OData, tels que :

    • Tables ou affichages SAP.
    • Objets de l’interface de programmation d’applications métier [BAPI].
    • Extracteurs de données.
    • Des données ou des documents intermédiaires (IDOC) envoyés à SAP Process Integration (PI) qui peuvent être reçus en tant que OData par le biais d’adaptateurs relatifs.
  • Copie de données en utilisant une authentification de base.

La version 7.0 ou ultérieure fait référence à la version SAP NetWeaver au lieu de la version SAP ECC. Par exemple, SAP ECC 6.0 EHP 7 dispose en général de la version NetWeaver >=7.4. Si vous n’êtes pas sûr de votre environnement, voici les étapes à suivre pour confirmer la version de votre système SAP :

  1. Utilisez l’interface graphique utilisateur SAP pour vous connecter au système SAP.
  2. Accédez à Système ->État.
  3. Vérifiez la version de SAP_BASIS et assurez-vous qu’elle est supérieure ou égale à 701.
    Check SAP_BASIS

Conseil

Pour copier des données à partir de SAP ECC via une table ou un affichage SAP, utilisez le connecteur de Table SAP, qui est plus rapide et plus évolutif.

Prérequis

Pour utiliser ce connecteur SAP ECC, vous devez exposer les entités SAP ECC par le biais des services OData via une passerelle SAP. Plus précisément :

  • Configurer la passerelle SAP. Sur les serveurs avec une version de SAP NetWeaver supérieure à la version 7.4, la passerelle SAP est déjà installée. Pour les versions antérieures, vous devez installer la passerelle SAP incorporée ou le système hub de passerelle SAP avant d’exposer les données SAP ECC par le biais des services OData. Pour configurer la passerelle SAP, consultez le guide d’installation.

  • Activer et configurer le service SAP OData. Vous pouvez activer le service OData par le biais de TCODE SICF en quelques secondes. Vous pouvez également configurer les objets qui doivent être exposés. Pour plus d’informations, consultez la page guide pas à pas.

Si votre magasin de données se trouve dans un réseau local, un réseau virtuel Azure ou un cloud privé virtuel Amazon, vous devez configurer un runtime d’intégration auto-hébergé pour vous y connecter.

Si votre magasin de données est un service de données cloud managé, vous pouvez utiliser Azure Integration Runtime. Si l’accès est limité aux adresses IP qui sont approuvées dans les règles de pare-feu, vous pouvez ajouter les adresses IP Azure Integration Runtime dans la liste d’autorisation.

Vous pouvez également utiliser la fonctionnalité de runtime d’intégration de réseau virtuel managé dans Azure Data Factory pour accéder au réseau local sans installer et configurer un runtime d’intégration auto-hébergé.

Pour plus d’informations sur les mécanismes de sécurité réseau et les options pris en charge par Data Factory, consultez Stratégies d’accès aux données.

Bien démarrer

Pour effectuer l’activité Copie avec un pipeline, vous pouvez vous servir de l’un des outils ou kits SDK suivants :

Créer un service lié à SAP ECC à l’aide de l’interface utilisateur

Utilisez les étapes suivantes pour créer un service lié à SAP ECC dans l’interface utilisateur du portail Azure.

  1. Accédez à l’onglet Gérer dans votre espace de travail Azure Data Factory ou Synapse et sélectionnez Services liés, puis cliquez sur Nouveau :

  2. Recherchez SAP et sélectionnez le connecteur SAP ECC.

    Screenshot of the SAP ECC connector.

  3. Configurez les informations du service, testez la connexion et créez le nouveau service lié.

    Screenshot of linked service configuration for SAP ECC.

Informations de configuration des connecteurs

Les sections suivantes fournissent des informations sur les propriétés utilisées pour définir les entités spécifiques au connecteur SAP ECC.

Propriétés du service lié

Les propriétés prises en charge pour le service lié SAP ECC sont les suivantes :

Propriété Description Obligatoire
type La propriété type doit être définie sur SapEcc. Oui
url L’URL du service OData SAP ECC. Oui
username Le nom d’utilisateur utilisé pour se connecter à SAP ECC. Non
password Le mot de passe en texte en clair utilisé pour se connecter à SAP ECC. Non
connectVia Le runtime d’intégration à utiliser pour se connecter à la banque de données. Pour plus d’informations, consultez la section Conditions préalables. Si vous ne spécifiez pas de runtime, le runtime d’intégration Azure par défaut est utilisé. Non

Exemple

{
    "name": "SapECCLinkedService",
    "properties": {
        "type": "SapEcc",
        "typeProperties": {
            "url": "<SAP ECC OData URL, e.g., http://eccsvrname:8000/sap/opu/odata/sap/zgw100_dd02l_so_srv/>",
            "username": "<username>",
            "password": {
                "type": "SecureString",
                "value": "<password>"
            }
        }
    },
    "connectVia": {
        "referenceName": "<name of integration runtime>",
        "type": "IntegrationRuntimeReference"
    }
}

Propriétés du jeu de données

Pour obtenir la liste complète des sections et des propriétés disponibles pour la définition de jeux de données, consultez Jeux de données. La section suivante fournit la liste des propriétés prises en charge par le jeu de données de SAP ECC.

Pour copier des données de SAP ECC, définissez la propriété type du jeu de données sur SapEccResource.

Les propriétés prises en charge sont les suivantes :

Propriété Description Obligatoire
path Chemin de l’entité OData SAP ECC. Oui

Exemple

{
    "name": "SapEccDataset",
    "properties": {
        "type": "SapEccResource",
        "typeProperties": {
            "path": "<entity path, e.g., dd04tentitySet>"
        },
        "schema": [],
        "linkedServiceName": {
            "referenceName": "<SAP ECC linked service name>",
            "type": "LinkedServiceReference"
        }
    }
}

Propriétés de l’activité de copie

Pour obtenir la liste complète des sections et des propriétés disponibles pour la définition des activités, consultez Pipelines. La section suivante fournit la liste des propriétés prises en charge par la source de SAP ECC.

SAP ECC en tant que source

Pour copier des données de SAP ECC, définissez la propriété type dans la section source de l’activité de copie sur SapEccSource.

Les propriétés prises en charge dans la section source de l’activité de copie sont les suivantes :

Propriété Description Obligatoire
type La propriété SapEccSource de la section type d’activité de copie doit être définie sur source. Oui
query Les options de requête OData pour filtrer les données. Par exemple :

"$select=Name,Description&$top=10"

Le connecteur SAP ECC copie les données à partir de l’URL combinée :

<URL specified in the linked service>/<path specified in the dataset>?<query specified in the copy activity's source section>

Pour plus d’informations, consultez OData URL components.
Non
sapDataColumnDelimiter Caractère unique utilisé comme délimiteur passé à SAP RFC pour fractionner les données de sortie. Non
httpRequestTimeout Délai d’expiration (valeur TimeSpan) pour l’obtention d’une réponse par la requête HTTP. Cette valeur correspond au délai d’expiration pour l’obtention d’une réponse, et non au délai d’expiration pour la lecture des données de la réponse. Si elle n’est pas spécifiée, la valeur par défaut est 00:30:00 (30 minutes). Non

Exemple

"activities":[
    {
        "name": "CopyFromSAPECC",
        "type": "Copy",
        "inputs": [
            {
                "referenceName": "<SAP ECC input dataset name>",
                "type": "DatasetReference"
            }
        ],
        "outputs": [
            {
                "referenceName": "<output dataset name>",
                "type": "DatasetReference"
            }
        ],
        "typeProperties": {
            "source": {
                "type": "SapEccSource",
                "query": "$top=10"
            },
            "sink": {
                "type": "<sink type>"
            }
        }
    }
]

Mappage de type de données pour SAP ECC

Lorsque vous copiez des données à partir de SAP ECC, les mappages suivants sont utilisés à partir des types de données OData pour les données SAP ECC vers les types de données intermédiaires que le service utilise en interne. Pour découvrir comment l’activité de copie mappe le schéma et le type de données la source au récepteur, consultez Mappage de schéma dans l’activité de copie.

Type de données OData Type de données de service intermédiaire
Edm.Binary String
Edm.Boolean Bool
Edm.Byte String
Edm.DateTime DateTime
Edm.Decimal Decimal
Edm.Double Double
Edm.Single Single
Edm.Guid String
Edm.Int16 Int16
Edm.Int32 Int32
Edm.Int64 Int64
Edm.SByte Int16
Edm.String String
Edm.Time TimeSpan
Edm.DateTimeOffset DateTimeOffset

Notes

Les types de données complexes ne sont actuellement pas pris en charge.

Propriétés de l’activité Lookup

Pour en savoir plus sur les propriétés, consultez Activité Lookup.

Pour obtenir une liste des magasins de données pris en charge comme sources et récepteurs par l’activité de copie, consultez Magasins de données pris en charge.