Sont la propriété industrielle API BAPI de SAP, ou tout simplement un emballage pour autre chose?

StackOverflow https://stackoverflow.com/questions/1539461

  •  20-09-2019
  •  | 
  •  

Question

Alors, je viens de se faire plaquer au milieu d'un projet impliquant SAP. , Je dois utiliser spécifiquement BAPI API pour SAP tirer un tas d'informations sur le système SAP « du client ». Étant donné que SAP est une plate-forme fermée, j'ai eu du mal à trouver un aperçu de haut niveau de qui / quoi / où / quand / comment SAP et BAPI. Plus précisément

  1. est BAPI juste un wrapper pour SOAP et / ou XML-RPC, ou est-il un format de communication entièrement propriétaire?

  2. Y at-il une extension PHP ou d'une bibliothèque pour travailler avec ces API?

  3. Je l'ai vu l'acronyme ABAP jeté autour. Qu'est-ce que cela signifie, et où il ne rentre dans les choses?

A ce moment, je suis à la recherche de bonnes ressources qui peuvent me donner la vue 10 000 pieds. Je sais que vous pourriez passer toute une vie à travailler avec ces systèmes ERP et ne comprends toujours pas la chose. Je veux juste une vue d'ensemble donc je peux parler aux gens de SAP « du client » et non pas sonner comme un newb complet.

Était-ce utile?

La solution

BAPI signifie B usiness A pplication P rogrammation I nterface.

L'objectif de SAP lors de l'introduction de BAPI était de fournir ...

  • bien défini
  • stable
  • la mise en œuvre indépendante
  • bien documenté

fournir API d'affaires de l'accès standardisé à des solutions SAP au niveau sémantique.

est toujours, BAPI sont des interfaces SAP propriétaires.

Les interfaces BAPI fournissent un accès unifié à la fonctionnalité de niveau d'application, indépendante du type d'appel: deux le traitement synchrone et asynchrone peut être déclenchée par l'utilisation de ces interfaces.

Traitement synchrone d'un BAPI entraînera l'exécution d'un RFC (Remote Function Call, protocole RPC exclusive de SAP).

Le traitement asynchrone permet une utilisation transparente par des ALE (Application Link Enabling, format EDI propriétaire de SAP).

Des produits comme le webMethods adaptateur SAP (SAP Business Connector alias) offrent un accès de niveau de service bidirectionnel à BAPI ainsi que le niveau inférieur des protocoles RFC et ALE à partir de / vers une destination distante.

L'utilisation de ces outils il n'y a pas besoin de se soucier ABAP, le langage de programmation 4GL toute la logique métier de SAP est mis en œuvre.

Il y a aussi plusieurs applications XML définis pour ce BAPI (ainsi que RFC et IDocs) qui permettent de transmettre des documents d'affaires dans une enveloppe XML. Ceux-ci sont les plus visibles

  • BXML (Content-Type: application / x-sap.busdoc)
  • RFC-XML (Content-Type: application / x-sap.rfc)
  • IDOC-XML (Content-Type: application / x-sap.idoc)

ainsi que SOAP.

Autres conseils

D'accord, je vais lui donner un coup de feu ...

  1. ABAP est le langage de programmation le plus du système SAP est écrit. C'est essentiellement une version 4 / GL de COBOL avec une SQL ajoutée.

  2. BAPI ( "API Business") est la spécification d'interface de SAP et une façon d'obtenir des informations sur le système. Je dirais que la façon la plus simple de le regarder est comme un appel de procédure à distance dans le système SAP, vous donnant accès aux données et la fonctionnalité (writtten ABAP) qui est dans le SAP. Il vous donne une API pour extraire des données du système (par exemple une commande), le modifier dans votre application (par exemple, ajouter des positions à l'ordre), puis le poster en arrière et appeler également des fonctions commerciales (par exemple, poster cet ordre il est donc plus traité dans le système SAP).

  3. Il y a des wrappers pour appeler BAPI à partir d'un certain nombre de langues. Juste Google ou une recherche dans le système d'aide de SAP ou du réseau de développeurs de sève en ligne à sdn.sap.com

Bonne chance à ne pas ressembler à un newb .. ou tout simplement l'admettre ... Bonne chance!

  1. Oubliez BAPI pour une seconde. SAP a un protocole de communication propriétaire appelé RFC (appel de fonction à distance). SAP fournit une dll (ou bibliothèque partagée pour * nix) que vous pouvez utiliser pour appeler des fonctions dans SAP de c. SAP fournit également des emballages de ce dll pour Java et .net. Et il y a des wrappers open source de cette dll pour php, python, perl et rubis. Ainsi, le processus est. a) quelqu'un développer une fonction (à distance activée) dans ABAP. b) vous pouvez utiliser la dll rfc, avec l'enveloppe pour langue de votre choix, et appeler cette fonction de sève. c) tout le monde est heureux.

    permet de revenir à BAPI. Sur la base de la technologie décrite dans la section précédente. SAP a décidé de créer un ensemble de fonctions qui font des choses d'affaires. Et ils ont décidé de les appeler BAPI. Parce que le nom « Les fonctions qui font des choses d'affaires » est pas cool.

  2. Voici le php extention pour appeler la sève. Vous pouvez également trouver beaucoup d'informations sur php et la sève dans la sève Sdn .

  3. ABAP est la langue de la plate-forme de sève.

BAPI sont à distance des modules fonctionnels qui ont permis une programmation « normes » qui leur sont rattachés si l'on veut les appeler « BAPI », par exemple messages retournés dans certains formats, les paramètres typés d'une certaine façon. Ils sont vraiment rien de plus que des modules fonctionnels SAP activés pour la communication à distance via un bouton radio.

je suis en désaccord que l'on ne devrait pas avoir à écrire du code SAP, parce que SAP a fourni tant de BAPI pour couvrir la plupart des choses standard. Juste au sujet de chaque mise en œuvre nécessite un code et les trucs de SAP livré est juste la base. Les gestionnaires et les types de ventes vont dire différemment, mais qui est tout simplement pas la réalité.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top