學習大綱
- 界面布局
- 添加活動 (Activities)
- 使用變量
- 使用流程圖 (Flowcharts) 或序列 (Sequences)
1. 界面布局
- Ribbon
- Activities
- Workflow Designer
- Properties
2. FlowChart和Sequence
- Sequence適用於需要執行幾個連續動作的線性過程。
- FlowChart適用於為復雜的活動建立聯系。
- FlowChart和Sequence可以互相嵌套。
- 為FlowChart和Sequence命名,使程序的框架看上去更直觀。
3. 變量
變量用於存儲多種類型的數據。變量的另一個關鍵方面是它們的值可以改變,以便您可以控制循環體執行的次數。
Scope表示變量的應用范圍,比如變量僅在某一個特定的FlowChart中使用,或是能在整個項目中使用。即使在不同的Scope中使用,也需要使用不同的名稱創建變量。
1) 常用變量:
- Integer:整數 (1, 2, 3, 45345)
- String:字符串,通常用引號括起
- Boolean:布爾型,True或False
- Generic:存儲任何類型的數據
- Array of...:任何類型的同類數據的列,例如{1, 15, 36}; {strFirstName, StrMiddleName, strLastName}
2) 添加變量:
- 從“設計”功能區選項卡添加:
- 在“Design” Ribbion的“Variables”組中,選擇“Create Variable” > [Type of Variable]。將顯示“Create Variable”窗口。
- 從右鍵菜單或使用快捷鍵Ctrl + K添加:
- 在任何活動的“Properties”面板中,右鍵單擊可以編輯的字段,然后在菜單中選擇“Create Variable”,或按Ctrl + K。
- 填寫名稱並按Enter鍵。這種方式創建的變量的范圍是它所屬的最小范圍。通過“Manage Variables” > “Promote to Global Scope” 以將所有變量都提升為全局變量。
- 從變量面板添加:
- 在Workflow Designer的下方可以調出變量面板。
- 變量名 Name:必填;變量類型 Type:必填;變量范圍 Scope:必填;變量默認值 Default:可選。
- 在變量面板中修改變量名,將會應用到所有使用此變量的Activities或Workflow中。
3) 刪除變量:
直接在變量面板中選中並按Delete鍵。
- 刪除所有在當前項目中未使用的變量:
- 在“Design” Ribbion的“Variables”組中,選擇“Manage Variables” > “Remove Unreferenced”。
- 變量面板中僅包含自動化過程中使用過的變量。
4) 瀏覽.Net變量類型
搜索變量類型列表中不顯示的類型:
- 在變量面板的變量類型下拉列表中,選擇“Browse for Types”。
- 在“Type Name”字段中鍵入要查找的變量類型的關鍵字,例如Excel。
4. 判斷
FlowChart:Flow Decision
Sequence:If
在Condition里添加判斷條件,可以用And或Or連接。
5. 循環
FlowChart:直接將箭頭指向之前的某個活動就可以構建循環。注意要給循環一個出口,否則就會死循環。
Sequence:While,Do While,For Each
- While:先判斷條件,如果符合條件則執行循環(條件在行動前)。
- Do While:先執行循環,再判斷條件,符合條件則繼續下一輪循環(條件在行動后)。
- For Each:對一個集合里的每個項目執行循環。
For Each 實例:
- Select Folder活動彈出窗口,要求用戶選擇一個文件夾。
- 通過.NET代碼Directory.GetFile()讀取文件夾中的所有文件路徑,並存入數組fileList中。
- For Each循環將數組fileList中的每一個元素(此例中是文件路徑),並顯示在Output窗口中。
-
- For Each的屬性TypeAgrument,用來選擇每個項目(item)的數據類型。
- Directory.GetFiles()是vb.NET語言,Uipath建立在.NET框架上的。
*按下Ctrl鍵可以選擇多個活動。
*GenericValue的連接:"123"+123=123123,123+"123"=246
方法名稱 | 數據類型 | |||
字符串型(String) | 整數型(Integer) | 小數型(Float) | 布爾型(Boolean) | |
Split | √ | 自動轉換為字符串型 | 自動轉換為字符串型 | 自動轉換為字符串: "Ture"或"False" |
Replace | √ | |||
Substring | √ | |||
Length | √ | |||
Contains | √ | |||
Trim | √ | |||
IndexOf | √ | |||
ToUpper | √ | |||
ToLower | √ | |||
ToInt | √ | √ | 取下限 | True=1, False=0 |
ToString | √ | √ | √ | "Ture"或"False" |
6. 練習:猜數字
生成一個0-1000的隨機數讓用戶猜測。如果猜對了則提示並停止程序;如果猜錯了,提示用戶猜測的數字比正確答案大了還是小了,再繼續猜測。
思路:
新建一個Flowchart→Assign:將生成的隨機數賦值給變量rNum→Input Dialog:輸入猜測的數字並賦值給變量gNum,將Label屬性設置為變量Hint用於顯示提示→Flow Decision:判斷gNum是否等於rNum→是則顯示Message Box→否則添加第二個Flow Decision:gNum是否大於rNum→是則Assign:Hint賦值為“猜一個更小的數字”→否則Assign:Hint賦值為“猜一個更大的數字”→將兩個Assign的箭頭拖到Input Dialog處建立循環。
生成隨機數:new Random().Next(0,1000),可以直接谷歌關鍵詞“.NET隨機數”。
*本課使用過的活動、方法、函數等:
- Message Box
- Assign
- Input Dialog
- Write Line
- Excel Application Scope:設置路徑時,如果文件不存在,會自動創建該文件。
- Write Cell:設置工作表名稱時,如果工作表不存在,會自動創建工作表。
- Write Text File
- Select Folder
- Delay:Duration屬性設置延遲的時間,如00:00:20表示延遲20秒鍾。
- Switch:多條件判斷,類似於VBA的Select Case。默認的Case值為整數型,可以在屬性TypeArgument里修改。
- Break:只用於For Each循環。
- Open Application:可以用Indicate window on screen來抓取已經打開的程序,也可以在FileName屬性里填寫程序的路徑。
- Attach Window:連接到已經打開的窗口並執行一系列活動。
- Type Into
- Close Application
- Now:返回項目執行時的日期和時間 (dd/MM/yyyy hh:mm:ss)
- .Substring(0,1):返回字符串的第一個字母。
- .ToString:將數據轉化為字符串類型。
- .Subtract():減去括號內的值。
- new Random().Next(0,1000):生成一個0到1000的隨機整數。