SAP ERP

Le connecteur SAP ERP vous permet d'effectuer des opérations d'insertion, de suppression, de mise à jour et de lecture de données SAP ERP.

Avant de commencer

Avant d'utiliser le connecteur SAP ERP, effectuez les tâches suivantes:

  • Dans votre projet Google Cloud :
    • Accordez le rôle IAM roles/connectors.admin à l'utilisateur qui configure le connecteur.
    • Attribuez les rôles IAM suivants au compte de service que vous souhaitez utiliser pour le connecteur :
      • roles/secretmanager.viewer
      • roles/secretmanager.secretAccessor
      • roles/storage.objectViewer

      Un compte de service est un compte Google spécial destiné à représenter un utilisateur non humain qui doit s'authentifier et obtenir les autorisations permettant d'accéder aux données des API Google. Si vous ne possédez pas de compte de service, vous devez en créer un. Pour plus d'informations, consultez la section Créer un compte de service.

    • Activez les services suivants :
      • secretmanager.googleapis.com (API Secret Manager)
      • connectors.googleapis.com (API Connectors)

      Pour savoir comment activer des services, consultez la page Activer des services.

    Si ces services ou autorisations n'ont pas encore été activés pour votre projet, vous êtes invité à les activer lors de la configuration du connecteur.

Configurer le connecteur

Pour configurer le connecteur, vous devez créer une connexion à votre source de données (système backend). Une connexion est spécifique à une source de données. Cela signifie que si vous disposez de nombreuses sources de données, vous devez créer une connexion distincte pour chacune d'elles. Pour créer une connexion, procédez comme suit :

  1. Dans la console Cloud, accédez à la page Integration Connectors > Connections (Connecteurs d'intégration > Connexions), puis sélectionnez ou créez un projet Google Cloud.

    Accéder à la page "Connexions"

  2. Cliquez sur + Créer pour ouvrir la page Créer une connexion.
  3. Dans la section Emplacement, choisissez l'emplacement de la connexion.
    1. Région : sélectionnez un emplacement dans la liste déroulante.

      Pour obtenir la liste de toutes les régions disponibles, consultez la page Emplacements.

    2. Cliquez sur Suivant.
  4. Dans la section Détails de connexion, procédez comme suit :
    1. Connector (Connecteur) : sélectionnez SAP ERP dans la liste déroulante des connecteurs disponibles.
    2. Version du connecteur : sélectionnez la version du connecteur dans la liste déroulante des versions disponibles.
    3. Dans le champ Nom de connexion, saisissez un nom pour l'instance de connexion.

      Les noms de connexion doivent répondre aux critères suivants :

      • Les noms de connexion peuvent contenir des lettres, des chiffres ou des traits d'union.
      • Les lettres doivent être en minuscules.
      • Les noms de connexion doivent commencer par une lettre et se terminer par une lettre ou un chiffre.
      • Les noms de connexion ne peuvent pas dépasser 63 caractères.
    4. Saisissez éventuellement une Description pour l'instance de connexion.
    5. Compte de service : sélectionnez un compte de service disposant des rôles requis.
    6. Client: client qui s'authentifie auprès du système SAP.
    7. System Id (ID système) : l'ID système ou R3Name du système SAP est une chaîne de trois caractères maximum. Il est souvent utilisé dans l'équilibrage de charge des connexions.
    8. System Number (Numéro système) : numéro par lequel le système cible est défini. Utilisé lors de la définition de la propriété de connexion à l'hôte.
    9. ID du projet: ID du projet Google Cloud dans lequel se trouve le bucket GCS contenant le fichier JAR SAP JCo.
    10. Bucket: nom du bucket contenant les fichiers sapjco3.jar et libsapjco3.so
    11. ID d'objet JCo: ID de l'objet JCo.
    12. ID d'objet libsapjco3: ID de l'objet du fichier JAR libsapjco3
    13. Table mode (Mode table) : sélectionnez la table SAP à afficher sous forme de vue.
    14. ID d'objet SNC_LIB: ID d'objet de la bibliothèque SNC.
    15. Nom du PSE: nom du fichier PSE (Personal Security Environment) applicable au bucket. Un fichier PSE stocke la paire de clés publique et privée ainsi que les certificats X.509 dans une structure ASN.1.
    16. Group (Groupe) : nom du groupe pour l'ouverture de session. Il est normalement spécifié lorsque votre système SAP utilise des équilibreurs de charge.
    17. Serveur de messagerie: nom du serveur de messagerie à utiliser lors de la connexion au système SAP qui utilise des équilibreurs de charge.
    18. Fonction de lecture de table: nom de la fonction à utiliser pour lire les tableaux. Pour en savoir plus, consultez la section Utiliser une fonction de lecture de table personnalisée.
    19. Schéma de connexion: sélectionnez le schéma de connexion à utiliser pour la connexion à votre système SAP.
    20. System ID (ID système) : l'ID système ou le R3Name du système SAP. Vous pouvez saisir jusqu'à trois caractères.
    21. Code secret SNC: sélectionnez le secret Secret Manager du code secret de la bibliothèque SNC.
    22. Version du secret: sélectionnez la version du secret.
    23. SNC mode (Mode SNC) : sélectionnez cette option pour activer la fonctionnalité SNC pour l'authentification entre Integration Connectors et votre système SAP.
    24. Nom SNC: saisissez un nom pour la connexion SNC.
    25. SNC qop: sélectionnez un niveau de protection. Voici les niveaux acceptés :
      • 1 : appliquer uniquement l'authentification.
      • 2 : Appliquez la protection de l'intégrité. Cela inclut également une protection par authentification.
      • 3 – Appliquez une protection de la confidentialité. Cela inclut également la protection de l'intégrité et par authentification.
      • 8 : appliquez la protection par défaut.
      • 9 : applique la protection maximale.
    26. Nom SNC du partenaire: saisissez le nom SNC du serveur d'applications.
    27. Mode de requête: sélectionnez les tables SAP à afficher en tant que vues.
    28. Vues consultables: saisissez une liste de vues à afficher, en les séparant par une virgule. Exemple :ViewA,ViewB,ViewC
    29. Niveau de verbosité: saisissez le niveau de verbosité pour la journalisation. Les valeurs acceptées sont comprises entre 1 et 5. Une valeur supérieure signifie que davantage de détails seront disponibles dans les journaux.
    30. Vous pouvez également configurer les paramètres du nœud de connexion :

      • Nombre minimal de nœuds : saisissez le nombre minimal de nœuds de connexion.
      • Nombre maximal de nœuds : saisissez le nombre maximal de nœuds de connexion.

      Un nœud est une unité (ou instance répliquée) de connexion qui traite des transactions. Pour traiter plus de transactions pour une connexion, plus de nœuds sont nécessaires. À l'inverse, moins de nœuds sont nécessaires pour traiter moins de transactions. Pour comprendre comment les nœuds affectent la tarification de votre connecteur, consultez la section Tarifs des nœuds de connexion. Si vous ne saisissez aucune valeur, le nombre minimal de nœuds est défini par défaut sur 2 (pour une meilleure disponibilité) et le nombre maximal sur 50.

    31. Vous pouvez également cliquer sur + AJOUTER UN LIBELLÉ pour ajouter un libellé à la connexion sous la forme d'une paire clé/valeur.
    32. Cliquez sur Suivant.
  5. Dans la section Destinations, saisissez les informations concernant l'hôte distant (système backend) auquel vous souhaitez vous connecter.
    1. Type de destination : sélectionnez un type de destination.
      • Dans la liste, sélectionnez Host address (Adresse de l'hôte) pour spécifier le nom d'hôte ou l'adresse IP de la destination.
      • Si vous souhaitez établir une connexion privée à vos systèmes de backend, sélectionnez Rattachement de point de terminaison dans la liste, puis sélectionnez le rattachement de point de terminaison requis dans la liste Rattachement de point de terminaison.

      Si vous souhaitez établir une connexion publique avec vos systèmes backend avec une sécurité supplémentaire, vous pouvez envisager de configurer des adresses IP sortantes statiques pour vos connexions, puis configurer vos règles de pare-feu pour n'ajouter à la liste d'autorisation que les adresses IP statiques spécifiques.

      Pour saisir d'autres destinations, cliquez sur + Ajouter une destination.

    2. Cliquez sur Suivant.
  6. Dans la section Authentification, saisissez les informations d'authentification.
    1. Sélectionnez un type d'authentification, puis saisissez les informations appropriées.

      Les types d'authentification suivants sont compatibles avec la connexion SAP ERP:

      • Nom d'utilisateur et mot de passe
    2. Pour comprendre comment configurer ces types d'authentification, consultez la section Configurer l'authentification.

    3. Cliquez sur Suivant.
  7. Vérifiez vos informations de connexion et d'authentification.
  8. Cliquez sur Créer.

Configurer l'authentification

Saisissez les détails en fonction de l'authentification que vous souhaitez utiliser.

  • Nom d'utilisateur et mot de passe
    • Nom d'utilisateur : nom d'utilisateur du connecteur
    • Mot de passe : Secret de Secret Manager contenant le mot de passe associé au connecteur.

Utiliser une fonction de lecture de table personnalisée

RFC_READ_TABLE

Le connecteur utilise la fonction SAP RFC_READ_TABLE pour récupérer les données des tables SAP.

Cependant, il présente certaines limites. Prenons l'exemple de l'exception DATA_BUFFER_EXCEEDED. La taille fixe du fichier SAP RFC_READ_TABLE est de 512 octets. Il peut être mis en mémoire tampon pour chaque ligne de données. Vous ne pouvez donc pas sélectionner plus de colonnes que la quantité suffisante pour ce tampon. Si vous sélectionnez plus de 512 octets, une exception se produira indiquant que vous avez dépassé la taille de mémoire tampon maximale autorisée par ligne et que vous devez sélectionner moins de colonnes.

RFC_READ_TABLE2

Le connecteur accepte également la fonction de lecture de table RFC_READ_TABLE2. Vous pouvez remplacer la fonction de lecture de table active par RFC_READ_TABLE2 en définissant ReadTableFunction sur /SAPDS/RFC_READ_TABLE2.

Fonctions personnalisées de lecture des tables

Installer une RFC personnalisée pour les tables de lecture

Le connecteur inclut le code de Z_CUSTOM_READ_TABLE, un document RFC personnalisé de type read-table semblable à SAP RFC_READ_TABLE, mais avec un tampon plus important pour résoudre le problème DATA_BUFFER_EXCEEDED et contourner les autres limitations relatives à RFC_READ_TABLE.

Les étapes suivantes montrent comment utiliser la RFC personnalisée de type read-table incluse pour contourner les limitations avec la RFC_READ_TABLE par défaut.

  1. Utilisez la fonction RFC_READ_TABLE comme modèle pour la nouvelle fonction: sélectionnez le code de transaction SE37 et le groupe de fonctions SDTX, puis copiez RFC_READ_TABLE dans un nouveau groupe de fonctions ou dans votre groupe de fonctions de travail. Dans cet exemple, RFC_READ_TABLE est copiée dans Z_CUSTOM_READ_TABLE.
  2. Dans l'onglet "Attributes" (Attributs) de l'écran SAP, sélectionnez Remote Enabled Module.
  3. Dans l'onglet "Tables", définissez le paramètre DATA sur CHAR8000 (vous devrez peut-être effectuer un clic droit, puis cliquer sur Affichage -> Modifier).
  4. Dans l'onglet "Code source", collez l'exemple de code source pour le module de fonction RFC_READ_TABLE de remplacement situé dans le sous-dossier db du répertoire d'installation. Le code se trouve dans le fichier Z_CUSTOM_READ_TABLE.txt. Toutefois, Z_CUSTOM_READ_TABLE_752.txt est préférable si votre instance SAP ERP exécute ABAP version 7.52 ou ultérieure (voir la section ci-dessous). Cliquez sur Save (Enregistrer).
  5. Définissez les importations, les tables et les exceptions comme indiqué dans le tableau de lecture personnalisé fourni.
  6. Activez le module de fonction et, dans votre chaîne de connexion, définissez ReadTableFunction sur Z_CUSTOM_READ_TABLE ou le nom de votre module de fonction.

Table de lecture personnalisée ABAP 7.52

En plus de Z_CUSTOM_READ_TABLE.txt, il existe également un fichier Z_CUSTOM_READ_TABLE_752.txt, conçu pour ABAP version 7.52 et ultérieures. Elle est globalement identique à Z_CUSTOM_READ_TABLE, mais elle tire parti des nouveaux mots clés disponibles dans ABAP 7.52 pour effectuer la pagination dans la base de données plutôt que dans le script ABAP lui-même. Cela rend la pagination efficace lorsque vous travaillez avec de grandes tables.

Il est recommandé d'utiliser la RFC Z_CUSTOM_READ_TABLE_752 dans la mesure du possible.

Entités, opérations et actions

Tous les connecteurs Integration Connectors fournissent une couche d'abstraction pour les objets de l'application connectée. Vous ne pouvez accéder aux objets d'une application que via cette abstraction. L'abstraction vous est présentée en tant qu'entités, opérations et actions.

  • Entité : une entité peut être considérée comme un objet ou un ensemble de propriétés dans l'application ou le service connecté. La définition d'une entité diffère d'un connecteur à l'autre. Par exemple, dans un connecteur de base de données, les tables sont les entités, dans un connecteur de serveur de fichiers, les dossiers sont les entités et, dans un connecteur de système de messagerie, les files d'attente sont les entités.

    Toutefois, il est possible qu'un connecteur ne soit pas compatible ou ne possède aucune entité. Dans ce cas, la liste Entities est vide.

  • Opération : une opération est l'activité que vous pouvez effectuer sur une entité. Vous pouvez effectuer l'une des opérations suivantes sur une entité :

    La sélection d'une entité dans la liste disponible génère une liste d'opérations disponibles pour l'entité. Pour obtenir une description détaillée des opérations, consultez les opérations d'entité de la tâche de connecteur. Toutefois, si un connecteur n'accepte aucune des opérations d'entité, celles-ci ne sont pas répertoriées dans la liste Operations.

  • Action : une action est une fonction de première classe mise à la disposition de l'intégration via l'interface du connecteur. Une action vous permet de modifier une ou plusieurs entités, et varie d'un connecteur à l'autre. Normalement, une action comporte des paramètres d'entrée et un paramètre de sortie. Toutefois, il est possible qu'un connecteur ne prenne en charge aucune action, auquel cas la liste Actions est vide.

Limites du système

Le connecteur SAP ERP peut traiter sept transactions par seconde et par nœud, et régule toute transaction au-delà de cette limite. Par défaut, Integration Connectors alloue deux nœuds (pour une meilleure disponibilité) à une connexion.

Pour en savoir plus sur les limites applicables à Integration Connectors, consultez Limites.

Exemples de configuration de connexion

Cette section liste des exemples de valeurs pour les différents champs que vous pouvez configurer lors de la création de la connexion.

Type de connexion ApplicationServer

Le tableau suivant répertorie des exemples de valeurs de configuration pour le type de connexion ApplicationServer. Reportez-vous à l'interface de création de connexion dans la console pour connaître les champs obligatoires et facultatifs.

Nom du champ Exemple de valeur
Région us-central1
Connecteur SAP ERP
Version du connecteur 1
Nom du connecteur saperp-applicationserver-conn
Description N/A
Compte de service xxxxxxxxx-compute@developer.gserviceaccount.com
Client 800
Numéro de système 00
ID du projet xxxx-gcp-project
Bucket sap-erp-bucket
ID de l'objet Jco Jar sapjco3.jar
ID de l'objet libsapjco3 libsapjco3.so
Mode Tableau TransparentApplication/TransparentCustomer/TransparentSystem/Pooled/Cluster/None
Lire la fonction table Z_CUSTOM_READ_TABLE
Schéma de connexion ApplicationServer
ID système SA1
Mode de requête N/A
Vues consultables N/A
Niveau de verbosité 5
Nombre minimal de nœuds 2
Nombre maximal de nœuds 50
Adresse de l'hôte 10.30.X.XX ou la chaîne de routeur d'un système SAP externe.
Authentification Mot de passe utilisateur
Nom d'utilisateur 12345
Mot de passe xyz@12345
versions 1

Type de connexion GroupServer

Le tableau suivant répertorie des exemples de valeurs de configuration pour le type de connexion GroupServer. Reportez-vous à l'interface de création de connexion dans la console pour connaître les champs obligatoires et facultatifs.

Nom du champ Exemple de valeur
Région us-central1
Connecteur SAP ERP
Version du connecteur 1
Nom du connecteur saperp-GroupServer-conn
Description N/A
Compte de service xxxxxxxxx-compute@developer.gserviceaccount.com
Client 800
Numéro de système 00
ID du projet xxxx-gcp-project
Bucket sap-erp-bucket
ID de l'objet Jco Jar sapjco3.jar
ID de l'objet libsapjco3 libsapjco3.so
Mode Tableau TransparentApplication/TransparentCustomer/TransparentSystem/Pooled/Cluster/None
Groupe PUBLIC
Serveur de messages 10.30.X.XX
Lire la fonction table Z_CUSTOM_READ_TABLE
Schéma de connexion GroupServer
ID système SA1
Mode de requête N/A
Vues consultables N/A
Niveau de verbosité 5
Nombre minimal de nœuds 2
Nombre maximal de nœuds 50
Adresse de l'hôte 10.30.X.XX ou chaîne de routeur du système SAP externe.
Authentification Mot de passe utilisateur
Nom d'utilisateur 12345
Mot de passe xyz@12345
versions 1

Type de connexion du certificat X509

Le tableau suivant répertorie des exemples de valeurs de configuration pour le type de connexion X509 certificate. Reportez-vous à l'interface de création de connexion dans la console pour connaître les champs obligatoires et facultatifs.

Nom du champ Exemple de valeur
Région us-central1
Connecteur SAP ERP
Version du connecteur 1
Nom du connecteur saperp-X509Certificate-conn
Description N/A
Compte de service xxxxxxxxx-compute@developer.gserviceaccount.com
Client 800
Numéro de système 00
ID du projet xxxx-gcp-project
Bucket sap-erp-bucket
ID de l'objet Jco Jar sapjco3.jar
ID de l'objet libsapjco3 libsapjco3.so
Mode Tableau TransparentApplication/TransparentCustomer/TransparentSystem/Pooled/Cluster/None
ID d'objet SNC_LIB libsapcrypto.so
Nom PSE pour créer le fichier cred_v2 EHP8_GCP_SA1.pse
Lire la fonction table Z_CUSTOM_READ_TABLE
Schéma de connexion ApplicationServer
ID système SA1
Code secret SNC xyz@gcp
Mode SNC Valeur booléenne déterminant si vous utilisez SNC. Définissez ce paramètre sur "true" pour utiliser SNC.
Nom du SNC p:CN=EHP8_GCP_SA1, OU=IT, O=CSW, C=DE
SNC Qop 3
Nom du partenaire SNC p:CN=SA1, OU=I0020070395, OU=SAP Web AS, O=SAP Trust Community, C=DE
Mode de requête N/A
Vues consultables N/A
Niveau de verbosité 5
Nombre minimal de nœuds 2
Nombre maximal de nœuds 50
Adresse de l'hôte 10.30.X.XX ou chaîne de routeur du système SAP externe.
Authentification Authentification basée sur les certificats X509
X509Certificate Le certificat X509 peut être spécifié à l'aide d'un chemin d'accès pointant vers un fichier contenant un certificat X509 au format PEM, un blob PEM commençant par l'en-tête "-----BEGIN ..." ou un blob PEM sans l'en-tête "-----BEGIN ...".
versions 1

Actions

Cette section liste les actions compatibles avec le connecteur. Pour comprendre comment configurer les actions, consultez Exemples d'actions.

Action BAPI_MATERIAL_SAVEDATA

Cette action vous permet d'effectuer des tâches spécifiques. Par exemple, vous pouvez l'utiliser pour créer ou modifier des données de référence matière dans SAP ERP.

Paramètres d'entrée de l'action BAPI_MATERIAL_SAVEDATA

Nom du paramètre Type de données Obligatoire Description
HEADDATA Chaîne Oui Paramètre d'entrée HEADDATA.
DONNÉESCLIENT Chaîne Oui Le paramètre d'entrée CLIENTDATA.
CLIENTDATAX Chaîne Oui Le paramètre d'entrée CLIENTDATAX.
MATERIALDESCRIPTION Chaîne Oui Le tableau MATERIALDESCRIPTION.

Paramètres de sortie de l'action BAPI_MATERIAL_SAVEDATA

Cette action renvoie l'état 200 (OK) si elle a abouti.

Pour savoir comment configurer l'action BAPI_MATERIAL_SAVEDATA, consultez Exemples d'actions.

Action ZFM_GCP_MULTIDATA_TAB

Cette action permet aux utilisateurs d'effectuer des tâches spécifiques. Par exemple, vous pouvez créer des données de plusieurs types de données dans SAP ERP.

Paramètres d'entrée de l'action ZFM_GCP_MULTIDATA_TAB

Nom du paramètre Type de données Obligatoire Description
ReturnTables Chaîne Oui Liste séparée par des virgules spécifiant les tables du module de fonction à générer. Si aucune valeur n'est spécifiée, toutes les tables renvoyées seront générées.
T_TABLE Chaîne Oui Le tableau T_TABLE.
IM_INPUT_1 Chaîne Oui Le paramètre d'entrée IM_INPUT_1.
IM_INPUT_2 Chaîne Oui Le paramètre d'entrée IM_INPUT_2.

Paramètres de sortie de l'action ZFM_GCP_MULTIDATA_TAB

Cette action renvoie l'état 200 (OK) si elle a abouti.

Pour savoir comment configurer l'action ZFM_GCP_MULTIDATA_TAB, consultez Exemples d'actions.

Action PushIDoc

Cette action vous permet d'effectuer des tâches spécifiques. Par exemple, vous pouvez transférer des données de SAP vers un système externe.

Paramètres d'entrée de l'action PushIDoc

Nom du paramètre Type de données Obligatoire Description
FileType Chaîne Oui Type de fichier.Les valeurs autorisées sont XML et IDoc.
Mode Chaîne Oui Mode de transfert.Les valeurs autorisées sont "Sync" ou "ASync".
Contenus Chaîne Oui Contenu du fichier.

Paramètres de sortie de l'action PushIDoc

Cette action renvoie l'état 200 (OK) si elle a abouti.

Pour savoir comment configurer l'action PushIDoc, consultez Exemples d'actions.

Action ExecuteCustomQuery

Cette action vous permet d'exécuter une requête personnalisée.

Pour créer une requête personnalisée, procédez comme suit:

  1. Suivez les instructions détaillées pour ajouter une tâche de connecteurs.
  2. Lorsque vous configurez la tâche de connecteur, sélectionnez Actions dans le type d'action à effectuer.
  3. Dans la liste Action, sélectionnez Execute custom query (Exécuter une requête personnalisée), puis cliquez sur Done (OK).

    image montrant la commande "execute-custom-query-action" image montrant la commande "execute-custom-query-action"

  4. Développez la section Task input (Entrée de la tâche), puis procédez comme suit :
    1. Dans le champ Délai avant expiration après, saisissez le nombre de secondes d'exécution de la requête.

      Valeur par défaut: 180 secondes.

    2. Dans le champ Nombre maximal de lignes, saisissez le nombre maximal de lignes que la base de données doit renvoyer.

      Valeur par défaut : 25

    3. Pour mettre à jour la requête personnalisée, cliquez sur Modifier le script personnalisé. La boîte de dialogue Éditeur de scripts s'ouvre.

      image montrant une requête "custom-sql-query" image montrant une requête "custom-sql-query"

    4. Dans la boîte de dialogue Éditeur de scripts, saisissez la requête SQL, puis cliquez sur Enregistrer.

      Vous pouvez utiliser un point d'interrogation (?) dans une instruction SQL pour représenter un paramètre unique qui doit être spécifié dans la liste des paramètres de requête. Par exemple, la requête SQL suivante sélectionne toutes les lignes de la table Employees correspondant aux valeurs spécifiées pour la colonne LastName :

      SELECT * FROM Employees where LastName=?

    5. Si vous avez utilisé des points d'interrogation dans votre requête SQL, vous devez ajouter le paramètre en cliquant sur + Ajouter un nom de paramètre pour chaque point d'interrogation. Lors de l'exécution de l'intégration, ces paramètres remplacent successivement les points d'interrogation (?) dans la requête SQL. Par exemple, si vous avez ajouté trois points d'interrogation (?), vous devez ajouter trois paramètres dans l'ordre dans l'ordre.

      image montrant l'ajout d'un paramètre de requête image montrant l'ajout d'un paramètre de requête

      Pour ajouter des paramètres de requête, procédez comme suit:

      1. Dans la liste Type, sélectionnez le type de données du paramètre.
      2. Dans le champ Valeur, saisissez la valeur du paramètre.
      3. Pour ajouter plusieurs paramètres, cliquez sur + Ajouter un paramètre de requête.

Si l'exécution réussit, cette action renvoie l'état 200 (OK) avec un corps de réponse contenant les résultats de la requête.

Exemples d'actions

Exemple : Créer un enregistrement

Cet exemple crée un enregistrement metrial à l'aide de l'action BAPI_MATERIAL_SAVEDATA.

  1. Dans la boîte de dialogue Configure connector task, cliquez sur Actions.
  2. Sélectionnez l'action BAPI_MATERIAL_SAVEDATA, puis cliquez sur OK.
  3. Dans la section Task Input (Entrée de la tâche) de la tâche Connectors (Connecteurs), cliquez sur connectorInputPayload, puis saisissez une valeur semblable à celle-ci dans le champ Default Value :
    {
    "HEADDATA": "{\"MATERIAL\":\"000000000000009001\",\"IND_SECTOR\":\"M\",\"MATL_TYPE\":\"HALB\",\"BASIC_VIEW\":\"X\"}",
    "CLIENTDATA" : "{\"MATL_GROUP\":\"00107\",\"BASE_UOM\":\"KG\"}",
    "CLIENTDATAX" : "{\"MATL_GROUP\":\"X\",\"BASE_UOM\":\"X\"}",
    "MATERIALDESCRIPTION" : "{\"LANGU\":\"E\",\"MATL_DESC\":\"Classification Google\"}"
    }
  4. Si l'action aboutit, le paramètre de réponse connectorOutputPayload de la tâche BAPI_MATERIAL_SAVEDATA aura une valeur semblable à celle-ci:

    [{
    "RETURN_TYPE": "S",
    "RETURN_ID": "MM",
    "RETURN_NUMBER": 356,
    "RETURN_MESSAGE": "The material 9001 has been created or extended",
    "RETURN_LOG_NO": "",
    "RETURN_LOG_MSG_NO": 0,
    "RETURN_MESSAGE_V1": "9001",
    "RETURN_FIELD": "",
    "RETURN_SYSTEM": "T90CLNT090",
    "RESULT_TABLE": null
    }]

Exemple – Mettre à jour un enregistrement

Cet exemple met à jour un enregistrement d'appareil à l'aide de l'action BAPI_MATERIAL_SAVEDATA.

  1. Dans la boîte de dialogue Configure connector task, cliquez sur Actions.
  2. Sélectionnez l'action BAPI_MATERIAL_SAVEDATA, puis cliquez sur OK.
  3. Dans la section Task Input (Entrée de la tâche) de la tâche Connectors (Connecteurs), cliquez sur connectorInputPayload, puis saisissez une valeur semblable à celle-ci dans le champ Default Value :
    {
    "HEADDATA": "{\"MATERIAL\":\"000000000000009000\",\"IND_SECTOR\":\"A\",\"MATL_TYPE\":\"FHMI\",\"BASIC_VIEW\":\"X\"}",
    "CLIENTDATA": "{\"MATL_GROUP\":\"013\",\"BASE_UOM\":\"ST\"}",
    "CLIENTDATAX": "{\"MATL_GROUP\":\"X\",\"BASE_UOM\":\"X\"}",
    "MATERIALDESCRIPTION": "{\"LANGU\":\"E\",\"MATL_DESC\":\"Classification Googlecloud\"}"
    }
  4. Si l'action aboutit, le paramètre de réponse connectorOutputPayload de la tâche BAPI_MATERIAL_SAVEDATA aura une valeur semblable à celle-ci:

    [{
    "RETURN_TYPE": "S",
    "RETURN_ID": "MM",
    "RETURN_NUMBER": 356,
    "RETURN_MESSAGE": "The material 9000 has been created or extended",
    "RETURN_LOG_NO": "",
    "RETURN_LOG_MSG_NO": 0,
    "RETURN_MESSAGE_V1": "9000",
    "RETURN_PARAMETER": "",
    "RETURN_ROW": 0,
    "RETURN_FIELD": "",
    "RETURN_SYSTEM": "T90CLNT090",
    "RESULT_TABLE": null
    }]

Exemple : Supprimer un enregistrement

Dans cet exemple, un enregistrement metrial est supprimé à l'aide de l'action BAPI_MATERIAL_SAVEDATA.

  1. Dans la boîte de dialogue Configure connector task, cliquez sur Actions.
  2. Sélectionnez l'action BAPI_MATERIAL_SAVEDATA, puis cliquez sur OK.
  3. Dans la section Task Input (Entrée de la tâche) de la tâche Connectors (Connecteurs), cliquez sur connectorInputPayload, puis saisissez une valeur semblable à celle-ci dans le champ Default Value :
    {
    "HEADDATA": "{\"MATERIAL\":\"000000000000009000\",\"BASIC_VIEW\":\"X\"}",
    "CLIENTDATA": "{\"DEL_FLAG\":\"X\"}",
    "CLIENTDATAX": "{\"DEL_FLAG\":\"X\"}"
    }
  4. Si l'action aboutit, le paramètre de réponse connectorOutputPayload de la tâche BAPI_MATERIAL_SAVEDATA aura une valeur semblable à celle-ci:

    [{
    "RETURN_TYPE": "S",
    "RETURN_ID": "MM",
    "RETURN_NUMBER": 356,
    "RETURN_LOG_NO": "",
    "RETURN_LOG_MSG_NO": 0,
    "RETURN_MESSAGE_V1": "9000",
    "RETURN_PARAMETER": "",
    "RETURN_ROW": 0,
    "RETURN_FIELD": "",
    "RETURN_SYSTEM": "T90CLNT090",
    "RESULT_TABLE": null
    }]
    

Exemple : Créer des données de type multidonnées

Cet exemple crée des données de type multidonnées à l'aide de l'action ZFM_GCP_MULTIDATA_TAB.

  1. Dans la boîte de dialogue Configure connector task, cliquez sur Actions.
  2. Sélectionnez l'action ZFM_GCP_MULTIDATA_TAB, puis cliquez sur OK.
  3. Dans la section Task Input (Entrée de la tâche) de la tâche Connectors (Connecteurs), cliquez sur connectorInputPayload, puis saisissez une valeur semblable à celle-ci dans le champ Default Value :
    {
    "T_TABLE": "{\"ZACCP\":\"111\",\"ZCHAR\":\"CHARACTER1\",\"ZCLNT\":\"100\",\"ZCUKY\":\"INR\",\"ZCURR\": 200,\"ZDATS\": \"20231213\",\"ZINT1\": 45,\"ZINT2\":54,\"ZDEC\": 0.12,\"ZFLTP\": 1234,\"ZLANG\":\"E\",\"ZNUMC\":\"110\",\"ZPREC\": 3,\"ZQUAN\": 188.0,\"ZRAW\":\"01010008010101050401\",\"ZTIMS\": \"103056\",\"ZUNIT\":\"11\",\"ZINT4P\": 45,\"ZINT4\": 54,\"ZLRAW\":\"0101000801010105040100030101010300040000\"}",
    "IM_INPUT_1": "{\"ZACCP\":\"222\",\"ZCHAR\":\"CHARACTER1\",\"ZCLNT\":\"100\",\"ZCUKY\":\"INR\",\"ZCURR\": 200,\"ZDATS\": \"20231213\",\"ZINT1\": 45,\"ZINT2\":54,\"ZDEC\": 0.12,\"ZFLTP\": 1234,\"ZLANG\":\"E\",\"ZNUMC\":\"110\",\"ZPREC\": 3,\"ZQUAN\": 188.0,\"ZRAW\":\"01010008010101050401\",\"ZTIMS\": \"103056\",\"ZUNIT\":\"11\",\"ZINT4P\": 45,\"ZINT4\": 54,\"ZLRAW\":\"0101000801010105040100030101010300040000\"}",
    "IM_INPUT_2": "{\"ZSTRING\": \"HI Google\",\"ZSSTRING\": \"HI Google How are you\"}"
    }
  4. Si l'action aboutit, le paramètre de réponse connectorOutputPayload de la tâche ZFM_GCP_MULTIDATA_TAB aura une valeur semblable à celle-ci:

    [{
    "EX_OUTPUT_1_ZACCP": 222,
    "EX_OUTPUT_1_ZCHAR": "CHARACTER1",
    "EX_OUTPUT_1_ZCLNT": "100",
    "EX_OUTPUT_1_ZCUKY": "INR",
    "EX_OUTPUT_1_ZCURR": 200,
    "EX_OUTPUT_1_ZDATS": "2023-12-13",
    "EX_OUTPUT_1_ZRAW": "01010008010101050401",
    "EX_OUTPUT_1_ZTIMS": "10:30:56",
    "EX_OUTPUT_1_ZUNIT": "11",
    "EX_OUTPUT_1_ZINT4P": 45,
    "EX_OUTPUT_1_ZINT4": 54,
    "EX_OUTPUT_1_ZLRAW": "0101000801010105040100030101010300040000\u0000",
    "EX_OUTPUT_2_ZSTRING": null,
    "EX_OUTPUT_2_ZSSTRING": null,
    "RESULT_TABLE": null,
    "T_TABLE_ZACCP": null,
    "T_TABLE_ZCHAR": null,
    "T_TABLE_ZCLNT": null,
    "T_TABLE_ZQUAN": null,
    "T_TABLE_ZRAW": null,
    "T_TABLE_ZTIMS": null,
    "T_TABLE_ZUNIT": null
    },{
    "EX_OUTPUT_1_ZACCP": null,
    "EX_OUTPUT_1_ZCHAR": null,
    "EX_OUTPUT_1_ZCLNT": null,
    "EX_OUTPUT_1_ZCUKY": null,
    "EX_OUTPUT_1_ZRAW": null,
    "T_TABLE_ZLANG": null,
    "T_TABLE_ZNUMC": null,
    "T_TABLE_ZPREC": null,
    "T_TABLE_ZQUAN": null,
    "T_TABLE_ZRAW": null,
    "T_TABLE_ZTIMS": null,
    "T_TABLE_ZUNIT": null
    },{
    "EX_OUTPUT_1_ZACCP": null,
    "EX_OUTPUT_1_ZCHAR": null,
    "EX_OUTPUT_1_ZCLNT": null,
    "EX_OUTPUT_1_ZCUKY": null,
    "EX_OUTPUT_1_ZCURR": null,
    "EX_OUTPUT_1_ZDATS": null,
    "EX_OUTPUT_1_ZDEC": null,
    "EX_OUTPUT_1_ZQUAN": null,
    "T_TABLE_ZNUMC": 110,
    "T_TABLE_ZPREC": 3,
    "T_TABLE_ZQUAN": 188,
    "T_TABLE_ZRAW": "01010008010101050401",
    "T_TABLE_ZTIMS": "10:30:56",
    "T_TABLE_ZUNIT": "11"
    }]
    

Exemple – Transférer un IDoc

Dans cet exemple, un IDoc est transféré vers SAP ERP.

  1. Dans la boîte de dialogue Configure connector task, cliquez sur Actions.
  2. Sélectionnez l'action PushIDoc, puis cliquez sur OK.
  3. Dans la section Task Input (Entrée de la tâche) de la tâche Connectors (Connecteurs), cliquez sur connectorInputPayload, puis saisissez une valeur semblable à celle-ci dans le champ Default Value :
    {
    "Content": "\n\n\n EDI_DC40\n 800\n 0000000008604824\n 740\n 53\n 2\n \n MATMAS05\n MATMAS\n ZLS_QA23\n LS\n ZLS_QA23\n SAPSA1\n LS\n SA1CLNT800\n 20230218\n 232556\n\n\n 005\n 000000000000000012\n 20170328\n 42039\n 20170727\n 42039\n KLVC\n FERT\n M\n 02\n BG\n 000\n 002\n 0.000\n 0.000\n KGM\n 0.000\n 0001\n 0.000\n 0.000\n 0.000\n 0.000\n 0.000\n",
    "FileType": "XML",
    "Mode": "ASync"
    }
  4. Si l'action aboutit, le paramètre de réponse connectorOutputPayload de la tâche PushIDoc aura une valeur semblable à celle-ci:

    [{
    "Result": "Success",
    "Message": "Push IDoc success"
    }]

Exemples d'opérations sur les entités

Cette section explique comment effectuer certaines opérations sur les entités dans ce connecteur.

Exemple : Répertorier tous les enregistrements

Cet exemple répertorie tous les enregistrements de l'entité T001.

  1. Dans la boîte de dialogue Configure connector task, cliquez sur Entities.
  2. Sélectionnez T001 dans la liste Entity.
  3. Sélectionnez l'opération List, puis cliquez sur OK.
  4. Si vous le souhaitez, dans la section Entrée de tâche de la tâche Connecteurs, vous pouvez filtrer l'ensemble de résultats en spécifiant une clause de filtre. Spécifiez toujours la valeur de la clause de filtre entre guillemets simples (').

Exemple – Obtenir un enregistrement à partir d'une entité

Cet exemple récupère un enregistrement avec l'ID spécifié à partir de l'entité T001.

  1. Dans la boîte de dialogue Configure connector task, cliquez sur Entities.
  2. Sélectionnez T001 dans la liste Entity.
  3. Sélectionnez l'opération Get, puis cliquez sur OK.
  4. Dans la section Task Input (Entrée de la tâche) de la tâche Connectors (Connecteurs), cliquez sur EntityId (ID d'entité), puis saisissez 0001 dans le champ Default Value (Valeur par défaut).

    Ici, 0001 est un ID d'enregistrement unique dans l'entité T001.

Utiliser Terraform pour créer des connexions

Vous pouvez utiliser la ressource Terraform pour créer une connexion.

Pour savoir comment appliquer ou supprimer une configuration Terraform, consultez la page Commandes Terraform de base.

Pour afficher un exemple de modèle Terraform pour la création de connexions, consultez cet exemple de modèle.

Lorsque vous créez cette connexion à l'aide de Terraform, vous devez définir les variables suivantes dans votre fichier de configuration Terraform:

Nom du paramètre Type de données Obligatoire Description
Client STRING Vrai Client qui s'authentifie auprès du système SAP.
groupe STRING Faux Groupe d’ouverture de session utilisé. En règle générale, il ne doit être spécifié que lors de la connexion à un système SAP utilisant l'équilibrage de charge.
message_server STRING Faux Le serveur de messagerie doit être spécifié lors de la connexion à un système SAP utilisant l'équilibrage de charge.
read_table_function STRING Faux Fonction à utiliser pour lire les données d'une table.
connection_scheme ENUM Faux Indique si vous vous connectez à un système SAP avec un serveur de messagerie (GroupServer) ou sans serveur (ApplicationServer). Les valeurs acceptées sont: ApplicationServer, GroupServer.
system_id STRING Faux L'ID système ou R3Name du système SAP est une chaîne de trois caractères maximum. Il est souvent utilisé dans l'équilibrage de charge des connexions.
system_number STRING Vrai Numéro par lequel le système cible est défini. Utilisé lors de la définition de la propriété de connexion à l'hôte.
project_id STRING Vrai ID du projet Google Cloud dans lequel se trouve le bucket Cloud Storage contenant le fichier JCo de SAP JCo.
bucket STRING Vrai Nom du bucket contenant les fichiers sapjco3.jar et libsapjco3.so
sapjco3_jar STRING Vrai ID de l'objet pour sapjco3.jar
libsapjco3_so STRING Vrai ID de l'objet pour libsapjco3.so
snc_lib STRING Faux L'ID d'objet de la bibliothèque SNC
snc_mode VALEUR BOOLÉENNE Faux Valeur booléenne déterminant si vous utilisez SNC. Définissez ce paramètre sur "true" pour utiliser SNC.
snc_name STRING Faux Entrée facultative indiquant le nom de votre connexion SNC.
snc_qop ENUM Faux Qualité de la protection de votre connexion SNC.Les valeurs acceptées sont 1, 2, 3, 8 ou 9, ce qui correspond aux niveaux de protection suivants: 1 Appliquer uniquement l'authentification. 2. Appliquez la protection de l'intégrité (authentification). 3 Appliquez une protection de la confidentialité (intégrité et authentification). 8 Appliquez la protection par défaut. 9 Appliquez la protection maximale. Les valeurs acceptées sont: 1, 2, 3, 8, 9.
snc_partner_name STRING Faux Nom SNC du serveur d'application. Ce champ est obligatoire pour utiliser SNC.
query_mode ENUM Faux Détermine quelles tables SAP seront affichées sous forme de vues, le cas échéant. Les valeurs acceptées sont: Global, Local, All, None
table_mode ENUM Faux Détermine quelles tables SAP seront affichées sous forme de vues, le cas échéant. Les valeurs acceptées sont: TransparentApplication, TransparentCustomer, TransparentSystem, Pooled, Cluster, All, None
verbosité STRING Faux Niveau de verbosité pour la connexion (varie de 1 à 5). Un niveau de verbosité plus élevé consigne tous les détails de la communication (certificats de requête,de réponse et SSL).

Utiliser la connexion SAP ERP dans une intégration

Une fois la connexion créée, elle devient disponible à la fois dans Apigee Integration et Application Integration. Vous pouvez utiliser la connexion dans une intégration via la tâche Connecteurs.

  • Pour comprendre comment créer et utiliser la tâche "Connecteurs" dans Apigee Integration, consultez la section Tâche Connecteurs.
  • Pour découvrir comment créer et utiliser la tâche "Connecteurs" dans Application Integration, consultez la section Tâche Connecteurs.

Obtenir de l'aide auprès de la communauté Google Cloud

Vous pouvez publier vos questions et discuter de ce connecteur sur les forums Cloud de la communauté Google Cloud.

Étapes suivantes