Day11. 从日常看到Blue Prism的窝心-BP合并两张报表

当过主管或小组长的人,多少都遇过的经验,
收集大家的日报Excel档资料时,以往都是一个一个档案打开,
一个一个移到指定的工作表并开始一连串的复制贴上的工作,
管理一两个人或许还可以容忍,若是幅员广大或同学众多,
常常一个复制贴上让我们怀恨到天明啊!

 前集提要

BP改变流程Excel另存新档

  1. 新增 Create Workbook(建立工作簿)、新增Create Worksheet(建立工作表):以上两个Actions会先建立一个可以填写资料却尚未存档的Excel档。
  2. 新增Save Workbook As(另存新档):以上一个Action会把填写完资料的Excel档案另存指定档名的档案。

 本集预告

BP合并两张报表
目的: 两个Excel 档中的内容,合并置入到指定工作表。

Tony表哥再度提到其实每个月都需要有月结报表,因此最令他困扰的就是打开一堆Excel档案,
把内部的团购清单并到一个Excel档案中。

以下我们就来看看「合并两个Excel资料表资料」,Blue Prism 如何做到?
1. 作业前准备:沿用之前资料表,并复制出另一个相同的档案。
沿用之前的Excel,若没有请准备2个工作表:
档名调整如下: 今日公报.xlsx、今日公报02lsx
https://ithelp.ithome.com.tw/upload/images/20210911/20141198VXKsb2aC7L.png

https://ithelp.ithome.com.tw/upload/images/20210911/20141198FwI31OPrJG.png

2. 沿用前一个实作的Process并作调整: ExcelTest
(1). 启动Blue Prism双点击Process: ExcelTest,将开启Process的编辑画面。

3. 准备好本次需要的流程项目(将与本次不相干的Action移到目前检视区域外)
(1). 除了要留下的流程其余多余的流程暂时断开,滑鼠到Link按右键,点Delete,即可删除连结。
https://ithelp.ithome.com.tw/upload/images/20210911/20141198437GLYgvqA.png

(2). 删除多余的流程Action的Link後,主轴即剩下本次需要的项目。
https://ithelp.ithome.com.tw/upload/images/20210911/20141198aCwwhJB3hW.png

4. Get Worksheet As Collection将工作表暂存到集合中的 Action
(1). 於Open Workbook的Action之下复制一个Action,名称为: Open Workbook (为让流程不要挤在一起,请拖曳调整一下两个Action)
A. 点选Open Workbook的Action,Ctrl+c , Ctrl+v产生一个相同名称的Action到Open Workbook下方
https://ithelp.ithome.com.tw/upload/images/20210911/20141198tW61rEVVPG.png
B. 开启下方的Action的设定画面:两下点击下方的Action,将出现Action Properties的属性设定画面。
https://ithelp.ithome.com.tw/upload/images/20210911/20141198muTIuhx1ri.png

C. 设定属性资讯(依照如下属性设定)
Name: Get Worksheet As Collection
Business Object: MS Excel VBO
Action: Get Worksheet As Collection
https://ithelp.ithome.com.tw/upload/images/20210911/20141198cV20bOzwWe.png
D. 设定该Action的输入(Input):
Handle属性:拖曳右方的handle到Value中。(或沿用刚才复制Action的属性)
Workbook属性: 拖曳右方的Workbook Name到Value中。
Worksheet属性: 输入”工作表1”。
https://ithelp.ithome.com.tw/upload/images/20210911/20141198XIoh79K7d5.png
E. 设定该Action的输出(Output):
Data属性: 输入”A-Collection”,并按下Store In中的斜方块,此时Collection分支出现相同名称的集合。
https://ithelp.ithome.com.tw/upload/images/20210911/20141198PvQ2XPteZC.png

F. 设定该Action的条件(Conditions): 此部分可暂不设定。
https://ithelp.ithome.com.tw/upload/images/20210911/20141198k9HLuPxp8s.png

G. 按下OK,新增完成该Action:
https://ithelp.ithome.com.tw/upload/images/20210911/20141198yvv9FVKi9C.png

5. 调整并复制一份Create Instance、Open Workbook、Get Worksheet As Collection到原Actions旁,并陆续调整其Action内部属性以符合第二个工作表撷取资料需求
https://ithelp.ithome.com.tw/upload/images/20210911/2014119863uxjhzj7H.png

(1). 调整点击右方的Create Instance准备调整其属性资料
https://ithelp.ithome.com.tw/upload/images/20210911/201411984oOayWECoS.png

(2). 设定该Action的输入(Input):此部分照旧,暂不调整。
https://ithelp.ithome.com.tw/upload/images/20210911/20141198sbA4Fwf0n2.png

(3). 设定该Action的输出(Output):
Hendle属性:Store In输入handle2,按下斜方块钮,右方Number出现相同名称handle2的分支。
https://ithelp.ithome.com.tw/upload/images/20210911/20141198jaPVPAPmhZ.png

(4). 设定该Action的条件(Conditions):此部分照旧可暂不设定。
https://ithelp.ithome.com.tw/upload/images/20210911/20141198JwRBbLFUrc.png

6. 调整第二个 Open Workbook以符合第二个档案工作表开启
https://ithelp.ithome.com.tw/upload/images/20210911/20141198LJBYviaFoH.png

(1). 调整点击右方的Open Workbook准备调整其属性资料
https://ithelp.ithome.com.tw/upload/images/20210911/201411982UCL31zrhq.png

(2). 设定该Action的输入(Input):
Handle属性:拖曳右方Numbers的分支handle2到Value中。
File Name属性: 输入新复制出来调整的Excel档名与档名所在路径。
https://ithelp.ithome.com.tw/upload/images/20210911/20141198T5ZTSnzoL9.png

(3). 设定该Action的输出(Output):
Workbook Name属性:Store In输入Workbook Name2,按下斜方块钮,右方Text出现相同名称Workbook Name2的分支。
https://ithelp.ithome.com.tw/upload/images/20210911/20141198HFFe6yTtJC.png

(4). 设定该Action的条件(Conditions):此部分照旧可暂不设定。
https://ithelp.ithome.com.tw/upload/images/20210911/201411981dzufRm42M.png

7. 调整第二个 Get Worksheet As Collection以符合第二个档案工作表资料取得
https://ithelp.ithome.com.tw/upload/images/20210911/20141198tu11isd6lz.png

(1). 调整点击右方的Get Worksheet As Collection准备调整其属性资料
https://ithelp.ithome.com.tw/upload/images/20210911/20141198iqZ7S149yA.png

(2). 设定该Action的输入(Input):
handle属性: 从右方的Numbers分支拖曳handle2到Value中。
Workbook Name属性: 从右方的Text分支拖曳Workbook Name2到Value中。
Worksheet Name属性:沿用预设”工作表1”。
https://ithelp.ithome.com.tw/upload/images/20210911/20141198GhmrxgEoTx.png

(3). 设定该Action的输出(Output):
Data属性:Store In输入B-Collection,按下斜方块钮,右方Collections出现相同名称B-Collection的分支。
https://ithelp.ithome.com.tw/upload/images/20210911/20141198VjXLiDI7X1.png

(4). 设定该Action的条件(Conditions):此部分照旧可暂不设定。
https://ithelp.ithome.com.tw/upload/images/20210911/20141198mT0AfTaWDf.png

8. Merge Collections将两个集合合并的 Action
(1). 於最右边的Open Workbook的Action旁复制一个Action,名称为: Open Workbook (为让流程不要挤在一起,请拖曳调整一下两个Action)
A. 点选Open Workbook的Action,Ctrl+c , Ctrl+v产生一个相同名称的Action到Open Workbook旁边
https://ithelp.ithome.com.tw/upload/images/20210911/201411983C1KCrLOrR.png
B. 开启旁边的Action的设定画面:两下点击下方的Action,将出现Action Properties的属性设定画面。
https://ithelp.ithome.com.tw/upload/images/20210911/20141198UT0T5mtPnn.png

C. 设定属性资讯(依照如下属性设定)
Name: Merge Collections
Business Object: Utility-Collection Mainipulation
Action: Merge Collections
https://ithelp.ithome.com.tw/upload/images/20210911/20141198BEHW9vgAm9.png
D. 设定该Action的输入(Input):
Collection1属性:拖曳右方的Collection分支A-Collection到Value中。
Collection2属性:拖曳右方的Collection分支B-Collection到Value中。
https://ithelp.ithome.com.tw/upload/images/20210911/20141198bQ4PI22hvX.png
E. 设定该Action的输出(Output):
Collection3属性: 输入”MergeCollection”,并按下Store In中的斜方块,此时Collections分支出现相同名称的集合。
https://ithelp.ithome.com.tw/upload/images/20210911/2014119804cXiDtnbQ.png

F. 设定该Action的条件(Conditions): 此部分可暂不设定。
https://ithelp.ithome.com.tw/upload/images/20210911/20141198p1hJhyDHzR.png

9. Write Collections将集合写入Excel中的 Action
(1). 於最右边的Open Workbook的Action旁复制一个Action,名称为: Open Workbook (为让流程不要挤在一起,请拖曳调整一下两个Action)
A. 点选Open Workbook的Action,Ctrl+c , Ctrl+v产生一个相同名称的Action到Open Workbook旁边
https://ithelp.ithome.com.tw/upload/images/20210911/20141198TujwljfgO7.png
B. 开启旁边的Action的设定画面:两下点击下方的Action,将出现Action Properties的属性设定画面。
https://ithelp.ithome.com.tw/upload/images/20210911/20141198cKSNjjQqmw.png

C. 设定属性资讯(依照如下属性设定)
Name: Write Collections
Business Object: MS Excel VBO
Action: Write Collections
https://ithelp.ithome.com.tw/upload/images/20210911/20141198sCvlw76YqU.png
D. 设定该Action的输入(Input):
handle属性:拖曳右方的Numbers分支handle到Value中。
Collection属性:拖曳右方的Collection分支MergeCollection到Value中。
Workbook Name属性:拖曳右方的Text分支Workbook Name到Value中。
Worksheet Name属性:输入”工作表2”到Value中。
Cell Reference属性:输入”A1”。
https://ithelp.ithome.com.tw/upload/images/20210911/201411982FZPuD29Ua.png
E. 设定该Action的输出(Output): 可暂不输入。
https://ithelp.ithome.com.tw/upload/images/20210911/20141198QVZdgOrpUw.png

F. 设定该Action的条件(Conditions): 此部分可暂不设定。
https://ithelp.ithome.com.tw/upload/images/20210911/20141198w5jyy74t7F.png

10. 调整Close Instance关闭两个Excel档案
https://ithelp.ithome.com.tw/upload/images/20210911/20141198sk2UAlGQEY.png

(1). 调整点击Close Instance准备调整其属性资料
Name 属性:Close All Instances
Business Object属性:MS Excel VBO
Action属性:Close All Instances
https://ithelp.ithome.com.tw/upload/images/20210911/20141198VzGxBwEoxh.png
(2). 设定该Action的输入(Input):可暂不输入。
https://ithelp.ithome.com.tw/upload/images/20210911/2014119829FTKDVszy.png

(3). 设定该Action的输出(Output):可暂不输入。
https://ithelp.ithome.com.tw/upload/images/20210911/20141198DLMah8GWm4.png

(4). 设定该Action的条件(Conditions):此部分照旧可暂不设定。
https://ithelp.ithome.com.tw/upload/images/20210911/20141198nVbBPnKDKS.png
11. 按下OK,将流程串起并执行(为求整齐与易看可於流程连结中加入锚点,看结果。
(1). 串起流程:
於左边流程图示工具区点击一个Link,并将Actions用Link串起来。

(2). 为令Excel关闭顺利,另加入两个Action(Close A Workbook、Close All A Instance)
为让个人练习就不再详述。
https://ithelp.ithome.com.tw/upload/images/20210911/20141198Tm8RKQW9HJ.png

(3). 执行流程:
若已执行过,建议先按下Reset按钮(循环图示),再按下执行图示。
https://ithelp.ithome.com.tw/upload/images/20210911/20141198e4rQY7wUCq.png

点击左上角的三角形执行图示,即开始执行流程。
https://ithelp.ithome.com.tw/upload/images/20210911/201411987kBWKAzk5x.png


(4). 检视结果:
开启Excel档後,可看到工作表2的内容包含两个档案工作表合并後的内容。
https://ithelp.ithome.com.tw/upload/images/20210911/20141198RcQwFqBT9o.png

目前除了主轴的设计流程外,
若有延伸的项目,会於提醒事项区块提醒大家。

 提醒事项

锚点(Anchor): https://ithelp.ithome.com.tw/upload/images/20210911/20141198PQqPCXy8QW.png
有时候流程图的link可能纠结或斜列,造成流程图不易检视,此时可以运用锚点让流程图较为工整美观。

在Blue Prism中,先各别开启Excel档,
并将两个Excel档工作表的内容暂存到集合(Collection)中,
再批次把合并後的Collection内容写入指定的Excel中,并做存档关闭的动作;
其中,关闭Instance的动作很重要,主要因为若未关闭档案,则档案处於一直开着的状态,
若有人要编辑该Excel档,则无法顺利编辑,被提示只能唯读。
另外,本次的流程较多,且横向发展的结果可能会让Link线很混乱,
因此可借助锚点(Anchor),让设计更为工整好辨识。


<<:  # 将影片转换成图片 - Day 11

>>:  [Day1] 专案建置与视窗生成

[Day 8]开赛八天即遭遇难题(後端篇)

挑战目标: MockNative Camp後端 昨天写了signup的request object,...

Vue Components 子元件之间的资料传递

沟通不良的代价就是彼此越来越疏远,然後行同陌路如陌生人。 子元件之间就像兄弟一样的关系,所以这篇要...

Day 5 韧体的烧录及可靠性

目前嵌入式软件,大部分都是烧录在DDR或SDRAM上面,过去的韧体烧录,非常麻烦,常常会失败,目前大...

EP 31: Testing TopStore App (Beta) for iOS and Android

Hello, 各位 iT邦帮忙 的粉丝们大家好~~~ 本篇是 Re: 从零开始用 Xamarin 技...

[重构倒数第25天] - Vuex + Composition API 组合技

前言 该系列是为了让看过Vue官方文件或学过Vue但是却不知道怎麽下手去重构现在有的网站而去规画的系...