財(cái)務(wù)的自我修養(yǎng),微信公眾號(hào):機(jī)智出品(jizhjchupin),文中各類(lèi)數(shù)據(jù)文件均可于公眾號(hào)內(nèi)下載
痛點(diǎn):SAP部分業(yè)務(wù)操作重復(fù)化、規(guī)律化;
目標(biāo):無(wú)意義的重復(fù)無(wú)腦操作全部自動(dòng)化;
工具:Python pywin32庫(kù)win32com.client模塊結(jié)合SAP GUI Script;
說(shuō)明:以下代碼來(lái)源網(wǎng)絡(luò)參考思路,無(wú)實(shí)際意義;
推薦閱讀:SAP博客博主Stefan Schnell文章;(SAP腳本工具:https://blogs.sap.com/2014/11/20/scripting-tracker-development-tool-for-sap-gui-scripting/)
零、前奏:
通過(guò)Stefan Schnell分享的scripting Tracker工具摸清SAP樹(shù)形結(jié)構(gòu)ID屬性,當(dāng)然你也可以去看SAP GUI Script API文檔。

一、需要的庫(kù)
import win32com.client
二、獲取SAP GUI
SapGuiAuto = win32com.client.GetObject("SAPGUI")
application = SapGuiAuto.GetScriptingEngine
connection = application.Children(0)
session = connection.Children(0)
三、登錄
#登錄
session.findById("wnd[0]/usr/txtRSYST-BNAME").text = "user"
session.findById("wnd[0]/usr/pwdRSYST-BCODE").text = "password"
session.findById("wnd[0]").sendVKey(0)
三、重復(fù)10000遍的操作
#主程序
def main(session):
session.findById("wnd[0]/tbar[0]/okcd").text = "mm03"
session.findById("wnd[0]").sendVKey(0)
session.findById("wnd[0]/usr/ctxtRMMG1-MATNR").Text="9000000000012"
session.findById("wnd[0]").sendVKey(0)
session.findById("wnd[1]/tbar[0]/btn[0]").press()
session.findById("wnd[0]/usr/tabsTABSPR1/tabpSP02").select()
if __name__ == "__main__":
main(session)
...................................................The end....................................................
歷史文章
01、如何利用Python爬蟲(chóng)爬取智聯(lián)招聘并存為Excel
02、Python獲取股票基金行情并發(fā)郵箱提醒
03、Flask+Echarts+sqlite搭建股票實(shí)時(shí)行情監(jiān)控
04、建立中國(guó)石化(600028)CAPM模型
05、從全場(chǎng)6788支基金選出基金中的戰(zhàn)斗“雞”(一)
06、基于SVM上證指數(shù)漲跌預(yù)測(cè)
07、[小工具]批量自定義修改文件名
