python——实现ERP软件自动化操作
软件部分.png
数据部分.png
erp软件操作是个繁琐至极的工作,也许能带来整体数据的优化,但操作十分死板和无聊,通过python中pyautogui和pyopenxl两个包,可以将操作部分实现自动化,平时只需要维护基础excel表格就可以,将如我这般的基础数据工作者,从繁琐工作中解放出来。
pyautogui模块十分简单易上手,主要功能有鼠标操纵,键盘操纵和一些机器视觉的东西。它不通过更改软件本身,而是外设的操作,相当于一个熟练操作软件的人,在不停地工作。
同样,pyopenxl同样容易上手,不同于vba极限操纵excel,只需要了解一点python操作表格基础就能直接将数据写入erp软件。
代码如下:怎么样很容易吧,erp就是点点点,不停的点。简单但是枯燥,上限是熟练度与手速,当你碰到一个不成熟的erp时,会让你痛苦不已的。
import pyautogui import time import openpyxl #防错设定 pyautogui.PAUSE=2 pyautogui.FAILSAFE=True pyautogui.click(163,334)#生产制造 pyautogui.click(337,164)#流程生产任务管理 pyautogui.doubleClick(559,203)#生产报告 #excel数据准备 wb=openpyxl.load_workbook(r'E:\UC\data.xlsx') sheet=wb.get_sheet_by_name('Sheet1') print(sheet.cell(2,1).value) max_row = sheet.max_row #循环读取数据和操作pyautogui操纵uc软件 for i in range(2,max_row): pyautogui.click(156,135)#新增 pyautogui.click(185,203)#选择流程生产订单 pyautogui.click(1165,438)#制单日期向前推 pyautogui.doubleClick(1269,466)#向前推两个月日期 pyautogui.click(1340,441)#空点消除窗口 pyautogui.click(1165,624)#开工日期向前推 pyautogui.doubleClick(1269,651)#向前推两个月日期 pyautogui.click(1340,635)#空点消除窗口 pyautogui.click(1073,514)#产品编码 pyautogui.typewrite(sheet.cell(i,5).value)#输入单元格内编码 # pyautogui.hotkey('alt','y')#按下ALT+Y确定进入选单界面 pyautogui.click(1211,796)#备选方案确定 time.sleep(3)#选单慢等待3秒 #选单界面 pyautogui.click(579,321)#勾选第一个批次 # pyautogui.click(579,321)#再次勾选第一个批次 # pyautogui.typewrite(['enter'])#确定 pyautogui.click(1266,852)#备选方案 time.sleep(2) #完工产出 pyautogui.doubleClick(941,336)#净完工数量生产数 pyautogui.typewrite(str(sheet.cell(i,6).value))#写入生产数 pyautogui.doubleClick(1032,333)#报废数量 pyautogui.typewrite(str(sheet.cell(i,7).value))#写入报废数 pyautogui.doubleClick(1115,333)#检废数量 pyautogui.typewrite(str(sheet.cell(i,8).value))#写入检废数 pyautogui.doubleClick(1300,334)#质量等级 pyautogui.typewrite('0101') pyautogui.doubleClick(1416,335)#单件重量,平均重量 pyautogui.typewrite(str(sheet.cell(i,9).value))#重量填入 pyautogui.doubleClick(1550,336)#工作中心编码(机床) pyautogui.typewrite(str(sheet.cell(i,3).value))#输入机床 pyautogui.doubleClick(1798,335)#生产部门编码 pyautogui.typewrite(str(sheet.cell(i,2).value))#输入班组代号 pyautogui.click(1297,242)#报产日期 pyautogui.typewrite(str(sheet.cell(i,1).value))#输入日期 pyautogui.click(139,135)#保存 pyautogui.click(689,136)#审批 time.sleep(2)#防错 #材料计算部分 pyautogui.click(243,292)#材料消耗 pyautogui.click(211,136)#修改 pyautogui.click(466,137)#计算耗用 pyautogui.doubleClick(1067,345)#发料仓库编码 pyautogui.typewrite('09')#一车间仓 pyautogui.click(1172,343)#空点确认 pyautogui.doubleClick(1066,368)#发料仓库编码 pyautogui.typewrite('09')#一车间仓 pyautogui.click(1190,367)#空点确认 pyautogui.click(570,136)#重量倒挤计算 pyautogui.click(1074,584)#确定 pyautogui.click(137,136)#保存 pyautogui.click(916,137)#耗用 #作业量维护 pyautogui.click(149,290)#完工产出 pyautogui.click(541,136)#单击 pyautogui.click(1406,281)#增行 pyautogui.doubleClick(658,378)#作业编码电费 pyautogui.typewrite('05')#电费代号 pyautogui.doubleClick(1039,333)#实际人数 pyautogui.typewrite(str(sheet.cell(i,10).value)) pyautogui.doubleClick(1038,357)#实际工时 pyautogui.typewrite(str(sheet.cell(i,11).value))#工时输入 pyautogui.doubleClick(1035,382)#实际电费 pyautogui.typewrite(str(sheet.cell(i,12).value))#输入电费 pyautogui.doubleClick(471,335)#生产部门 pyautogui.typewrite(str(sheet.cell(i,2).value))#输入生产部门 pyautogui.click(565,335)#空点确认 pyautogui.doubleClick(473,358)#生产部门 pyautogui.typewrite(str(sheet.cell(i,2).value))#输入生产部门 pyautogui.click(581,356)#空点确认 pyautogui.doubleClick(478,378)#生产部门 pyautogui.typewrite(str(sheet.cell(i,2).value))#输入生产部门 pyautogui.click(573,380)#空点确认 pyautogui.click(1133,334)#作业日期 pyautogui.typewrite(str(sheet.cell(i,1).value))#输入日期 pyautogui.click(1133,355)#作业日期 pyautogui.typewrite(str(sheet.cell(i,1).value))#输入日期 pyautogui.click(1133,380)#作业日期 pyautogui.typewrite(str(sheet.cell(i,1).value))#输入日期 pyautogui.click(136,137)#保存 pyautogui.click(516,101)#作业量维护关闭 #入库操作部分 pyautogui.click(871,137)#执行 pyautogui.click(881,174)#合格入库 time.sleep(2)#弹出界面耗时防错 pyautogui.doubleClick(1021,380)#入库仓库编码 pyautogui.typewrite(str(sheet.cell(i,13).value))#输入仓库代号01成品,02半成品 pyautogui.click(1120,376)#空点确认防错 pyautogui.click(1277,670)#确定 time.sleep(5)#等待5秒进入下次循环有时间纠错
赞 (0)