Python可以用來查詢SAP數據庫嗎?SAP可以使用Python嗎?
回答
Python SAP RFC module似乎無效 - last (insignificant) commit 2年前 - 但可以爲您服務:
Pysaprfc是圍繞SAP librfc的包裝(在Windows librfc32.dll,librfccm.so或librfc.so在Linux上)。它使用Thomas Heller的優秀ctypes擴展包訪問librfc並定義SAP兼容數據類型。
現代SAP版本去Web Service
way - 你可以建立一個SAP Web Service
和Python
使用它。
藉助SAP NetWeaver,開發人員可以連接應用程序和數據源,以使用Web服務集成流程。
特別是,開發人員可以使用一種基礎架構以基於行業標準的方式定義,實施和使用Web服務。 SAP NetWeaver支持同步,異步,有狀態和無狀態Web服務模型 - 支持開發人員支持不同的集成方案。
sapnwrfc
支持此功能SAP NetWeaver
,supersedes舊的RFC SDK,並積極維護。
+1:使用urllib2編寫Python web服務非常容易。 – 2009-09-23 17:19:43
偉大的,Web服務是要走的路! – 2009-09-24 10:35:47
這顯然是這個問題的技術答案 - 但如果你只是在寫查詢,爲什麼? SQ01和SQVI提供對數據庫的查詢訪問權限。 – 2009-09-24 13:44:00
SAP不是數據庫服務器。 但是使用Python SAP RFC模塊,您可以很容易地查詢大多數表。它使用一些sap不受支持的功能(世界上所有人都在使用)。這個函數對字段大小和數據類型有一些限制。
那麼,SAP有很多功能...... – 2009-09-24 10:08:07
好吧,您可以將它用作數據庫服務器 - 儘管它非常昂貴:P – Esti 2009-09-29 06:46:31
如果你談論的是(以前被命名)的SAP數據庫AKA SapDb,現在是MaxDB(一會兒也分佈由MySQL公司,now再由SAP只有 - 等命名SAP MaxDB)它帶有幾個Python訪問模塊,記錄在here。
這是我可以附加到「SAP作爲數據庫引擎」的唯一含義 - 您要訪問SAP MaxDB。其他答案做出不同的假設,並且(我相信)在這些不同的假設下也是正確的。
原始問題不是很清楚,您的解釋非常合適。在該領域的SAP安裝不使用SAP MaxDB,所以我猜想的意思有點不同。 – gimel 2009-09-24 04:54:14
其實,我的意思是平均SAP安裝,請原諒我的模糊性。 – 2009-09-24 10:36:34
如上所述,當您只想讀表或執行RFC或BAPI調用時,可以將CPython與未維護的Python SAP RFC模塊或Piers Harding的SAP RFC一起使用。只讀表的RFC調用是RFC_GET_TABLE_ENTRIES或RFC_READ_TABLE,其中前者是首選,但也不會發布給客戶。
對於更正式的方式,您可以使用SAP的JCO連接器與Jython或SAP的.Net連接器與Ironpython;這兩個連接器都可以從SAP的服務市場下載,並且都可以調用RFC功能,包括上面列出的兩個調用。如上所述,SAP提出的訪問後端功能的方式是通過SAP龐大的SOA基礎架構實現的。在這裏你可以使用Jython和例如Axis庫或Ironpython with Microsofts WCF。請注意,由SAP提供的服務顯然不允許您訪問普通表,而只能調用服務提供的內容。 SAP已經提供了大約3.000個服務(參見SDN上的ES Wiki),創建自己的服務實際上已經非常簡單,只要您在啓用遠程的功能模塊中擁有業務邏輯即可。
Python的RFC連接器現在可作爲SAP open source
SAP現在有一個Python的RFC連接器稱爲pyrfc。這取代了sapnwrfc。
這可以被發現在:https://github.com/SAP/PyRFC
「的pyrfc Python包提供了Python綁定的SAP NetWeaver RFC庫,用於調用從ABAP Python和Python模塊ABAP模塊的一個舒適的方式,通過SAP遠程函數調用(RFC)協議「。
@bsrdjan PyRFC是否可以自動執行用戶在SAP GUI上執行的任務? (用於測試自動化) – 2016-09-08 15:12:28
它取決於你想調用的函數,並不是所有函數都被寫入與RFC一起工作。它已經有一段時間了,但深入研究每個函數的文檔將揭示它是否可以通過RFC – hansonap 2016-09-08 21:46:51
調用。如果與[CCo](http://cco.stschnell.de/)或JCo相比較 - PyRFC是否覆蓋了相同的功能? – 2016-09-12 10:26:30
- 1. 我可以使用applet從SAP讀取採購訂單嗎?
- 2. 您可以在SCALA上使用SAP JCO連接器嗎?
- 3. 我可以用sshtunnel使用Python Peewee嗎?
- 4. 可以遞歸使用Python的Bunch嗎?
- 5. 我可以在giraph中使用python嗎?
- 6. pythondotnet可以使用堆棧python 2.7.2嗎?
- 7. 我可以使用GAE + python 2.7 + django.utils.translation嗎?
- 8. python setup.py可以使用輪子嗎?
- 9. python webbrowser模塊可以使用cgi嗎?
- 10. 我可以編輯標準的SAP應用程序嗎?
- 11. 帶有Python的SAP RFC服務器,有可能嗎?
- 12. 你可以在Python 2.4中使用python-daemon嗎?
- 13. 我可以在Python 2.5.6中使用Python 3 super()嗎?
- 14. 可以繼承python @classmethod嗎?
- 15. Python可以運行PyPy嗎?
- 16. PHP可以更像Python嗎?
- 17. 程序員可以去SAP課程的功能模塊嗎?
- 18. 我可以在python中使用sqlite3以後的版本嗎?
- 19. 我可以用Python處理視頻嗎?
- 20. 我可以用python 3.2製作pylibmc嗎?
- 21. 我可以用Python包裝USB棒嗎?
- 22. 這可以用SQLAhclemy/Python來完成嗎?
- 23. Python中可以存在「軟引用」嗎?
- 24. 你可以用python-socketio做django嗎?
- 25. 我可以在Python中調用Perl嗎?
- 26. 可以使用LISTAGG嗎?
- 27. 使用__doPostBack()可以嗎?
- 28. mclapply可以使用CompressedRleList嗎?
- 29. SVD可以使用Skydrive嗎?
- 30. mod_callcenter可以使用mod_sms嗎?
SAP作爲數據庫引擎!你能詳細說明一下嗎? – middus 2009-09-23 20:47:41
我的意思是SAP是一個非常複雜的系統,但爲了這個問題的目的,我只需要能夠得到ABAP程序的輸出(他們稱之爲輸出'list',我認爲)。 – 2009-09-24 10:07:19
你指的是一個叫做「abap list」的東西。從外部獲得相同的輸出並不容易。大部分標準的不是作爲功能實現的。所以如果沒有一些abap編程,你就無法從外部輸出。 – 2009-09-29 07:17:19