Question

Python peut être utilisé pour interroger une base de données SAP?

Était-ce utile?

La solution

module RFC SAP Python semble inactif - dernier (insignifiant) commettre il y a 2 ans - mais peut vous servir:

  

Pysaprfc est un wrapper autour de SAP librfc (librfc32.dll sous Windows, ou librfccm.so librfc.so sous Linux). Il utilise l'excellent package extension ctypes par Thomas Heller pour accéder librfc et de définir des types de données SAP compatibles.

Les versions SAP modernes vont Web Service façon - vous pouvez construire un SAP Web Service et consommer de Python.

  

Avec SAP NetWeaver, les développeurs peuvent se connecter des applications et sources de données pour intégrer les processus utilisant les services Web.

     

En particulier, les développeurs peuvent utiliser une infrastructure pour définir, mettre en œuvre et utiliser les services Web d'une manière basée sur les standards de l'industrie. SAP NetWeaver prend en charge synchrone, asynchrone, les modèles de service Web avec et sans état -. Permettant aux développeurs de prendre en charge différents scénarios d'intégration

sapnwrfc prend en charge cette fonctionnalité de SAP NetWeaver, remplace l'ancien RFC SDK et sont tenus à jour.

Autres conseils

connecteur Python RFC est maintenant disponible SAP open source

Si vous parlez (ce qui était nommé) la base de données SAP AKA sapdb , et est maintenant MaxDB (pendant un certain temps distribué aussi par MySql Inc, maintenant à nouveau par SAP uniquement - et ainsi nommé SAP MaxDB ), il est livré avec plusieurs modules d'accès Python, documentés .

Ceci est le seul sens que je peux joindre à « SAP comme moteur de base de données » - que vous souhaitez accéder à SAP MaxDB. D'autres réponses font des hypothèses différentes et (je crois) sont également correctes ... sous ces différentes hypothèses.

Sap est pas un serveur de base de données. Mais avec le module RFC SAP Python vous pouvez interroger plus facilement la table. Il utilise une fonction non pris en charge la sève (que tout le monde utilise). Et cette fonction a une certaine limitation de la taille du terrain et des types de données.

SAP dispose désormais d'un connecteur RFC Python appelé pyrfc. Cette remplace sapnwrfc.

se trouve à: https://github.com/SAP/PyRFC

"Le package pyrfc Python fournit des liaisons Python pour la bibliothèque RFC SAP NetWeaver, une façon confortable d'appeler des modules ABAP de modules Python et Python de protocole ABAP, via SAP Remote Function Call (RFC)."

Comme indiqué plus haut, quand vous voulez juste lire les tableaux ou faire RFC ou des appels BAPI, vous pouvez utiliser CPython avec le module RFC SAP unmaintained Python ou Piers Harding SAP RFC . Le RFC appelle à lire juste une table sont RFC_GET_TABLE_ENTRIES ou RFC_READ_TABLE, où le premier est préféré, mais pas non plus fournir aux clients.

Pour une façon plus officielle, vous pouvez utiliser le connecteur JCO de SAP avec Jython ou SAP .Net Connector avec IronPython; Les deux connecteurs peuvent être téléchargés sur le marché des services de SAP et les deux permettent d'appeler la fonctionnalité RFC, y compris les deux appels mentionnés ci-dessus.

Comme il est également indiqué ci-dessus, la voie proposée par SAP pour accéder aux fonctionnalités de back-end est via vaste infrastructure SOA de SAP. Ici, vous pouvez utiliser Jython avec par exemple la bibliothèque Axis ou IronPython avec Microsofts WCF. Notez que les services fournis par SAP évidemment ne vous permettra pas d'accéder aux tables simples, au lieu que vous ne pouvez appeler, ce service fournit. SAP fournit déjà sur les services (voir 3,000 Wiki ES sur NRS) et la création de votre propre service est en fait mort simple, une fois que vous avez votre logique métier dans un module de fonction activée à distance.

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