API SAP Data - Automate_Studio_Manager - Automate_Evolve - Latest

Guide d'utilisation d'Automate Evolve

Product type
Logiciels
Portfolio
Integrate
Product family
Automate
Product
Automate > Automate Studio Manager
Automate > Automate Evolve
Version
Latest
Language
Français
Product name
Automate Evolve
Title
Guide d'utilisation d'Automate Evolve
Copyright
2024
First publish date
2018
Last updated
2024-09-06
Published on
2024-09-06T16:07:07.344000

L'API SAP Data permet de télécharger des données vers et depuis SAP. Cette API est disponible pour Evolve et Studio Manager. L'API expose le contenu JSON et d'autres détails (comme les paramètres d'exécution de SAP, etc.) pour publier des données sur SAP. Le RSI sera synchronisé pour tous les environnements (Développement, QA et Production) mais la facturation ne sera exécutée que pour le système de production.

Remarque :

 L'API SAP Data ne prend pas en charge les scripts chaînés ou plusieurs scripts. L'API SAP Data prend en charge uniquement une transaction unique. Evolve Web et Service Worker ne prennent pas en charge les transactions basées sur des scripts GUI, ce qui signifie qu'elles ne sont pas non plus prises en charge par l'API SAP Data. Les requêtes avec des critères IN utilisant un chemin d'accès dynamique vers un fichier fixe ou défini par l'utilisateur ne sont pas prises en charge.

Conditions requises

Voici les deux conditions prérequises à l'utilisation de cette fonctionnalité.

  1. La licence d'API SAP Data doit être activée sur le système Evolve.

  2. La valeur de la clé SapIntegrationAPIEnable doit être définie sur True.

Une fois la licence correctement activée, l'application configurera également la variable système SapIntegrationAPIEnable et la définit sur to automatiquement dans les Paramètres avancés ( Administration → Système → Paramètres avancés). Pour désactiver la fonction SAP, définissez cette valeur sur false.

Seuls les Administrateurs globaux sont autorisés à ajouter ou gérer les licences. La licence d'intégration SAP est la licence requise pour l'API SAP Data ; le type peut être Abonnement (Par niveau -bande de niveau) ou Abonnement (Volume - Bande de volume). La clé des Paramètres avancés SapIntegrationAPIEnable ne peut être activée que si l'utilisateur dispose d'un type de SKU de licence d'intégration SAP valide. SapIntegrationApi est sécurisé par l'API gateway et son mécanisme d’authentification pris en charge.

Vous pouvez accéder à l'API SAP Data à partir d'Evolve. Pour les détails sur l'enregistrement des solutions des API SAP Data sur Evolve, les paramètres d'approbation de l'API SAP, et l'ajout ou la mise à jour de l'API SAP depuis l'onglet Solutions, voir API SAP Data avec Evolve.

Vous pouvez créer des scripts pour l'API SAP Data et transmettre ces scripts à Evolve via Studio. Voir API SAP Data avec Studio pour en savoir plus.

Remarque :

  • Utilisez « ErrorCode » de la réponse de l'API, au lieu du champ « Message ». Certains codes d'erreur, les données du champ Message peuvent être en anglais, d'autres, dans la langue par défaut de l'utilisateur.

  • Conformément à la norme JSON, « \ » n'est pas une chaîne valide, car le validateur JSON ne prend pas en charge ce caractère. Par conséquent, vous devez ajouter « \\ » pour reconnaître les données « \ ».

  • Pour la prise en charge du caractère d'échappement pour JSON, vous devez le faire précéder de « \ ».

Par exemple : « \n » et « \t » passera par le validateur JSON, mais ils seront remplacés par un espace. Vous devez donc utiliser \\n et \\t.

Pour l'accès à une API quelconque, le Préfixe de routage est requis. Le préfixe de routage est une combinaison de l'URL d'Evolve et de mots-clés spécifiques.

Pour l'URL d'Evolve, l'utilisateur doit spécifier le numéro de port, sauf s'il ne s'agit pas du numéro de port par défaut. Par exemple, si nous disposons d'un site Evolve au port 80 par défaut, nous pouvons utiliser les deux URL Evolve ci-dessous pour accéder à l'API.

  • http://cha-de-vstpnx1.wsdt.local:80/svr/api/v1/Processextn/GetAllAssignments

  • http://cha-de-vstpnx1.wsdt.local/svr/api/v1/Processextn/GetAllAssignments.

Pour trois options de sécurité, les préfixes de routage suivants doivent être utilisés pour accéder à l'API :

Code secret client : “<Evolve URL>/svr”

Jeton de sécurité : “<Evolve URL>/svr”

Certificat : “<Evolve URL>/svrc”

Remarque :

 Pour l'API SAP Data, lorsque l'utilisateur sélectionne une solution pour afficher l'API SAP Data, l'URL de solution s'affiche sous la forme « <BaseURL/GatewayURL>/api/v1/SAPIS ».

BaseURL/GatewayURL est le préfixe de routage.

BaseURL : URL d'Evolve

GatewayURL : “svr” pour le code secret client et le jeton de sécurité et “svrc” pour le certificat.

Corps de la requête et de la réponse

Pour charger et télécharger des données à partir de SAP à l'aide de l'API SAP Data, la structure du corps de la requête et de la réponse sera la suivante :

Requête :

Le corps de la requête contient les éléments suivants :

Nom Type Restriction Description
SolutionDetail JObject Obligatoire

Informations sur la solution avec les paramètres suivants :

  • SolutionName : nom de la solution de l'API SAP Data.

    Type : chaîne

    Restriction : obligatoire.

  • LibraryName : nom de la bibliothèque de la solution de l'API SAP Data.

    Type : chaîne

    Restriction : obligatoire.

  • AppName : nom de l'application de la solution de l'API SAP Data.

    Type : chaîne

    Restriction : obligatoire.

 

RunParameter JObject Obligatoire Définit les données qui doivent être validées/publiées sur SAP. Reportez-vous à l'exemple de charge utile d'entrée pour les détails du champ. Les données à définir dépendent de chaque exécution spécifique.
SapDetails JObject Obligatoire

Contient des informations sur la solution avec les paramètres suivants :

  • ConnectionName: nom de la connexion SAP sur laquelle l'exécution de l'API doit être exécutée.

    Type : chaîne

    Restriction : obligatoire.

  • EvolveUser: nom d'utilisateur de l'utilisateur qui exécutera l'API SAP Data. L'utilisateur Evolve doit avoir un rôle de Créateur.

    Type : chaîne

    Restriction : obligatoire.

    Exemple : wse\\username

    (wse correspond au domaine,

    username correspond au nom de l'utilisateur.)

  • SAPUser : nom de l'utilisateur SAP pour établir la connexion SAP.

    Type : chaîne

    Restriction : en option

  • SAPPassword : mot de passe de l'utilisateur SAP.

    Type : chaîne

    Restriction : en option.

  • SAPLanguage : valeur de langue SAP à envoyer lors de l'établissement de la connexion SAP dans une langue spécifique.

    Type : chaîne

    Restriction : en option.

  • WindowsCredentials : nom d'utilisateur et mot de passe pour l'authentification Windows, si l'authentification doit être effectuée avec les informations de connexion Windows.

    Type : JObject de UserName et Password. Voir l'exemple de charge utile d'entrée.

    Restriction : en option.

Il est conseillé d'enregistrer les informations d'identification SAP ou Windows sur Evolve en fonction de l'utilisateur Evolve, afin d'éviter que le mot de passe ne soit transmis en texte clair via l'appel réseau lors de l'exécution de l'API par un client tiers.

RequestParameter JObject -

Ce champ contient des informations sur les paramètres suivants :

  • Valider : cette valeur est définie sur true si les données doivent uniquement être validées (les données ne seront pas publiées sur SAP).

    Type : Booléen.

    Restriction : en option.

Réponse :

Le corps de la réponse contient les éléments suivants :

Nom Type Restriction Description
RunResponse JObject -

Contient des informations sur l'exécution avec les paramètres suivants :

  • Success : retourne true si l'exécution est réussie sinon, retourne false.

    Type : Booléen.

  • LogField : ces informations de LogField sont similaires aux détails que nous obtenons dans le champ Journal après l'exécution à partir du client Studio.

    Type : chaîne

  • RunResult : objet Json qui contient les champs retournés par SAP, et mappés en tant que champs de téléchargement. Reportez-vous à l'exemple de charge utile de sortie pour les détails.

    Type : JObject (ce champ change de valeur en f onction du résultat de l'exécution retourné).

 

Erreur :

Le corps de l'erreur contient les éléments suivants :

Nom Type Restriction Description
Tableau fixe pour les spécifications d'erreur Jarray -

Contient des informations sur l'exécution avec les paramètres suivants :

  • ErrorCode : retourne le code d'erreur en cas d'échec de l'exécution.

    Type : chaîne

  • Message : retourne le message correspondant au code d'erreur retourné.

    Type : chaîne

  • errorParameters : si l'exception comporte d'autres détails qui ne font pas partie du “Message”, ces détails sont partie d'errorParameters. Sinon la valeur null sera retournée.

    Type : tableau de chaînes

Exemple de requête et de réponse

Spécification d'API pour Transaction

La charge utile montre la liste combinée des charges utiles d'entrée, de sortie et d'erreur.

Format de date et de nombre

Le format de date ISO est sélectionné, car il est bien connu et largement utilisé. Il est utilisé dans différentes langues et convient parfaitement pour le convertir au format de profil utilisateur SAP.

Le format de date et de nombre suivant est transmis dans le contenu de l'API SAP. Le format de la date et du nombre est validé.

Format de date (« aaaa-MM-jj »), par exemple, (2021-06-09)

Format décimal (99999999.999), par exemple, (12345.678)

Utilisation de la charge utile d'entrée et de sortie : pour Transaction et BAPI, l'utilisateur doit sélectionner la charge utile d'entrée pour publier les données SAP et la charge utile de sortie pour télécharger les données depuis SAP.

La charge utile d'erreur est commune pour Transaction/BAPI/Query et elle affiche l'erreur à l'utilisateur.

Exemple de requête :

Charge utile de la requête

{ "SolutionDetail": { "SolutionName": "string", "LibraryName": "string", "AppName": "string" }, "RunParameter": { "Material_Number": "string", "Material_Description__Short_Text_": "string", "Gross_Weight": "0.0", "Net_Weight": "0.0" } , "SapDetails": { "ConnectionName": "string", "EvolveUser": "string", "SAPUser": "string", "SAPPassword": "string", "SAPLanguage": "string", "WindowsCredentials": { "UserName": "string", "Password": "string" } }, "RequestParameter": { "Validate": "bool" } } 

Exemple de réponse :

Charge utile de la réponse

{ "RunResponse":{ "Success": "bool", "LogField": "string", "RunResult": { "Base_Unit_of_Measure": "string", "Material_Group": "string", "Weight_Unit": "string" } } } 

Exemple d'erreur :

Charge utile de l'erreur

[ { "ErrorCode": "string", "Message": "string", "errorPrameters": [{"string"}] } ] 

Spécification d'API pour Query

La charge utile montre la liste combinée des charges utiles d'entrée, de sortie et d'erreur.

Utilisation de la charge utile d'entrée et de sortie : pour Query, l'utilisateur doit sélectionner la charge utile d'entrée à transmettre les champs de critère du constructeur de clause et la charge utile de sortie sera utilisée pour télécharger les données depuis SAP.

La charge utile d'erreur est commune pour Transaction/BAPI/Query et elle affiche l'erreur à l'utilisateur.

Exemple de requête :

Charge utile de la requête

{ "SolutionDetail": { "SolutionName": "string", "LibraryName": "string", "AppName": "string" }, "RunParameter": { "MAKT_Language_Key": { "EqualToOp1": "string" } }, "SapDetails": { "ConnectionName": "string", "EvolveUser": "string", "SAPUser": "string", "SAPPassword": "string", "SAPLanguage": "string", "WindowsCredentials": { "UserName": "string", "Password": "string" } }, "RequestParameter": { "RecordCount": "0", "GetRecordsCountOnly": "bool" } }

Exemple de réponse :

Charge utile de la réponse

{ "RunResponse":{ "Success": "bool", "LogField": "string", "RecordCount": "0", "RunResult": [{ "MARA_Material_Number": "string", "MAKT_Language_Key": "string", "MAKT_Material_Description__Short_Text_": "string", "MARA_Gross_Weight": "string", "MARA_Net_Weight": "string" }] } } 

Exemple d'erreur :

Charge utile de l'erreur

[ { "ErrorCode": "string", "Message": "string", "errorPrameters": [{"string"}] } ]