Exemple d'écriture de données dans SAP à l'aide du package BAPI SAP

Le package BAPI SAP vous permet de créer un robot qui écrit des données dans la base de données SAP.

Prérequis

Téléchargez le connecteur Java SAP et la DLL sur le site Web de SAP.

Dans ce tutoriel, vous allez créer un robot qui invoque BAPI_FLCUST_CREATEFROMDATA à partir de l'application de démonstration SAP Flight Data. Vous utiliserez le paramètre d'importation CUSTOMER_DATA pour transmettre les données du client à la BAPI. Lorsqu'elle est exécutée, le robot crée un nouvel enregistrement client dans la base de données SAP et affiche le numéro de client renvoyé par la BAPI.

Dans ce tutoriel, nous vous expliquons comment effectuer les actions suivantes :
  • Utiliser la commande Obtenir la structure pour définir les valeurs des paramètres d'importation.
  • Créer un nouvel enregistrement dans un tableau SAP.
  • Recevoir une réponse d'une BAPI.

Procédure

  1. Créez un robot nommé SAP-BAPI-CreateNewFlightCustomer.
    1. Connectez-vous à la Control Room.
    2. Dans le volet de gauche, cliquez sur Automatisation.
    3. Cliquez sur l'icône Créer un robot.
    4. Dans le champ Nom, saisissez SAP-BAPI-CreateNewFlightCustomer, puis cliquez sur Créer et modifier.
  2. Pour connecter le robot à votre système SAP, dans le panneau Actions, recherchez BAPI SAP > Se connecter et ajoutez-le à l'Éditeur de robots.
    1. Dans JCo : Package de connecteur Java SAP, spécifiez le chemin du fichier .jar du connecteur Java.
    2. Dans Dépendance DLL Jco,, spécifiez le chemin du fichier DLL.
    3. Choisissez Serveur d'applications personnalisé comme Type de connexion.
    4. Dans Nom d'hôte du serveur d'applications, spécifiez le nom d'hôte du serveur d'applications SAP.
      Remarque : La pratique recommandée consiste à utiliser le Credential Vault pour spécifier des informations sensibles telles que le nom d'hôte, le nom d'utilisateur et le mot de passe.
    5. Dans Numéro du système, saisissez le numéro d'instance.
    6. Dans Identifiant du système d'instances SAP, saisissez l'ID du système.
    7. Dans Numéro de client, saisissez le numéro de client.
    8. Dans Code de langue de connexion, saisissez FR ou la langue spécifique à votre système.
    9. Dans Chaîne de routeur, saisissez la chaîne de routeur SAP.
    10. Dans Nom d'utilisateur, saisissez votre nom d'utilisateur SAP.
    11. Dans Mot de passe, saisissez votre mot de passe.
    12. Exécutez le robot pour tester la connexion.
      Si les propriétés de connexion spécifiées sont correctes, le robot est exécuté avec succès.
  3. Pour créer une fonction, ajoutez l'action BAPI SAP > Créer une fonction.
    1. Dans Nom d'alias de la fonction, saisissez createNewFlightCustomer.
    2. Dans Nom de la BAPI, saisissez BAPI_FLCUST_CREATEFROMDATA.
  4. Dans la mesure où le paramètre CUSTOMER_DATA est de type structure, vous devez obtenir la structure du paramètre d'importation et l'affecter à un alias. Pour ce faire, ajoutez l'action BAPI SAP > Obtenir la structure.
    1. Dans Nom d'alias de la fonction, saisissez createNewFlightCustomer.
    2. Dans Nom de la structure, saisissez CUSTOMER_DATA.
    3. Pour enregistrer la structure récupérée en tant qu'alias, cliquez sur l'onglet Alias dans la zone Destination.
    4. Dans Créer un alias de la structure, saisissez CustomerData.
      Cet alias vous permettra de définir les valeurs du champ d'importation dans la structure récupérée.
  5. Pour définir la valeur du champ CUSTNAME, ajoutez l'action BAPI SAP > Définir la valeur du champ.
    1. Dans Nom d'alias de la fonction, saisissez createNewFlightCustomer.
    2. Dans Source, cliquez sur l'onglet Structure.
    3. Dans Alias de la structure, saisissez CustomerData.
    4. Dans Nom du champ, saisissez CUSTNAME.
    5. Dans Valeur du champ, saisissez John Doe.
  6. Répétez l'étape 5 pour ajouter et configurer le champ Définir la valeur du champ pour chacun des champs suivants :
    Nom du champ Valeur de champ
    STREET testStreet
    POSTCODE 101001
    CITY testCity
    COUNTR US
    COUNTR 00000000
    EMAIL test@example.com
    CUSTTYPE P
  7. Pour exécuter la fonction BAPI_FLCUST_CREATEFROMDATA, ajoutez l'action BAPI SAP > Exécuter la fonction.
    1. Dans Nom d'alias de la fonction, saisissez createNewFlightCustomer.
    Remarque : Pour que la fonction BAPI_FLCUST_CREATEFROMDATA écrive les données dans la base de données SAP, vous devez sélectionner les options Terminer la séquence et Effectuer une transaction. Si vous sélectionnez l'option Terminer la séquence, veillez à sélectionner l'option Commencer la séquence dans l'action Créer une fonction.

    L'exemple de robot créé à l'aide de ce tutoriel permet de comprendre le fonctionnement des BAPI Create() lors de l'utilisation du package BAPI SAP. Il n'est pas destiné à modifier la base de données.

    La BAPI attribue et renvoie un numéro de client après la création d'un nouvel enregistrement client.
  8. Pour obtenir ce numéro dans une variable, ajoutez l'action BAPI SAP > Obtenir la valeur du champ.
    1. Dans Nom d'alias de la fonction, saisissez createNewFlightCustomer.
    2. Dans Source, cliquez sur l'onglet Fonction.
    3. Dans Nom du champ, saisissez CUSTOMERNUMBER.
    4. Dans Enregistrer la sortie dans une variable, créez une variable nommée strCustomerNumber en cliquant sur (x) et sélectionnez la variable.
  9. Pour afficher le numéro de client, ajoutez l'action Zone de message.
    1. Dans Entrer le message à afficher, sélectionnez la variable strCustomerNumber.
  10. Enregistrez le robot et exécutez-le.