課程目標:git
一、解釋如何構建ReFramework模板; github
二、解釋ReFramework模板是如何工做的;安全
三、使用ReFramework來自動化您本身的流程。架構
ACME System 1 :https://acme-test.uipath.com/login
框架
能夠先去註冊一個,須要注意的地方:學習
而後就能夠跟着課程的步驟實現。測試
業務場景:ui
有一個叫‘UiDemo’的程序,須要實現自動化流程。須要將Excel中的數據,輸入到UiDemo中。這個不難,須要一個Read Range讀取Excel中的數據範圍,存入DataTable,而後遍歷DataTable中的每一行,寫入到UiDemo程序中。然而,這裏的挑戰是因爲有不少的數據要寫入,須要多個機器人同一時間工做,根據解決方案架構師和業務分析,須要將流程分配給多達5個機器人。spa
這個練習的項目涉及到的東西還挺多的。我一步一步的實現。官網課程也有文檔。寫的不夠詳細。我爸本身實現的過程,遇到的問題都記錄下。分享學習。回頭我也把個人項目上傳到GitHub.3d
先到官網下載課程須要的資料。https://academy.uipath.com/learningpath-viewer/1992/1/150802/16
下載Excel和UiDemo.exe文件。還有操做說明文檔PDF。
我用的是 UiPath2020.6版本
而後須要先登入Ochestrator,查看機器人是否配置好。
本地打開Assistant,鏈接成功
發現雲上的Ochestrator不太穩定,常常掉線。致使流程跑起來的時候 中間會報錯,中斷。
建立好了文件的目錄是這樣的:
解壓後將Transactions.xlsx放到\Data\Input中,若是是老版本的studio 就放到Data目錄下就行。
點擊頂部菜單New,選擇Sequence。這是作好的樣子。
選擇Transactions.xlsx,而後讀取Sheet1的內容,Range默認爲空,獲取所有的數據。這裏須要建立一個DataTable類型的數據,來存儲Excel中的內容。
須要編輯的屬性:ItemInformatica,須要將DataTable中的三列數據插入到Queue中。
QueueName,定義隊列名稱,須要和Orchestrator上的隊列名稱一致。
這樣就能夠了。運行一下。而後看Orchestrator,監控菜單下,就能夠看到,將Excel中的數據上傳到隊列中。有日誌數據。
在Data目錄中,須要修改Settings頁中
UiDemoCreDential_REFramework須要在Orchestrator中的Asset中先配置好。注意類型type要選擇Credential。這個是管理UiDemo.exe登入的帳號和密碼。爲了安全考慮,選擇這種方式。studio有提供能夠讀取Windows的憑證,存在Windows的憑證,而後去獲取也行。
Asset name就是UiDemoCreDential_REFramework,而後指定一個默認值,而後能夠選擇機器人,可能每臺機器人登入的帳號和密碼不同,均可以設置。
修改Asset頁,新增一個UiDemoPath,用來指定UiDemo.exe的存放位置。
而後這個UiDemoPath,同樣須要在Orchestrator的Assets中設置好。類型是Text。
在項目目錄下新建個文件夾UiDemo subfolder,存放UiDemo_Login.xaml。
建好的流程如圖:
Arguments:in_Credential
兩個變量Username和Password:類型爲SecureString
GetAppCredentials.xaml是框架裏面寫好的,須要傳這幾個參數;就是上面定義的參數和變量名稱。
這一步須要先打開UiDemo.exe界面,在Main流程中,一開始初始化會先啓動UiDemo.exe。
因此咱們先打開,須要實現輸入登入功能。
添加一個Attach Window,須要先錄製到窗口,
Username:Type into 抓取Username輸入框,Text屬性輸入定義的變量Username+回車鍵
Password:Type Secure Text,在Input的Secure Text輸入Password變量名稱
Login :Click
而後就建立完成!
咱們須要在InitAllApplications.xaml啓動UiDemo.exe
添加一個
將selector選擇器 選中UiDemo.exe窗口,而後修改FileName值:in_Config("UiDemoPath").ToString
這個值就是初始化的時候 框架裏面自帶的功能去去掉Config中表格的數據。這邊直接這麼用就能夠了。
在添加一個Sequece,添加Invoke workflow file
傳入參數值:in_Config("UiDemoCredential").ToString
保存!
CloseAllApplications 、KillAllProcesses.
主要的業務流程在Process。xaml中實現。
CashIn=in_TransactionItem.SpecificContent("CashIn").ToString
OnUsCheck=in_TransactionItem.SpecificContent("OnUsCheck").ToString
NotOnUsCheck=in_TransactionItem.SpecificContent("NotOnUsCheck").ToString
沒有值得,拋出異常,Throw,異常信息:new BusinessRuleException("Input Data Invalid")
有值,繼續判斷 dbl_CashIn是否大於1000.超過1000則拋出異常:new BusinessRuleException("too large")
小於,就進入UiDemo錄入數據。
到這裏整個REF框架實現完畢。
而後能夠運行,看有什麼報錯。
這個多是Orchestrator連接斷開了。常常不穩定。
這篇就先寫到這裏,有問題能夠留言,有什麼不對的地方也歡迎提出來。一塊兒討論。
項目源碼地址:
https://github.com/sanhecao/MyUipath/tree/master/Uipath_REFrameWork_UiDemo