Consultez les connecteurs compatibles avec Application Integration.
Déclencheur SAP ERP
Le déclencheur SAP ERP est un déclencheur d'événement de connecteur. Le connecteur SAP ERP vous permet d'effectuer des opérations d'insertion, de suppression, de mise à jour et de lecture sur les données SAP ERP.
Avant de commencer
- Si vous envisagez de créer ou de configurer une connexion pour le déclencheur SAP ERP, assurez-vous de disposer du rôle IAM suivant sur le projet:
- Administrateur du connecteur (
roles/connectors.admin
)
Pour en savoir plus sur l'attribution de rôles, consultez Gérer l'accès.
- Administrateur du connecteur (
- Attribuez les rôles IAM suivants au compte de service que vous souhaitez utiliser pour le déclencheur SAP ERP:
- Demandeur Application Integration (
roles/integrations.integrationInvoker
)
Pour en savoir plus sur l'attribution d'un rôle à un compte de service, consultez la page Gérer l'accès aux comptes de service.
- Demandeur Application Integration (
- Dans la console Google Cloud, accédez à la page Application Integration.
- Dans le menu de navigation, cliquez sur Integrations (Intégrations).
La page Liste des intégrations s'affiche. Elle répertorie toutes les intégrations disponibles dans le projet Google Cloud.
- Sélectionnez une intégration existante ou cliquez sur Créer une intégration pour en créer une.
Si vous créez une intégration :
- Saisissez un nom et une description dans le volet Create Integration (Créer une intégration).
- Sélectionnez une région pour l'intégration.
- Sélectionnez un compte de service pour l'intégration. Vous pouvez modifier ou mettre à jour les informations du compte de service d'une intégration à tout moment dans le volet Récapitulatif de l'intégration de la barre d'outils d'intégration.
- Cliquez sur Créer.
Cela entraîne son ouverture dans l'éditeur d'intégrations.
- Dans la barre de navigation de l'éditeur d'intégration, cliquez sur Déclencheurs pour afficher la liste des déclencheurs disponibles.
- Cliquez sur l'élément SAP ERP trigger (Déclencheur SAP ERP) et placez-le dans l'éditeur d'intégration.
- Cliquez sur l'élément Déclencheur SAP ERP dans l'éditeur d'intégration pour ouvrir le volet de configuration du déclencheur.
- Cliquez sur Configurer un déclencheur.
- Indiquez les informations de configuration suivantes sur la page Éditeur de déclencheurs d'événements de connecteur:
- Region (Région) : sélectionnez la région de votre connexion SAP ERP.
- Connexion:sélectionnez la connexion SAP ERP que vous souhaitez utiliser.
L'intégration d'applications n'affiche que les connexions SAP ERP actives pour lesquelles un abonnement aux événements est activé.
- Saisissez le nom du champ de type d'événement. Ce champ identifie le type d'événement
associées à la requête d'événement entrante.
{ "event_type": "user.created", ... // other request fields ... }
- Compte de service: sélectionnez un compte de service disposant des rôles IAM requis pour le déclencheur SAP ERP.
- Cliquez sur OK pour terminer la configuration du déclencheur et fermer la page.
- Cliquez sur l'élément Déclencheur SAP ERP dans l'éditeur d'intégrations pour ouvrir le volet de configuration du déclencheur.
- Cliquez sur Configurer un déclencheur.
- Ignorez le champ Région.
- Cliquez sur Connexion, puis sélectionnez l'option Créer une connexion dans le menu déroulant.
- Dans la section Détails de la connexion, procédez comme suit:
- Connector (Connecteur) : sélectionnez SAP ERP dans la liste déroulante des connecteurs disponibles.
- Version du connecteur : sélectionnez la version du connecteur dans la liste déroulante des versions disponibles.
- 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.
- Saisissez éventuellement une description de la connexion.
- Vous pouvez également activer Cloud Logging.
puis sélectionnez un niveau de journalisation. Par défaut, le niveau de journalisation est défini sur
Error
. - Compte de service : sélectionnez un compte de service disposant des rôles requis.
- Pour utiliser la connexion pour souscrire des abonnements à des événements, sélectionnez Activer l'abonnement aux événements. Sélection...
affiche les options suivantes:
- Activer l'abonnement à des événements avec une entité et des actions: sélectionnez cette option pour utiliser la connexion pour les opérations d'abonnement aux événements et de connecteur (entités et actions).
- Activer uniquement l'abonnement aux événements : sélectionnez cette option pour utiliser la connexion uniquement pour l'abonnement aux événements. Si vous sélectionnez cette option, cliquez sur Suivant, puis configurer un abonnement à un événement.
- Client: client qui s'authentifie auprès du système SAP.
- 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.
- 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.
- ID du projet: ID du projet Google Cloud dans lequel se trouve le bucket GCS contenant le fichier JAR SAP JCo.
- Bucket : nom du bucket contenant les fichiers sapjco3.jar et libsapjco3.so.
- ID d'objet JCo: ID de l'objet JCo.
- ID d'objet libsapjco3: ID de l'objet du fichier JAR libsapjco3
- Table mode (Mode table) : sélectionnez la table SAP à afficher sous forme de vue.
- ID d'objet SNC_LIB: ID d'objet de la bibliothèque SNC.
- Nom de l'environnement de sécurité personnel: nom du fichier PPE (Personal Security Environment) applicable pour le 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.
- 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.
- Serveur de messagerie: nom du serveur de messagerie à utiliser lors de la connexion au système SAP qui utilise des équilibreurs de charge.
- Fonction de lecture de table: nom de la fonction à utiliser pour lire les tableaux. Pour plus plus d'informations, consultez la section Utiliser une fonction de lecture de table personnalisée.
- Schéma de connexion : sélectionnez un schéma de connexion à utiliser pour vous connecter à votre système SAP.
- System ID (ID système) : l'ID système ou le R3Name du système SAP. Vous pouvez saisir jusqu'à trois caractères.
- Code secret SNC: sélectionnez le secret Secret Manager du code secret de la bibliothèque SNC.
- Version du secret: sélectionnez la version du secret.
- SNC mode (Mode SNC) : sélectionnez cette option pour activer la fonctionnalité SNC pour l'authentification entre Application Integration et votre système SAP.
- Nom SNC: saisissez un nom pour la connexion SNC.
-
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 : appliquer la 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.
- Nom SNC du partenaire: saisissez le nom SNC du serveur d'applications.
- Mode de requête: sélectionnez les tables SAP à afficher en tant que vues.
-
Vues à parcourir : saisissez une liste de vues à afficher, séparées par une virgule.
Exemple :
ViewA,ViewB,ViewC
- Niveau de verbosité : saisissez le niveau de verbosité de la journalisation. Les valeurs acceptées sont comprises entre 1 et 5. Plus la valeur est élevée, plus les détails seront disponibles dans les journaux.
- 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.
- Vous pouvez également cliquer sur + AJOUTER UN LIBELLÉ pour ajouter un libellé à la connexion sous la forme d'une paire clé/valeur.
- Cliquez sur Suivant.
- Dans la section Destinations, saisissez les informations concernant l'hôte distant (système backend) auquel vous souhaitez vous connecter.
- Type de destination : sélectionnez un type de destination.
- Sélectionnez Adresse hôte dans la liste 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 backend, sélectionnez Rattachement du point de terminaison dans la liste, puis sélectionnez le rattachement du point de terminaison requis dans la liste Rattachement du point de terminaison.
Si vous souhaitez établir une connexion publique à vos systèmes backend avec une sécurité supplémentaire, vous pouvez envisager de configurer des adresses IP sortantes statiques pour vos connexions, puis de configurer vos règles de pare-feu pour ajouter à la liste d'autorisation uniquement les adresses IP statiques spécifiques.
Pour saisir d'autres destinations, cliquez sur + Ajouter une destination.
- Cliquez sur Suivant.
- Type de destination : sélectionnez un type de destination.
-
Dans la section Authentification, saisissez les informations d'authentification.
- 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
- Cliquez sur Suivant.
Pour comprendre comment configurer ces types d'authentification, consultez la section Configurer l'authentification.
- Sélectionnez un type d'authentification, puis saisissez les informations appropriées.
- Si vous avez activé l'abonnement à l'événement, la section Détails de l'abonnement aux événements s'affiche sur la page de création de connexion. Pour comprendre comment configurer les détails de l'abonnement à un événement, consultez Configurer un abonnement à un événement.
- Vérifiez vos informations de connexion et d'authentification.
- Cliquez sur Créer.
-
Nom d'utilisateur et mot de passe
- Nom d'utilisateur : nom d'utilisateur du connecteur
- Mot de passe: code secret Secret Manager contenant le mot de passe associé au le connecteur d'alimentation.
-
Sélectionnez l'un des types d'authentification suivants pour l'écouteur d'événements.
- Authentification Google Si vous activez cette option, suivez les étapes décrites dans la section S'authentifier à l'aide de jetons Web JSON pour configurer l'authentification pour le SDK ABAP. Assurez-vous également que le compte de service roles/connectors.listener dont le jeton d'accès est utilisé pour l'authentification.
- Authentification par clé API Si vous sélectionnez cette option, vous devez avoir créé une clé API, puis l'avoir enregistrée en tant que secret Secret Manager. Pour en savoir plus, consultez Créez une clé API.
-
Saisissez le nom du champ de type d'événement. Ce champ identifie le type d'événement associé au
demande d'événement entrante.
{ "event_type": "user.created", ... // other request fields ... }
- Sélectionnez Activer la connectivité privée pour sécuriser la connectivité entre votre application backend. et votre connexion. Si vous sélectionnez cette option, vous devez effectuer des étapes de configuration supplémentaires après avoir créé la connexion. Pour en savoir plus, consultez Connectivité privée pour l'abonnement à un événement.
- Saisissez la configuration de la file d'attente de lettres mortes. Si vous configurez des lettres mortes, la connexion écrit
les événements non traités dans le sujet Pub/Sub spécifié. Saisissez les informations suivantes:
- ID du projet de lettre morte : ID du projet Google Cloud dans lequel vous avez configuré le sujet de lettre morte Pub/Sub.
- Sujet de lettre morte : sujet Pub/Sub dans lequel vous souhaitez écrire les détails de l'événement non traité.
- Utilisez la fonction
RFC_READ_TABLE
comme modèle pour la nouvelle fonction. Sélectionnez le code de transactionSE37
et le groupe de fonctionsSDTX
, puis copiezRFC_READ_TABLE
dans un nouveau groupe de fonctions ou votre groupe de fonctions. Dans cet exemple,RFC_READ_TABLE
est copié dansZ_CUSTOM_READ_TABLE
. - Dans l'onglet Attributes (Attributs) de l'écran SAP, sélectionnez
Remote Enabled Module
. - Dans l'onglet Tables, définissez le paramètre
DATA
surCHAR8000
. Faites un clic droit sur l'écran, puis cliquez sur Affichage -> Modification. - Dans l'onglet Code source, collez l'exemple de code source du module de fonction
RFC_READ_TABLE
de remplacement situé dans le sous-dossierdb
du répertoire d'installation. Le code se trouve dansZ_CUSTOM_READ_TABLE.txt
. Toutefois, il est préférable d'utiliserZ_CUSTOM_READ_TABLE_752.txt
si votre instance SAP ERP exécute ABAP version 7.52 ou ultérieure. - Cliquez sur Enregistrer.
- Définissez les importations, les tables et les exceptions comme indiqué dans le tableau de lecture personnalisé fourni.
- Activez le module de fonction et, dans votre chaîne de connexion, définissez
ReadTableFunction
surZ_CUSTOM_READ_TABLE
, ou sur le nom de votre module de fonction. - En savoir plus sur l'ensemble des tâches et des déclencheurs
- Découvrez comment tester et publier une intégration.
- En savoir plus sur la gestion des erreurs
- En savoir plus sur les journaux d'exécution de l'intégration
Ajouter le déclencheur SAP ERP
Pour ajouter un déclencheur SAP ERP à votre intégration, procédez comme suit:
Pour configurer le déclencheur SAP ERP, vous pouvez soit utiliser une connexion SAP ERP existante disponible dans Integration Connectors, soit créer une connexion SAP ERP à l'aide de l'option de création de connexion intégrée.
Configurer un déclencheur SAP ERP à l'aide d'une connexion existante
Le déclencheur SAP ERP est un déclencheur d'événement du connecteur. Vous ne pouvez donc utiliser qu'une connexion SAP ERP avec l'abonnement aux événements activé pour configurer le déclencheur.
Pour savoir comment configurer un déclencheur SAP ERP à l'aide d'une nouvelle connexion SAP ERP, consultez Configurer un déclencheur SAP ERP à l'aide d'une nouvelle connexion.
Pour configurer un déclencheur SAP ERP à l'aide d'une connexion SAP ERP existante, procédez comme suit :
Configurer le déclencheur SAP ERP à l'aide d'une nouvelle connexion
Configurer l'authentification
Saisissez les détails en fonction de l'authentification que vous souhaitez utiliser.
Configurer pour l'abonnement aux événements
Si vous avez activé l'abonnement à l'événement, saisissez les valeurs suivantes dans Section Détails de l'abonnement aux événements:
Utiliser une fonction de table de lecture personnalisée
RFC_READ_TABLE
Le connecteur utilise la fonction SAP RFC_READ_TABLE
pour obtenir des données à partir des tables SAP.
Cependant, il présente certaines limites. Prenons l'exemple de DATA_BUFFER_EXCEEDED
.
une exception. La taille fixe du fichier SAP RFC_READ_TABLE
est de 512 octets. Il peut mettre en mémoire tampon pour
chaque ligne de données. Ainsi, vous ne pouvez pas sélectionner plus de colonnes que la quantité
tenir dans ce tampon. Si vous sélectionnez plus de 512 octets, une exception se produit.
indiquant que vous avez dépassé la taille maximale de mémoire tampon autorisée par ligne et que vous devez
pour sélectionner moins de colonnes.
RFC_READ_TABLE2
Le connecteur SAP ERP est compatible avec la fonction de lecture de table RFC_READ_TABLE2
. Vous pouvez changer
la fonction active de lecture de table sur RFC_READ_TABLE2
en définissant ReadTableFunction
à /SAPDS/RFC_READ_TABLE2
.
Fonctions de table de lecture personnalisées
Le connecteur inclut une RFC personnalisée de type "read-table", Z_CUSTOM_READ_TABLE
, semblable
au RFC_READ_TABLE
de SAP, mais avec un tampon plus important pour résoudre le problème DATA_BUFFER_EXCEEDED
et contourner les limites de RFC_READ_TABLE
.
Pour utiliser le document RFC personnalisé inclus dans une table de lecture afin de contourner les limites avec le RFC_READ_TABLE
par défaut, procédez comme suit:
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
, pour ABAP version 7.52 et ultérieure. Il est semblable à Z_CUSTOM_READ_TABLE
, mais tire parti des nouveaux mots clés disponibles dans ABAP 7.52 pour effectuer la pagination dans la base de données.
et non dans le script ABAP lui-même. Cela rend la pagination efficace lorsque vous travaillez avec de grandes tables.
Nous vous recommandons d'utiliser la RFC Z_CUSTOM_READ_TABLE_752
.
Configurer l'authentification dans SAP
Configurez l'authentification dans SAP en suivant les instructions du guide Présentation de l'authentification pour le SDK ABAP pour Google Cloud sur site ou pour une édition cloud.
Valider le déclencheur
Pour valider le déclencheur, vous pouvez créer un programme ABAP. Voici un exemple de programme ABAP que vous pouvez utiliser comme référence. Le champ ls_event_payload
change en fonction de vos besoins:
*&---------------------------------------------------------------------* *& Report ZR_TEST_INT_CONNECTOR *&---------------------------------------------------------------------* *& *&---------------------------------------------------------------------* REPORT zr_test_int_connector. PARAMETERS: p_auth TYPE char1 RADIOBUTTON GROUP rbg1 USER-COMMAND uc DEFAULT 'X', p_apik TYPE char1 RADIOBUTTON GROUP rbg1. DATA: lv_p_projects_id TYPE string, lv_p_locations_id TYPE string, lv_p_connections_id TYPE string, ls_input TYPE /goog/cl_connectors_v1=>ty_103. TYPES: BEGIN OF event_payload, event_type TYPE string, event_id TYPE string, name TYPE string, org_id TYPE string, END OF event_payload. DATA: ls_event_payload TYPE event_payload. ls_event_payload = VALUE #( event_type = 'create-entity' event_id = '1' name = 'demo-org' org_id = 'SAP' ). TRY. IF p_Auth = abap_true. DATA(lv_client_key) = 'IC_DEMO_GOOGLE_AUTH'. lv_p_connections_id = 'conn-event-triggers-from-sap-erp'. ELSE. lv_client_key = 'IC_DEMO_GOOGLE_APIK'. lv_p_connections_id = 'conn-event-triggers-from-sap-erp-apik'. ENDIF. * Open HTTP Connection DATA(lo_client) = NEW /goog/cl_connectors_v1( iv_key_name = CONV #( lv_client_key ) ). * Populate relevant parameters lv_p_projects_id = lo_client->gv_project_id. lv_p_locations_id = 'us-central1'. GET REFERENCE OF ls_event_payload INTO ls_input-payload . * Call API method: connectors.projects.locations.connections.listenEvent CALL METHOD lo_client->listen_event_connections EXPORTING iv_p_projects_id = lv_p_projects_id iv_p_locations_id = lv_p_locations_id iv_p_connections_id = lv_p_connections_id is_input = ls_input IMPORTING * es_raw = es_output = DATA(ls_output) ev_ret_code = DATA(lv_ret_code) ev_err_text = DATA(lv_err_text) es_err_resp = DATA(ls_err_resp). IF lo_client->is_success( lv_ret_code ). MESSAGE 'Success' TYPE 'S'. ELSE. MESSAGE lv_err_text TYPE 'E'. ENDIF. * Close HTTP Connection lo_client->close( ). CATCH /goog/cx_sdk INTO DATA(lo_exception). MESSAGE lo_exception->get_text( ) TYPE 'E'. ENDTRY.
Quotas et limites
Pour plus d'informations sur les quotas et les limites, consultez la section Quotas et limites.