RPA之PAD(Power Automate Desktop) 產品介紹

RPA之PAD(Power Automate Desktop) 產品介紹

RPA之前我已經介紹了,它就是一個機器人流程自動化的概念。

最後更新 2022/5/30 下午9:01
蓝创精英团队
預計閱讀 6 分鐘
分類
.NET
標籤
.NET C# RPA

本文由網友藍創精英團隊投稿,歡迎轉載、分享

原文作者:藍創精英團隊

原文連結:https://blog.csdn.net/i2blue/article/details/125037626


簡介

RPA 之前我已經介紹了,它就是一個機器人流程自動化的概念。

基於 RPA,有很多的產品,其中 Power Automate Desktop (PAD) 就是一個相對來講,免費的、容易使用的一個 RPA,另外它的國際化做得也很不錯,中文效果也是很棒。

其中,國內的 RPA 產品影刀也是類似的產品,會了它,用影刀也很順手的說。

當然,實際用的時候,也有一些不方便的地方,必須,你得先有一個微軟的帳號。

另外,對作業系統的限制也有,限制要在 WIN10++ 才可以。

所以,win7、win10 的家庭版,估計都會遇到一些問題。

另外 win11 是自帶的就有,算是預設 windows 的一個 RPA 工具了(可以搜尋一下關鍵字)

安裝部署

它的安裝位址如下

https://go.microsoft.com/fwlink/?linkid=2102613

直接下一步

我個人一般都是全選,你需要安裝的時候,可以按照自己的想法來。

點擊安裝後,出現下邊的選項,直接選是

然後,它自己就開始安裝了

到這個時候,已經安裝完畢了,可以啟用服務了

登入帳號

登入成功後,就看到了當前這個介面,我是因為以前就創建的有,所以是這個樣子的。

PAD 介面簡單介紹

  1. 新建工作流程任務,就像下面的列表一樣,如果創建好
  2. 個人帳號下,新建的桌面流程
  3. 系統官網自帶的流程
  4. 啟動流程
  5. 修改編輯
  6. 其他設定資訊

其中 5 編輯後,就會出現 PAD 的流程設計器。如下所示

左側為相應的邏輯功能元件,中間為流程邏輯,右邊為變數相關。

左邊清晰點就是

功能應有盡有,基本上,

另外一些,都是需要微軟線上雲端平台的支持,才能實現的。需要帳號、金鑰啥的。

總的來說,它是面向全球、面向 Windows 桌面端,但是,對國內很多實際場景還是沒有特定的通用化方案,只能透過元件的擴展方式實現了。

官網範例展示

官方範例一共有三個範例,分別是 Excel 自動化、Web 自動化、桌面自動化三部分。

主要是這三種,都挺簡單的,我這邊隨便挑選一個演示下,想學的,每個都點一下,基本就會了。

當然,如果會寫程式的,基本半小時,就精通了。

我選擇這個,開啟記事本,並向記事本裡寫東西。最後,關閉記事本,然後,讀出來裡面寫了什麼,並提示出來。

我直接根據這個範例修改為上邊的業務需求。

需求如下:

開啟記事本,並向記事本裡寫東西,最後關閉記事本,然後,讀出來裡面寫了什麼,並提示出來。

點擊這個編輯,就會如下所示

然後,出現這個地方

點擊明白了,就是這樣子的

直接執行,其實是會報錯的。

我們這裡要更新一下它的 UI 介面路徑為當下的路徑就可以了

雙擊這個填滿視窗中的文字欄位

  • 第一,就是文字框的位址
  • 第二,就是輸入到這個文字框,記事本裡的內容(可以改成中文)
  • 第三,就是儲存此功能邏輯

第二步,自己也可以點點,記得開啟記事本之後點擊。

添加過程就如下,想添加哪個 UI 元素,直接 Ctrl+滑鼠左鍵就可以了

修改完之後,直接執行,效果,確實如我們所想的一樣。

我們還根據上邊的需求,增加相應的程式碼邏輯。

結果如下,效果還是很喜人的。

這個的程式碼範例如下:

IF (File.IfFile.Exists File: $'''C:\\Users\\kess\\Desktop\\測試.txt''') THEN
    File.Delete Files: $'''C:\\Users\\kess\\Desktop\\測試.txt'''
END
System.RunApplication.RunApplicationAndWaitToLoad ApplicationPath: $'''notepad.exe''' WindowStyle: System.ProcessWindowStyle.Maximized Timeout: 0 ProcessId=> AppProcessId WindowHandle=> WindowHandle
DateTime.GetCurrentDateTime.Local DateTimeFormat: DateTime.DateTimeFormat.DateAndTime CurrentDateTime=> CurrentDateTime
UIAutomation.PopulateTextField TextField: appmask['Window \'無標題 - 記事本\'']['Document \'文字編輯器\''] Text: $'''你好,
藍創精英團隊。
%CurrentDateTime%''' Mode: UIAutomation.PopulateTextMode.Replace ClickType: UIAutomation.PopulateMouseClickType.SingleClick
MouseAndKeyboard.SendKeys.FocusAndSendKeys TextToSend: $'''{Control}{Shift}({S})''' DelayBetweenKeystrokes: 10 SendTextAsHardwareKeys: False
UIAutomation.Click Element: appmask['Window \'*無標題 - 記事本\'']['Tree Item \'桌面\''] ClickType: UIAutomation.ClickType.LeftClick MousePositionRelativeToElement: UIAutomation.RectangleEdgePoint.MiddleCenter OffsetX: 0 OffsetY: 0
UIAutomation.PopulateTextField TextField: appmask['Window \'*無標題 - 記事本\'']['Edit \'檔名:\''] Text: $'''測試.txt''' Mode: UIAutomation.PopulateTextMode.Replace ClickType: UIAutomation.PopulateMouseClickType.SingleClick
UIAutomation.Click Element: appmask['Window \'*無標題 - 記事本\'']['Button \'儲存(S)\''] ClickType: UIAutomation.ClickType.LeftClick MousePositionRelativeToElement: UIAutomation.RectangleEdgePoint.MiddleCenter OffsetX: 0 OffsetY: 0
WAIT (UIAutomation.WaitForWindow.ToClose Window: appmask['Window \'測試.txt - 記事本\'']['Window \'另存新檔\'']) FOR 3
ON ERROR

END
System.TerminateProcess.TerminateProcessById ProcessId: AppProcessId
File.ReadTextFromFile.ReadText File: $'''C:\\Users\\kess\\Desktop\\測試.txt''' Encoding: File.TextFileEncoding.UTF8 Content=> FileContents
Display.ShowMessageDialog.ShowMessage Title: $'''從文字中取得的內容''' Message: FileContents Icon: Display.Icon.None Buttons: Display.Buttons.OK DefaultButton: Display.DefaultButton.Button1 IsTopMost: False ButtonPressed=> ButtonPressed

這個程式碼功能如何用呢,只要在 流程邏輯裡面 Ctrl+Alt+A 全選,然後,複製,貼上,就是這一串程式碼了。

同樣,新建一個工作流程,也可以直接在流程邏輯裡面,點擊一下,然後,貼上。就出現了。

目前,還沒有一個好的分享方案。

這種還是性價比,比較高的一種方式了。

個人使用後總結

我個人使用了之後,發現,它沒有廣告啥的,算是系統自帶軟體,所以,我對它還是很看好的,但是,它自己的很多功能不是很到位,很多稍微複雜的場景,還是需要客製化的元件的,那麼,它是否支援元件呢,好消息是,它是支援的,但是,官方沒有明確對外說是支援的。

但是,實際上是支援的,所以,你懂的。

結束

至此,我們也透過介紹、安裝、簡介,以及一個官方的範例修改,以及,自訂的功能的實現,我相信,你對 RPA 技術,以及 PAD 這樣的產品已經有了一個直觀的概念了。

提升生產力,從現在做起,加油!

你的支持、關注,都是我前進的動力!有你的支持,藍創精英團隊會做得更好。

下一章,準備寫一下 PAD 的擴展元件方式,讓它的功能更強大。

引用

可以透過官網來學習大部分的功能。

https://docs.microsoft.com/zh-tw/power-automate/desktop-flows/actions-reference

繼續探索

延伸閱讀

更多文章