I am with SAP Corporate Research and we are currently researching how scripting connectors are being used in the field. It would be great to hear from you what kind of applications you have built using the RFC connector? In what area of your company were they used? Are they used officially or just behind the scenes? I am especially keen how you use scripting to add value to the existing SAP solution.
Also, we would be very interested in what made you decide to use Python? Was it libraries or features that were available in Python? Is it especially easy to do certain kinds of development in Python? Or did you use your favorite scripting language because your proficiency level in that language? Were you considering other scripting languages or writing the application within Netweaver itself?
I would be glad to hear from you guys to get an impression on how we provide future options for integrating scripting language into our ecosystem. Thank you very much in advance!
in answer to some of your questions: our experience has been in the use of Jython and JCo. The Python syntax of Jython and ability to use the Java Connector means we can prototype very quickly - and sometimes these prototypes remain in Jython rather than get converted into Java language code.
The absence of Python Connector (PyCo) hasn't been to much of an issue. Although if one existed - we would use it - since we do not extensively use the non-Jco Java classes in our Jython scripts.
We like Python primarily because of our proficiency level in the language. Further we have become to dislike the verbosity and strongly typed nature of Java.
A more recent scripting exploration has been using Python and the win32com extension (available from activestate) in the area of SAPGUI scripting. win32com allows use of the COM objects in Python.
Whilst we do develop in ABAP - some applications just do not justify the overhead of full J2EE - and, in our opinion, our programmers, whilst comfortable in Java, are simply more productive in Python (or Jython - when required).
If you have further questions - feel free to speak to me at andrew-dot-barnard-at-assetcentric-dot-com-dot-au
I've usde pysaprfc in several real-life scenarios. First there were some simple programs to enable currency rates update from data on the web. Python has some excellent libraries to handle http requests and data-scraping. In those programs Python was used behind the scenes - programs were "compiled" to stand-alone Windows executables using py2exe or pyinstaller and delivered as such to the end-users.
Then there are also a cuple of major projects were Python was used "officaly".
The first one was a comunication interface between legacy application implemented in Oracle and SAP system. Python code communicated with Oracle via cx_oracle (a Python module for communication with Oracle RDBMs) and was exposed to ABAP as external functions.
The other application was a communication interface between RF terminals (client was developed using MCL) and SAP. In this case Python was used as a client.
There are three major reasons why I choosed to use Python in forementioned scenarios: my proficeny in Python based on 8+ years of experience with it, productivity and ease of development, and a wealth of libraries enabling interoperability with different systems (RDBMS, message queues, web applications) making Python ideal glue language.
Well guys, thank you very much for your input so far. I hope that some more guys will reply so that I can synthesize the feedback into recommendations on how scripting languages could be put to work.
In general, would it be helpful if SAP supported scripting languages such as Python being executed within the application server (analogous to J2EE or ABAP programs) to code business logic. Could you envision Python being used driving the interface? Or do you think the status quo of scripting languages being used as glue between 3rd party systems and SAP (using RFC/SOAP to access the SAP system) is sufficient for most cases?
Again, thank you very much for your feedback. Your input is definitely valuable and I hope I can deduct some good recommendations from your input.
Did you see into this site?
There is a python connector also but the Klavdij's one is very good and smart.