iT邦幫忙

2021 iThome 鐵人賽

DAY 14
0
Software Development

Blue Prism 精靈之手與神同行之防疫特助系列 第 14

Day14. Blue Prism拯救貧窮大作戰第二彈-BP新增一個讀取Excel的『Objects』

由於疫情的關係有幾周的人員分流上班的機會,
我與小朋友在家遠端連線Google Meeting與小朋友的老師上線上課程,
正好奇老師竟然請同樣是教師退休的老婆代課一、兩堂。
就於下課之際,我私下與老師一談,才知道老師考卷還沒改完,
即便改完了,還要分等級寫評語,在確認一切無誤後交付學校;
這讓我想起以前家父也是教師,常常因為上課忙到餐餐誤時,
就於此時,我那扶弱濟傾的正義性格被挑起了,
拍拍胸脯,告訴老師,我有辦法!!

有感受到嗎?每一彈的拯救貧窮,接下來就是幾日連續的實作分享喔!
既然之前能以日常情境用幾個鐵人賽工作天,
幫助前同事表哥把店家/套餐價目表有如魔術般的自動處理,
當然在小孩的老師面前也不能示弱,
我跟他侃侃而談目前科技的進步,
也一方面想要展示我與「科技哥」的多年好友關係,
因此,我請老師給我點時間展示一下我優雅自動化特助的戰鬥力。。。

顧慮到老師的飯碗恐因過忙而不保,
所以決定再次踏上拯救貧窮大作戰的路,
以下我還是用幾個鐵人賽的工作天,
來簡單說明如何實現「分數自動分級交付學校」的神蹟。。。

 本集預告

BP新增一個讀取Excel的『Objects』
目的: 建立一個讀取Excel的Object讓其他流程重複使用。

(基於小朋友個資,只能以簡單案例來詮釋)
1. 作業前準備:製作一個學生名錄/分數表
https://ithelp.ithome.com.tw/upload/images/20210914/20141198dLpDnfrMN8.png


2. 開啟Blue Prism,於Objects分支下建立一個群組(Create group): ExcelTest
https://ithelp.ithome.com.tw/upload/images/20210914/20141198ubNW78vjX9.png
3. 於群組資料夾下建立一個物件(Object): ReadExcelTest
https://ithelp.ithome.com.tw/upload/images/20210914/20141198oF4Snv7g5e.png

(1). 輸入Object的名稱,並按下Next
https://ithelp.ithome.com.tw/upload/images/20210914/20141198lN4kcDB8NB.png

(2). 可暫不填寫,按下Finish
https://ithelp.ithome.com.tw/upload/images/20210914/20141198DaI9KRgsrW.png
(3). 完成後,點擊該物件,即開啟編輯畫面
https://ithelp.ithome.com.tw/upload/images/20210914/20141198u77CbMk4Ka.png

4. Create Instance創建實例Action
(1). 點擊編輯畫面中Action頁籤,將看到Start、End的起始與結束圖示。
(2). 於Start之下新增一個Action,名稱為:Create Instance
A. 於左邊流程圖示工具區拖曳一個Action到Start之下
https://ithelp.ithome.com.tw/upload/images/20210914/2014119892ps7zBkw7.png
B. 開啟Action的設定畫面:兩下點擊Action1,將出現Action Properties的屬性設定畫面。
https://ithelp.ithome.com.tw/upload/images/20210914/20141198qwHRusyCdh.png

C. 設定屬性資訊(依照如下屬性設定)
Name:Create Instance
Business Object: MS Excel VBO
Action: Create Instance
https://ithelp.ithome.com.tw/upload/images/20210914/20141198yK1pqTMZDR.png
D. 設定該Action的輸入(Input): 此部分可暫不設定。
E. 設定該Action的輸出(Output):
handle的Store In 點擊方塊小圖以使用預設handle(此時右邊的資料類型於number中增加一個handle的分支)
https://ithelp.ithome.com.tw/upload/images/20210914/20141198fSm8yvTgIn.png
F. 設定該Action的條件(Conditions): 此部分可暫不設定。
https://ithelp.ithome.com.tw/upload/images/20210914/20141198Ww5mMJBfmn.png

G. 按下OK,新增完成該Create Instance 的Action:
旁邊有剛剛點擊預設產生的資料暫存(DataItem): handle。
https://ithelp.ithome.com.tw/upload/images/20210914/20141198qVwLxFxU8T.png

5. Open Workbook開啟工作簿 Action
(1). 於Create Instance 的Action之下複製一個Action,名稱為: Create Instance
A. 點選Create Instance的Action,Ctrl+c , Ctrl+v產生一個相同名稱的Action到Create Instance之下
https://ithelp.ithome.com.tw/upload/images/20210914/20141198DUtXSO1jKf.png
B. 開啟下方的Action的設定畫面:兩下點擊下方的Action,將出現Action Properties的屬性設定畫面。
https://ithelp.ithome.com.tw/upload/images/20210914/20141198hnece4QQCh.png

C. 設定屬性資訊(依照如下屬性設定)
Name:Open Workbook
Business Object: MS Excel VBO
Action: Open Workbook
https://ithelp.ithome.com.tw/upload/images/20210914/20141198K92a3pq5vs.png
D. 設定該Action的輸入(Input):
Handle屬性:拖曳右方的handle到Value中。
File Name屬性:複製前面準備好的Excle檔所在路徑(含檔名)。Shift + Right click > 複製路徑
https://ithelp.ithome.com.tw/upload/images/20210914/20141198AqpbZNaxXe.png

https://ithelp.ithome.com.tw/upload/images/20210914/20141198iUwAZJ5Rap.png
E. 設定該Action的輸出(Output):
Workbook Name的Store In 點擊方塊小圖以使用預設Workbook Name(此時右邊的資料類型於Text中增加一個Workbook Name的分支)
https://ithelp.ithome.com.tw/upload/images/20210914/20141198l0ezsO2hpy.png
F. 設定該Action的條件(Conditions): 此部分可暫不設定。
https://ithelp.ithome.com.tw/upload/images/20210914/20141198Hm7iWI0dUg.png

G. 按下OK,新增完成該Open Workbook的Action:
該Action旁邊有剛剛點擊預設產生的資料暫存(DataItem): Workbook Name。
https://ithelp.ithome.com.tw/upload/images/20210914/20141198nYfkgxm7tV.png

6. Read An Excel讀取Excel的 Action
(1). 於Open Workbook 的Action之下複製一個Action,名稱為: Open Workbook
A. 點選Open Workbook的Action,Ctrl+c , Ctrl+v產生一個相同名稱的Action到Open Workbook之下
https://ithelp.ithome.com.tw/upload/images/20210914/201411983YyuqoRWMy.png
B. 開啟下方的Action的設定畫面:兩下點擊下方的Action,將出現Action Properties的屬性設定畫面。
https://ithelp.ithome.com.tw/upload/images/20210914/20141198ZDKFgj0jAg.png

C. 設定屬性資訊(依照如下屬性設定)
Name: Read An Excel
Business Object: MS Excel VBO
Action: Get Worksheet as Collection
https://ithelp.ithome.com.tw/upload/images/20210914/20141198epAMtdx01X.png
D. 設定該Action的輸入(Input):
Handle屬性:沿用之前的設定[handle]
Workbook Name屬性:從右方資類型Text的分支Workbook Name拖曳到Value中。
WorkSheet Name屬性:輸入Excel中資料頁籤的名稱。前後要加雙引號。本次為”工作表1”。
https://ithelp.ithome.com.tw/upload/images/20210914/20141198qtKZAvb8Ez.png
E. 設定該Action的輸出(Output):
Data的Store In 點擊方塊小圖以使用預設Data (此時右邊的資料類型於Collection中增加一個Data的分支)
https://ithelp.ithome.com.tw/upload/images/20210914/201411987g0YGHvSHo.png
F. 設定該Action的條件(Conditions): 此部分可暫不設定。
https://ithelp.ithome.com.tw/upload/images/20210914/20141198T73xGjaESV.png

G. 按下OK,新增完成該Get Worksheet as Collection的Action:
該Action旁邊有剛剛點擊預設產生的資料暫存(Collection): Data。
https://ithelp.ithome.com.tw/upload/images/20210914/20141198bNWAl7EX80.png

7. Close Workbook關閉工作簿的 Action
(1). 於Read An Excel的Action之下複製一個Action,名稱為: Read An Excel
A. 點選Read An Excel的Action,Ctrl+c , Ctrl+v產生一個相同名稱的Action到Read An Excel之下
https://ithelp.ithome.com.tw/upload/images/20210914/20141198idGvB9sxoP.png

B. 開啟下方的Action的設定畫面:兩下點擊下方的Action,將出現Action Properties的屬性設定畫面。
https://ithelp.ithome.com.tw/upload/images/20210914/201411989cKbGTR8SI.png

C. 設定屬性資訊(依照如下屬性設定)
Name: Close Workbook
Business Object: MS Excel VBO
Action: Close Workbook
https://ithelp.ithome.com.tw/upload/images/20210914/20141198JXx3933QGa.png
D. 設定該Action的輸入(Input):
Handle屬性:沿用之前的設定[handle]
Workbook Name屬性: 沿用之前的設定[Workbook Name]。
Save Data屬性:可暫不輸入。
https://ithelp.ithome.com.tw/upload/images/20210914/20141198YIOPG3pjpc.png
E. 設定該Action的輸出(Output): 此部分可暫不設定。
https://ithelp.ithome.com.tw/upload/images/20210914/20141198BQuvIbah8m.png
F. 設定該Action的條件(Conditions): 此部分可暫不設定。
https://ithelp.ithome.com.tw/upload/images/20210914/20141198mtIlulMpIx.png

G. 按下OK,新增完成該Close Workbook的Action:結果如下。
https://ithelp.ithome.com.tw/upload/images/20210914/2014119869S41aEbhZ.png


8. Close Instance關閉實例的 Action
(1). 於Close Workbook的Action之下複製一個Action,名稱為: Close Workbook
A. 點選Close Workbook的Action,Ctrl+c , Ctrl+v產生一個相同名稱的Action到Close Workbook之下
https://ithelp.ithome.com.tw/upload/images/20210914/20141198JdliFRTYI5.png

B. 開啟下方的Action的設定畫面:兩下點擊下方的Action,將出現Action Properties的屬性設定畫面。
https://ithelp.ithome.com.tw/upload/images/20210914/20141198mboC1hztUB.png

C. 設定屬性資訊(依照如下屬性設定)
Name: Close Instance
Business Object: MS Excel VBO
Action: Close Instance
https://ithelp.ithome.com.tw/upload/images/20210914/20141198OnTOrQ1LIf.png
D. 設定該Action的輸入(Input):
Handle屬性:沿用之前的設定[handle]
Save Data屬性:可暫不輸入。
https://ithelp.ithome.com.tw/upload/images/20210914/20141198rVUOWtDenJ.png
E. 設定該Action的輸出(Output): 此部分可暫不設定。
https://ithelp.ithome.com.tw/upload/images/20210914/20141198etdidENgQw.png
F. 設定該Action的條件(Conditions): 此部分可暫不設定。
https://ithelp.ithome.com.tw/upload/images/20210914/20141198ix89QALW5b.png

G. 按下OK,新增完成該Close Instance的Action:結果如下。
https://ithelp.ithome.com.tw/upload/images/20210914/20141198QlaX74thlq.png


9. 將流程串起並執行,看結果。
(1). 串起流程:
於左邊流程圖示工具區點擊一個Link,並將Start開始、接續的Action與End結束用Link串起來。
https://ithelp.ithome.com.tw/upload/images/20210914/20141198MoYyS2a9Pb.png

(2). 執行流程:
點擊左上角的三角形執行圖示,即開始執行流程。
https://ithelp.ithome.com.tw/upload/images/20210914/20141198xkmecplNRr.png


(3). 檢視結果:
由於Excel的頁籤讀取到Data的Collection中,因此點擊該Collection,即可看到讀取到的Excel 指定頁籤內的所有內容。
https://ithelp.ithome.com.tw/upload/images/20210914/201411982IIo3bxSMf.png

有沒有一點面熟,
當然,幾天前拯救貧窮大作戰才見過類似的作法讀取Excel檔喔!

有注意到嗎?
之前是用Process來設計流程,
這次從Object中設計流程,
產生新的Action的方式可以是重新拖曳重新產生,
也可以是複製上面的Action直接改寫,
是不是既方便又省時。

雖然是首次使用Object來設計流程,
也算是小小的複習流程。
但,只有複習總讓人意猶未盡、流連忘返,
總有人的好勝與好學心激勵想要學新的,這邊從來沒讓人失望過。
由於我們常常會因為想要在別的主機上重現神蹟。。。
(例如:上課的程式,希望下課後能在家電腦重現,並能更加精進)
因此匯出(Export)流程的好機制就在所難免會被普羅大眾急切拜求。
以剛剛的例子來看,可以如下做法:
File > Export >This Business Object
https://ithelp.ithome.com.tw/upload/images/20210914/20141198oyTVM25Jne.png
此時系統就會要求輸入*.bpobject的檔案名稱。
https://ithelp.ithome.com.tw/upload/images/20210914/20141198Mu8HnRzLri.png

產生匯出檔後,到指定路徑去找就可看到。
為何BP在流程設計上需要區分Process與Object呢?
Object顧名思義是讓其他流程可引用(或稱 重複使用)。

軟體重複使用

(Software Reuse)
是指在建置新的軟體系統過程中,對已存在的軟體產品(設計結構、原代碼、文檔等)重複使用的技術。

節錄自MBA智庫百科

夜色已深,容我賣個關子,後面有機會再來談重現設計(匯入Import)的部分。


上一篇
Day13. 有了Blue Prism,誰說辦公室戀情影響工作-BP的用途
下一篇
Day15. 用Blue Prism放榜,緊張時刻-BP Choice Stage選擇階段
系列文
Blue Prism 精靈之手與神同行之防疫特助30

尚未有邦友留言

立即登入留言