SAP ERP
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.
Éditions compatibles
Le connecteur SAP ERP peut communiquer avec les systèmes SAP R/3 à l'aide des méthodes suivantes:
- Interfaces de programmation d'application métier (BAPI)
- Appels de fonction à distance (RFC)
- Tables SAP
- Requêtes SAP
- Messages IDoc
- SAP ECC
- SAP ERP
- SAP R/3
- SAP S/4 HANA sur site
- Version de SAP JCo.
Ce connecteur nécessite deux fichiers JCo lors de la création de la connexion:
sapjco3.jar
etlibsapjco3.so
(pour Unix). Vous pouvez télécharger la version JCo 3.1.5 sur le site des connecteurs SAP.
Si le système SAP est compatible avec une connexion RFC et que les RFC requises sont disponibles, la connexion au système SAP fonctionne. D'autres éditions compatibles avec les connexions RFC peuvent également être prises en charge.
Tables SAP:les tables SAP sont exposées en tant que vues automatiquement via la propriété de connexion TableMode. Spécifiez les tables SAP avec lesquelles vous souhaitez travailler à l'aide de la propriété de connexion "Vues", qui remplace TableMode. SAP déconseille de modifier directement les tables. Nous vous recommandons plutôt d'utiliser des BAPI pour modifier les données tabulaires. La modification directe des tables SAP n'est pas possible.
BAPI et RFC:les BAPI et les RFC sont exposés directement en tant que procédures stockées. Par défaut, toutes les RFC commençant par le mot clé "BAPI" sont affichées en tant que procédure stockée disponible.
IDoc:les fichiers IDoc (Intermediate Document) sont des objets SAP qui transfèrent les données des transactions commerciales d'un système à un autre sous la forme d'un message électronique. Les IDocs transfèrent des données de SAP vers des systèmes autres que SAP via des systèmes d'échange de données électroniques (EDI).
Pour en savoir plus sur ces termes, consultez le glossaire SAP.
Avant de commencer
Avant d'utiliser le connecteur SAP ERP, effectuez les tâches suivantes:
- Dans votre projet Google Cloud :
- Vérifiez que la connectivité réseau est configurée. Pour en savoir plus sur les modèles de réseau, consultez la section Connectivité réseau.
- Attribuez 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.
Si vous activez l'abonnement aux événements, vous devez configurer le SDK ABAP. Pour en savoir plus sur la configuration du SDK ABAP, consultez la page Présentation du SDK ABAP pour Google Cloud.
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 :
- 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.
- Cliquez sur + Créer pour ouvrir la page Créer une connexion.
-
Dans la section Emplacement, choisissez l'emplacement de la connexion.
- 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.
- Cliquez sur Suivant.
- Région : sélectionnez un emplacement dans la liste déroulante.
- Dans la section Détails de la connexion, procédez comme suit :
- 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 49 caractères.
- Pour les connecteurs compatibles avec l'abonnement aux événements, les noms de connexion ne peuvent pas commencer par le préfixe "goog".
- Saisissez éventuellement une description pour la connexion.
- Vous pouvez également activer Cloud Logging, puis sélectionner 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 les abonnements aux événements, sélectionnez Activer l'abonnement aux événements. Si vous sélectionnez cette option, les options suivantes s'affichent :
- Activer l'abonnement aux événements avec entité et actions: sélectionnez cette option pour utiliser la connexion à la fois pour l'abonnement aux événements et les opérations 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 sur Configurer l'abonnement aux événements.
- Client: client qui s'authentifie auprès du système SAP.
- System ID: l'ID système ou R3Name du système SAP est une chaîne de trois caractères maximum. Il est souvent utilisé pour équilibrer la charge des connexions.
- Numéro de 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 de l'hôte.
- ID du projet: ID du projet Google Cloud où réside le bucket GCS contenant le fichier JAR SAP JCo.
- Bucket: nom du bucket contenant les fichiers sapjco3.jar et libsapjco3.so.
- ID de l'objet du fichier JAR Jaco: ID de l'objet du fichier JAR JCo.
- ID de l'objet libsapjco3: ID de l'objet du fichier JAR libsapjco3.
- Mode Tableau: sélectionnez la table SAP à afficher en tant que vue.
- Fonction de lecture de table: nom de la fonction à utiliser pour lire les tables. Pour en savoir plus, consultez Utiliser une fonction de table de lecture personnalisée.
- ID système: ID système ou R3Name du système SAP. Vous pouvez saisir jusqu'à trois caractères.
- Mode de requête: sélectionnez les tables SAP à afficher sous forme de vues.
-
Vues à parcourir: saisissez une liste de vues à afficher, séparées par une virgule.
Exemple :
ViewA,ViewB,ViewC
- Language (Langue) : définissez cette propriété sur la langue que vous spécifiez lorsque vous vous connectez à SAP. Cette propriété est un code ISO 639-1 correspondant à la langue utilisée par le système SAP. Par défaut, l'anglais est utilisé.
- Entrées de service: entrées de service à utiliser pour la connexion.
-
Mode SNC: sélectionnez cette option pour activer le SNC pour l'authentification entre les connecteurs d'intégration et votre système SAP. Si vous sélectionnez cette option, spécifiez les informations suivantes :
- ID de l'objet SNC_LIB: ID de l'objet de la bibliothèque SNC.
- 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.
- 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.
- Nom du SNC: saisissez un nom pour la connexion SNC.
-
SNC qop: sélectionnez un niveau de protection. Voici les niveaux acceptés :
- 1 : appliquer l'authentification uniquement.
- 2 : appliquer la protection de l'intégrité. Cela inclut également la protection de l'authentification.
- 3 : appliquer la protection de la confidentialité. Cela inclut également la protection de l'intégrité et de l'authentification.
- 8 : appliquer la protection par défaut.
- 9 : appliquer la protection maximale.
- Nom du partenaire SNC: saisissez le nom du SNC du serveur d'application.
-
Schéma de connexion: indiquez si vous vous connectez à un système SAP avec un serveur de messages (serveur de groupe) ou un serveur d'applications. Pour en savoir plus sur les conditions préalables à remplir pour vous connecter à un système SAP avec un serveur de messages, consultez la section Type de connexion Message Server (Group Server).
Si vous sélectionnez GroupServer, vous devez spécifier les informations suivantes:
- Message Server: spécifiez le serveur de messagerie lorsque vous vous connectez à un système SAP qui utilise l'équilibrage de charge.
- Message Server Service (Service de serveur de messages) : service de serveur de messages auquel vous souhaitez vous connecter.
- Groupe: groupe d'ouverture de session utilisé. Vous ne devez le spécifier que lorsque vous vous connectez à un système SAP qui utilise l'équilibrage de charge.
Si vous vous connectez à un système SAP avec un serveur de messagerie (serveur de groupe), vous n'avez pas besoin de spécifier l'adresse de l'hôte dans la section Destinations.
- 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. Si vous vous connectez à un système SAP avec Message Server, vous n'avez pas besoin de spécifier l'adresse de l'hôte.
- 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 configurer des adresses IP sortantes statiques pour vos connexions, puis configurer vos règles de pare-feu pour n'autoriser que 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:
- Authentification basée sur un certificat X509
- 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 aux événements, la section Détails de l'abonnement aux événements s'affiche sur la page de création de la connexion. Pour savoir comment configurer les détails de l'abonnement aux événements, consultez Configurer l'abonnement aux événements.
- Vérifiez vos informations de connexion et d'authentification.
- Cliquez sur Créer.
Configurer l'authentification
Saisissez les détails en fonction de l'authentification que vous souhaitez utiliser.
-
Authentification basée sur X509Certificate
- X509Certificate: certificat X509 utilisé pour la connexion.
- Version du secret: sélectionnez la version du secret.
-
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.
Configurer pour l'abonnement aux événements
Si vous activez l'abonnement aux événements, vous devez configurer le SDK ABAP. Pour en savoir plus sur la configuration du SDK ABAP, consultez la page Présentation du SDK ABAP pour Google Cloud.
Saisissez les valeurs suivantes dans la section Détails de l'abonnement aux événements:
-
Sélectionnez l'un des types d'authentification suivants pour l'écouteur d'événements.
- Authentification Google Si vous activez cette option, suivez la procédure décrite dans la section S'authentifier à l'aide de jetons Web JSON pour configurer l'authentification du SDK ABAP. Assurez-vous également que le compte de service dispose du rôle 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 la page Créer une clé API.
-
Saisissez le nom du champ de type d'événement. Ce champ identifie le type d'événement associé à la requête d'événement entrante.
{ "event_type": "user.created", ... // other request fields ... }
- Sélectionnez Activer la connectivité privée pour une connectivité sécurisée entre votre application backend et votre connexion. Si vous sélectionnez cette option, vous devrez effectuer des étapes de configuration supplémentaires après avoir créé la connexion. Pour en savoir plus, consultez la section Connectivité privée pour l'abonnement aux événements.
- Saisissez la configuration de la file d'attente de lettres mortes. Si vous configurez une lettre morte, la connexion écrit les événements non traités dans le sujet Pub/Sub spécifié. Saisissez les informations suivantes :
- ID de projet de boîte à lettres morte : ID du projet Google Cloud dans lequel vous avez configuré le sujet Pub/Sub de boîte à lettres morte.
- Sujet de lettre morte : sujet Pub/Sub dans lequel vous souhaitez écrire les détails de l'événement non traité.
Exemples de configuration de connexion
Les sections suivantes répertorient les exemples de valeurs pour les différents champs lorsque vous créez la connexion SAP ERP et les paramètres requis pour les différents types de connexion.
Se connecter à un système SAP distribué
Si vous vous connectez à un système SAP distribué, tel qu'un système utilisant l'équilibrage de charge, vous devez spécifier les propriétés de connexion supplémentaires suivantes. Un administrateur peut obtenir ces propriétés de connexion dans l'onglet "Connexion" de la boîte de dialogue "Propriétés des entrées système" du système SAP.
- ID système: spécifiez la valeur obtenue à partir de la propriété SystemId. L'ID système correspond à l'ID système/R3Name du système SAP. L'ID système est une chaîne de trois caractères maximum.
- Message Server: lorsque vous vous connectez à un système SAP qui utilise l'équilibrage de charge, vous devez spécifier le champ Message Server. Définissez cette propriété sur la valeur que vous avez obtenue à partir de la propriété MessageServer dans le système SAP. Ajoutez également la valeur de la zone "SAProuter" au début de la valeur du champ "Message Server".
- Groupe: définissez cette propriété sur la valeur que vous avez obtenue à partir de la propriété "Groupe/Serveur". La propriété "Group" spécifie le groupe de connexion utilisé. La valeur par défaut est PUBLIC.
Se connecter à un serveur d'applications personnalisé
Si vous vous connectez à un système SAP avec un serveur d'applications dédié ou un serveur d'applications personnalisé, vous devez spécifier les propriétés de connexion supplémentaires suivantes. Un administrateur peut obtenir ces propriétés de connexion à partir du système SAP.
- ID système: spécifiez la valeur obtenue à partir de la propriété SystemId. Il s'agit de l'ID système ou du nom R3 du système SAP. L'ID système est une chaîne de trois caractères maximum.
- Hôte: indiquez la valeur que vous avez obtenue auprès du serveur d'applications.
Il spécifie le nom d'hôte du système cible. Cette valeur peut être un nom d'hôte, une adresse IP ou une adresse de routeur SAP.
- Numéro système: spécifiez la valeur que vous avez obtenue à partir de la propriété SystemNumber.
La propriété SystemNumber définit le système cible.
Configurer des connexions réseau sécurisées
Si l'administrateur a configuré la communication réseau sécurisée (SNC, Secure Network Communication), vous devez définir les propriétés supplémentaires suivantes. Dans le système SAP, vous pouvez obtenir les propriétés de chaîne de connexion SNC suivantes dans l'onglet "Network" (Réseau) de la boîte de dialogue "System Entry Properties" (Propriétés de l'entrée système).
- Mode SNC: si la case à cocher "Activer les connexions réseau sécurisées" est activée dans SAP, définissez la propriété de connexion en mode SNC sur "True". Sinon, définissez la propriété de connexion en mode SNC sur "False".
La propriété de connexion SNCMode est une valeur booléenne qui détermine si vous utilisez SNC. La valeur par défaut est "false".
- SNC PartnerName: SNC PartnerName spécifie le nom du SNC du serveur d'applications. Par exemple: p:CN=IDS, OU=IT, O=CSW, C=DE
- Nom de la SNC: facultatif. La propriété SNCName spécifie le nom de la connexion SNC. Définissez cette propriété pour vous assurer que le nom SNC correct est utilisé pour la connexion.
- SNC Qop: définissez cette propriété sur l'option sélectionnée dans la section "Paramètres réseau sécurisés". Par exemple, si l'option "Intégrité" est sélectionnée, définissez la propriété SNCQop sur 3.
La propriété SNCQop spécifie le niveau (ou la qualité) de protection des données. Si cette propriété n'est pas spécifiée, l'entier -1 est défini pour cette propriété. Les valeurs valides sont 1, 2, 3, 8 ou 9, qui correspondent aux niveaux de protection.
- ID de l'objet SNC_Lib: définissez cette propriété sur le chemin d'accès et le nom de fichier de votre bibliothèque SNC. Spécifiez le chemin d'accès complet à la bibliothèque de sécurité que vous utilisez, par exemple
C:\Secude\secude.xll.
.
Type de connexion ApplicationServer
Pour la connectivité du serveur d'applications, Private Service Connect et l'équilibreur de charge doivent être configurés avec l'adresse IP du système SAP et le port 33XX dans le groupe de points de terminaison du réseau (NEG) et la vérification de l'état. XX correspond au numéro de système ou d'instance du système SAP utilisé. Le tableau suivant présente 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 du 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 |
Système de connexion | ApplicationServer |
ID du 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 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 au serveur de messages (serveur de groupe)
Avant de vous connecter à un système SAP avec un serveur de messages (serveur de groupe), assurez-vous que les conditions préalables suivantes sont remplies :- Private Service Connect et l'équilibreur de charge doivent être configurés avec l'adresse IP du système SAP sur les ports 33XX et 36XX dans le groupe de points de terminaison du réseau (NEG) et la vérification d'état. XX correspond au numéro de système ou d'instance du système SAP utilisé.
- Vous devez créer une zone DNS sur Cloud DNS et mapper l'attachement du point de terminaison du serveur d'applications, qui est configuré sur le port 33XX avec le nom d'hôte du système SAP.
- Vous ne pouvez vous connecter à un système SAP avec un serveur de messages (serveur de groupe) que si le serveur de messages renvoie l'adresse du nom de domaine complet (FQDN) du serveur d'application. Vous ne pouvez pas vous connecter à un système SAP avec un serveur de messagerie (serveur de groupe) si le serveur de messagerie renvoie l'adresse IP.
- Le serveur de messages doit répondre avec le DNS des serveurs d'applications auxquels l'application doit se connecter lorsque l'application le demande.
- Le DNS des serveurs d'applications doit être unique et ne doit pas être utilisé par un autre système SAP.
- Dans l'application SAP, les adresses IP d'attachement des points de terminaison pour les serveurs d'applications et les serveurs de messages doivent être conservées sous les paramètres gw/alternative_hostnames.
- Accédez au code T RZ10 et saisissez une entrée pour le paramètre "gw/alternative_hostname" dans le profil de l'instance.
- Définissez la valeur du paramètre "ms/lg_with_hostname" sur 1. Cela garantit que le serveur de messagerie utilise des noms d'hôte pour identifier et communiquer avec les serveurs d'applications.
- Redémarrez l'application SAP pour que les paramètres prennent effet.
Le tableau suivant présente des exemples de valeurs de configuration pour le type de connexion Group Server
:
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 | SA-compute@developer.gserviceaccount.com |
Client | 800 |
Numéro du système | 00 |
ID du projet | Google-cloud-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 messagerie | 10.30.X.XX |
Lire la fonction table | Z_CUSTOM_READ_TABLE |
Système de connexion | GroupServer |
ID du 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 |
Authentification | Mot de passe utilisateur |
Nom d'utilisateur | NOM D'UTILISATEUR |
Mot de passe | MOT DE PASSE |
versions | 1 |
Type de connexion au certificat X509
Pour les communications réseau sécurisées (SNC, Secure Network Communications) avec la connectivité X509, Private Service Connect et l'équilibreur de charge doivent être configurés avec l'adresse IP du système SAP et le port 48XX dans le groupe de points de terminaison du réseau (NEG) et la vérification d'état. XX correspond au numéro de système ou d'instance du système SAP utilisé. Le tableau suivant présente 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 du 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 de l'objet SNC_LIB | libsapcrypto.so |
Nom du PSE pour créer le fichier cred_v2 | EHP8_GCP_SA1.pse |
Lire la fonction table | Z_CUSTOM_READ_TABLE |
Système de connexion | ApplicationServer |
ID du système | SA1 |
Code secret SNC | xyz@gcp |
Mode SNC | Valeur booléenne indiquant si vous utilisez SNC. Définissez cette valeur sur "true" pour utiliser SNC. |
Nom du SNC | p:CN=EHP8_GCP_SA1, OU=IT, O=CSW, C=DE |
SNC Qop | 3 |
SNC PartnerName | 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 du routeur du système SAP externe. |
Authentification | Authentification basée sur X509Certificate |
X509Certificate | Le certificat X509 peut être spécifié à l'aide d'un chemin d'accès à un fichier contenant un certificat X509 au format PEM, d'un blob PEM commençant par l'en-tête "-----BEGIN ..." ou d'un blob PEM sans l'en-tête "-----BEGIN ...". |
versions | 1 |
Limites du système
Le connecteur SAP ERP peut traiter sept transactions par seconde et par nœud, et limite les transactions dépassant cette limite. Par défaut, les connecteurs d'intégration allouent deux nœuds (pour une meilleure disponibilité) à une connexion.
Pour en savoir plus sur les limites applicables à Integration Connectors, consultez la section Limites.
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 savoir comment créer et utiliser la tâche Connecteurs dans Apigee Integration, consultez la section Tâche Connecteurs.
- Pour savoir comment créer et utiliser la tâche Connecteurs dans Application Integration, consultez la section Tâche Connecteurs.
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'est pas compatible avec l'une des opérations d'entité, ces opérations non compatibles ne sont pas listé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.
Actions
Cette section fournit des informations sur les RFC et liste les actions compatibles avec le connecteur. Pour savoir comment configurer les actions, consultez Exemples d'actions.
Utiliser les RFC
Cette section fournit des informations sur les RFC requises et leur utilisation.
RFC requises
Si l'une des RFC requises n'est pas disponible, certaines ou toutes les fonctionnalités risquent de ne pas fonctionner. Le code SE37 permet d'afficher les modules de fonction disponibles dans SAP.
Les RFC suivantes sont utilisées par le connecteur SAP ERP.
- DDIF_FIELDINFO_GET
- RFC_GET_FUNCTION_INTERFACE
- RFC_GET_STRUCTURE_DEFINITION
- RFC_GET_SYSTEM_INFO
- RFC_GET_UNICODE_STRUCTURE
- RFC_READ_TABLE
- SLDAG_CHECK_FOR_UNICODE
Lire de grandes quantités de données
Cette section décrit l'approche à suivre pour lire de grandes données à partir de votre backend SAP.
Le connecteur SAP ERP utilise la fonction SAP RFC_READ_TABLE
pour obtenir des données à partir de tables SAP. Cette fonction a une taille fixe de 512 octets. Il peut tamponner pour chaque ligne de données. Vous ne pouvez donc pas sélectionner plus de colonnes que la quantité qui tiendrait dans ce tampon. Si vous sélectionnez plus de 512 octets, l'exception DATA_BUFFER_EXCEEDED
se produit lors de l'exécution de votre intégration. Cela signifie que vous avez dépassé la taille de tampon maximale autorisée par ligne et que vous devez sélectionner moins de colonnes.
Pour résoudre ce problème, vous pouvez inclure le code d'un Custom RFC_READ_TABLE
, qui est semblable à SAP RFC_READ_TABLE
, mais avec un tampon plus important pour résoudre le problème DATA_BUFFER_EXCEEDED
.
Utiliser une fonction de lecture de table personnalisée
Le connecteur est compatible avec un Custom RFC_READ_TABLE
semblable à SAP RFC_READ_TABLE
, mais avec un tampon plus important afin de résoudre le problème DATA_BUFFER_EXCEEDED
.
Créer une table RFC_READ_TABLE personnalisée dans votre backend SAP
Suivez la procédure ci-dessous pour utiliser l' exemple de RFC_READ_TABLE personnalisée.
- 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 copiezRFC_READ_TABLE
dans un nouveau groupe de fonctions ou dans votre groupe de fonctions de travail. Dans cet exemple,RFC_READ_TABLE
est copié dansZ_CUSTOM_RFC_TABLE
. - Dans l'onglet Attributes (Attributs) de la page SAP, sélectionnez Remote Enabled Module (Module activé à distance).
- Dans l'onglet Tables, définissez le paramètre
DATA
surCHAR8000
(vous devrez peut-être effectuer un clic droit, puis cliquer sur Affichage -> Modifier). - Dans l'onglet Source Code (Code source), saisissez le code RFC de lecture de table personnalisé. Pour référence, consultez l'exemple Z_CUSTOM_RFC_TABLE_function.txt.
- Cliquez sur Enregistrer.
- Définissez les importations, les tables et les exceptions comme indiqué dans le tableau de lecture personnalisée fourni.
- Activez le module de fonction.
Table de lecture personnalisée pour ABAP 7.52
Si vous utilisez ABAP 7.52 ou une version ultérieure, consultez l'exemple Z_CUSTOM_RFC_TABLE_function_ABAP752.txt.
L'exemple de fonction est conçu pour la version 7.52 d'ABAP et les versions ultérieures. Elle est semblable à la fonction Z_CUSTOM_RFC_TABLE
, mais elle exploite les 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 beaucoup plus efficace et améliore les performances lorsque vous travaillez avec de grandes tables. Nous vous recommandons d'utiliser Z_CUSTOM_RFC_TABLE_752 RFC
dans la mesure du possible.
Accès à la fonction RFC_READ_TABLE
Cette section fournit des informations sur le rôle à attribuer à un utilisateur SAP pour accéder à la fonction RFC_READ_TABLE. Il s'agit d'un module de fonction compatible avec la télécommande qui permet un accès en lecture générique à des tables arbitraires.
Pour que les tables soient listées sous "Entités" lors de la configuration de la tâche des connecteurs SAP ERP, vous devez utiliser la fonction RFC_READ_TABLE au niveau de la connexion SAP ERP et être autorisé à accéder à la fonction R/3 RFC_READ_TABLE.
Ajoutez l'autorisation S_TABU_DIS pour l'activité 03 (affichage) et le groupe d'autorisation "SC" pour la fonction RFC_READ_TABLE.
Voici quelques-unes des limites techniques de RFC_READ_TABLE:
- Seules les tables avec des types de données simples peuvent être lues. Les champs STRING ou XSTRING ne sont pas compatibles.
- La largeur de ligne maximale est de 512 caractères.
- Le nombre d'enregistrements renvoyés est limité par les seuils de mémoire.
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 base de données de matières 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. |
CLIENTDATA | Chaîne | Oui | Paramètre d'entrée CLIENTDATA. |
CLIENTDATAX | Chaîne | Oui | Paramètre d'entrée CLIENTDATAX. |
MATERIALDESCRIPTION | Chaîne | Oui | La table MATERIALDESCRIPTION. |
Paramètres de sortie de l'action BAPI_MATERIAL_SAVEDATA
Cette action renvoie l'état 200 (OK) si elle aboutit.
Pour savoir comment configurer l'action BAPI_MATERIAL_SAVEDATA
, consultez la section 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 multi-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 qui spécifie les tables du module de fonction à afficher. Si ce paramètre n'est pas spécifié, toutes les tables renvoyées sont affichées. |
T_TABLE | Chaîne | Oui | La table T_TABLE. |
IM_INPUT_1 | Chaîne | Oui | Paramètre d'entrée IM_INPUT_1. |
IM_INPUT_2 | Chaîne | Oui | 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 aboutit.
Pour savoir comment configurer l'action ZFM_GCP_MULTIDATA_TAB
, consultez la section 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" (Synchronisation) et "ASync" (Asynchrone). |
Contenu | Chaîne | Oui | Contenu du fichier. |
Paramètres de sortie de l'action PushIDoc
Cette action renvoie l'état 200 (OK) si elle aboutit.
Pour savoir comment configurer l'action PushIDoc
, consultez la section Exemples d'actions.
Action ExecuteCustomQuery
Cette action vous permet d'exécuter une requête personnalisée.
Pour créer une requête enregistrée, procédez comme suit :
- Suivez les instructions détaillées pour ajouter une tâche de connecteurs.
- Lorsque vous configurez la tâche de connecteur, sélectionnez Actions dans le type d'action à effectuer.
- Dans la liste Action, sélectionnez Exécuter une requête personnalisée, puis cliquez sur OK.
- Développez la section Entrée de la tâche, puis procédez comme suit :
- Dans le champ Délai d'inactivité après, saisissez le nombre de secondes d'attente jusqu'à l'exécution de la requête.
Valeur par défaut :
180
secondes. - Dans le champ Nombre maximal de lignes, saisissez le nombre maximal de lignes à renvoyer à partir de la base de données.
Valeur par défaut :
25
- Pour mettre à jour la requête personnalisée, cliquez sur Modifier le script personnalisé. La boîte de dialogue Éditeur de script s'affiche.
- Dans la boîte de dialogue Éditeur de script, saisissez la requête SQL, puis cliquez sur Enregistrer.
Vous pouvez utiliser un point d'interrogation (?) dans une instruction SQL pour représenter un seul paramètre devant ê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 colonneLastName
:SELECT * FROM Employees where LastName=?
- 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 les points d'interrogation (?) de la requête SQL de manière séquentielle. Par exemple, si vous avez ajouté trois points d'interrogation (?), vous devez ajouter trois paramètres dans l'ordre.
Pour ajouter des paramètres de requête, procédez comme suit :
- Dans la liste Type, sélectionnez le type de données du paramètre.
- Dans le champ Valeur, saisissez la valeur du paramètre.
- Pour ajouter plusieurs paramètres, cliquez sur + Ajouter un paramètre de requête.
- Dans le champ Délai d'inactivité après, saisissez le nombre de secondes d'attente jusqu'à l'exécution de la requête.
En cas d'exécution réussie, 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 de matière à l'aide de l'action BAPI_MATERIAL_SAVEDATA.
- Dans la boîte de dialogue
Configure connector task
, cliquez surActions
. - Sélectionnez l'action
BAPI_MATERIAL_SAVEDATA
, puis cliquez sur OK. - 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 à la suivante dans le champDefault 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\"}" }
Si l'action réussit, 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 de matière à l'aide de l'action BAPI_MATERIAL_SAVEDATA.
- Dans la boîte de dialogue
Configure connector task
, cliquez surActions
. - Sélectionnez l'action
BAPI_MATERIAL_SAVEDATA
, puis cliquez sur OK. - Dans la section Entrée de la tâche de la tâche Connecteurs, cliquez sur
connectorInputPayload
, puis saisissez une valeur semblable à la suivante dans le champDefault 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\"}" }
Si l'action réussit, 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
Cet exemple supprime un enregistrement de matière à l'aide de l'action BAPI_MATERIAL_SAVEDATA.
- Dans la boîte de dialogue
Configure connector task
, cliquez surActions
. - Sélectionnez l'action
BAPI_MATERIAL_SAVEDATA
, puis cliquez sur OK. - Dans la section Entrée de la tâche de la tâche Connecteurs, cliquez sur
connectorInputPayload
, puis saisissez une valeur semblable à la suivante dans le champDefault Value
:{ "HEADDATA": "{\"MATERIAL\":\"000000000000009000\",\"BASIC_VIEW\":\"X\"}", "CLIENTDATA": "{\"DEL_FLAG\":\"X\"}", "CLIENTDATAX": "{\"DEL_FLAG\":\"X\"}" }
Si l'action réussit, 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 multitypes
Cet exemple crée des données de type multidonnées à l'aide de l'action ZFM_GCP_MULTIDATA_TAB.
- Dans la boîte de dialogue
Configure connector task
, cliquez surActions
. - Sélectionnez l'action
ZFM_GCP_MULTIDATA_TAB
, puis cliquez sur OK. - Dans la section Entrée de la tâche de la tâche Connecteurs, cliquez sur
connectorInputPayload
, puis saisissez une valeur semblable à la suivante dans le champDefault 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\"}" }
Si l'action réussit, 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 : Transmettre une IDoc
Cet exemple envoie un IDoc vers SAP ERP.
- Dans la boîte de dialogue
Configure connector task
, cliquez surActions
. - Sélectionnez l'action
PushIDoc
, puis cliquez sur OK. - Dans la section Entrée de la tâche de la tâche Connecteurs, cliquez sur
connectorInputPayload
, puis saisissez une valeur semblable à la suivante dans le champDefault 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" }
. Si l'action réussit, 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 d'entité
Cette section explique comment effectuer certaines opérations d'entité dans ce connecteur.
Exemple : Répertorier tous les enregistrements
Cet exemple liste tous les enregistrements de l'entité T001
.
- Dans la boîte de dialogue
Configure connector task
, cliquez surEntities
. - Sélectionnez
T001
dans la listeEntity
. - Sélectionnez l'opération
List
, puis cliquez sur OK. - Dans la section Task Input (Entrée de la tâche) de la tâche Connectors (Connecteurs), vous pouvez filtrer votre 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
.
- Dans la boîte de dialogue
Configure connector task
, cliquez surEntities
. - Sélectionnez
T001
dans la listeEntity
. - Sélectionnez l'opération
Get
, puis cliquez sur OK. - Dans la section Task Input (Entrée de la tâche) de la tâche Connectors (Connecteurs), cliquez sur EntityId, 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 consulter un exemple de modèle Terraform permettant de créer une connexion, consultez l'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 | Requis | Description |
---|---|---|---|
Client | STRING | Vrai | Le client s'authentifie auprès du système SAP. |
groupe | STRING | Faux | Le groupe de connexion utilisé. En général, vous ne devez spécifier cette valeur que lorsque vous vous connectez à un système SAP qui utilise l'équilibrage de charge. |
message_server | STRING | Faux | Le serveur de messagerie doit être spécifié lorsque vous vous connectez à un système SAP qui utilise l'équilibrage de charge. |
read_table_function | STRING | Faux | Fonction à utiliser pour lire les données de la table. |
connection_scheme | ENUM | Faux | Indique si vous vous connectez à un système SAP avec un serveur de messages (GroupServer) ou sans (ApplicationServer). Les valeurs acceptées sont: ApplicationServer, GroupServer |
system_id | STRING | Faux | L'ID système ou le nom R3 du système SAP est une chaîne de trois caractères maximum. Il est souvent utilisé pour équilibrer la charge des connexions. |
system_number | STRING | Vrai | Nombre par lequel le système cible est défini. Utilisé lors de la définition de la propriété de connexion de l'hôte. |
project_id | STRING | Vrai | ID du projet Google Cloud dans lequel se trouve le bucket Cloud Storage contenant le fichier JAR JCo SAP. |
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 | ID de l'objet de la bibliothèque SNC |
snc_mode | BOOLÉEN | Faux | Valeur booléenne indiquant si vous utilisez SNC. Définissez cette valeur sur "true" pour utiliser SNC. |
snc_name | STRING | Faux | Saisissez le nom de votre connexion SNC (facultatif). |
snc_qop | ENUM | Faux | Qualité de protection de votre connexion SNC.Les valeurs valides sont 1, 2, 3, 8 ou 9, qui correspondent aux niveaux de protection suivants: 1 Appliquer l'authentification uniquement. 2 Appliquez la protection de l'intégrité (authentification). 3 Appliquez la 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 les suivantes: 1, 2, 3, 8 et 9. |
snc_partner_name | STRING | Faux | Nom du SNC du serveur d'application. Ce champ est obligatoire lorsque vous utilisez SNC. |
query_mode | ENUM | Faux | Détermine les tables SAP qui seront affichées en tant que vues, le cas échéant. Les valeurs acceptées sont : "Global", "Local", "All" (Tout) et "None" (Aucun). |
table_mode | ENUM | Faux | Détermine les tables SAP qui seront affichées en tant que vues, le cas échéant. Les valeurs acceptées sont les suivantes: TransparentApplication, TransparentCustomer, TransparentSystem, Pooled, Cluster, All et None. |
verbosité | STRING | Faux | Niveau de verbosité de la connexion, compris entre 1 et 5. Un niveau de verbosité plus élevé consigne tous les détails de la communication (requête,réponse et certificats SSL). |
Résoudre les problèmes de configuration SAP sur site
Si votre système SAP est sur site, vous devez créer un équilibreur de charge proxy avec NEG hybride.
- Créez un tunnel IPsec entre le système sur site et Google Cloud avec des sous-réseaux autorisés.
- Autorisez le sous-réseau d'équilibrage de charge et le sous-réseau proxy dans les pare-feu sur site.
- Ajoutez tous les ports requis, tels que 33XX pour la connexion au serveur d'applications, 36XX pour la connexion au serveur de messages/au serveur de charge balancée et 48XX pour la connexion SNC-X509. XX correspond au numéro de système ou d'instance du système SAP. Ajoutez l'adresse IP requise pour le pare-feu dans la liste d'autorisation d'entrée du projet Google Cloud, par exemple l'adresse IP et le port du LB, ainsi que l'adresse IP et le port du système SAP.
- Configurez un équilibreur de charge réseau proxy interne régional à l'aide de NEG hybride. Pour en savoir plus, consultez Équilibreur de charge réseau proxy interne régional avec connectivité NEG hybride.
Si vous rencontrez une erreur semblable à celle-ci après avoir configuré la connectivité réseau,utilisez la solution de contournement ci-dessous pour ajouter l'adresse IP du rattachement de point de terminaison à la liste d'autorisation.
Initialization of destination SAP--1910584855 failed: Connect from SAP gateway to RFC server failed connection parameters: TYPE=A DESTINATION=SAP--1910584855 ASHOST=10.128.0.43 SYSNR=00 PCS=1 LOCATION SAP-Gateway on host DELVM05S15.bcone.com / sapgw00 ERROR timeout during allocate TIME Wed Apr 3 17:24:40 2024 RELEASE 754 COMPONENT SAP-Gateway VERSION 2 RC 242 MODULE D:/depot/bas/754_REL/src/krn/si/gw/gwr3cpic.c LINE 2208 DETAIL no connect of TP sapdp00 from host 10.128.0.43 after 20 sec COUNTER 2
Glossaire SAP
SAP:terme générique désignant toutes les éditions SAP compatibles. Il s'agit généralement de la version 6 ou ultérieure de SAP ECC. Pour que le connecteur SAP ERP fonctionne, vous devez vous connecter à une édition de SAP compatible avec le SDK RFC.
Module de fonction:type de programme ou de fonction dans SAP qui peut être utilisé pour exécuter presque n'importe quelle opération. Ces modules peuvent être testés et écrits dans SAP via le code SE37.
RFC:un appel de fonction à distance (RFC, Remote Function Call) est un appel à un RFM/FM donné qui peut être exécuté par des applications externes. Cela inclut l'utilisation de bibliothèques distribuées par SAP qui sont installées sur le serveur SAP et peuvent également être téléchargées sur sap.com. Les RFM spécifiques peuvent être conservées ou non lors des mises à niveau de SAP. SAP fournit des modèles RFM standards qui peuvent donc différer ou ne pas exister dans les anciennes éditions. Les modèles RFM personnalisés peuvent être créés (et le sont souvent) pour prendre en charge les intégrations et doivent être gérés par le client SAP. Par convention, les RFM personnalisées commencent par la lettre Z.
BAPI:une API métier (BAPI) est une méthode d'API d'un objet métier, qui est en interne un module de fonction activé par RFC par SAP pour donner accès aux opérations de logique métier. Par exemple, il existe environ 60 BAPI liés uniquement à l'objet "Customer". En pratique, seuls quelques-uns sont généralement utilisés.
Table SAP:table qui stocke des données dans SAP. Il ne s'agit pas des mêmes objets métier. Par exemple, il n'existe pas de table "Bon de commande" dans SAP. En revanche, de nombreuses tables incluent des données de bon de commande, telles que EBAN, EBKN, EINA, EKPO, etc. Par convention, les tables personnalisées commencent par la lettre Z.
Requêtes SAP:une requête SAP est un objet enregistré dans SAP qui détaille les informations à récupérer à partir d'une ou de plusieurs tables. Elles sont généralement utilisées à des fins de création de rapports.
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.Étape suivante
- Découvrez comment suspendre et réactiver une connexion.
- Découvrez comment surveiller l'utilisation des connecteurs.
- Découvrez comment afficher les journaux de connecteur.