Jak tvořit vlastní akce v Power Automate pro desktopy.
Zvyšte produktivitu, znovupoužitelnost a rozšiřitelnost pomocí vlastních akcí v Power Automate pro desktopy. Tento článek pojednává o tom, jak vlastní akce v Power Automate pro desktopy mohou pomoci tvůrcům vytvářet vlastní opakovaně použitelné akce, které lze použít ve více tocích. Tvůrci vytvářejí vlastní akce složením sekvence kroků nebo funkcí do nové akce. Vlastní akce se vytvářejí pomocí sady SDK akcí Power Automate pro desktopy, které poskytují sadu rozhraní API, která umožňují tvůrcům vytvářet vlastní akce pomocí jazyka .NET C#. Vlastní akce lze také sdílet s ostatními uživateli prostřednictvím sekce vlastních akcí v Power Automate (make.powerautomate.com). V tomto článku najdete podrobné návody, jak vytvářet, sestavovat, nasazovat, používat a aktualizovat vlastní akce.
Důležité
Zatímco základní funkce používané při vytváření vlastních akcí jsou podporovány, poskytovaná řešení, prostředky a ukázkové skripty zde uvedené slouží jako příklad implementace těchto funkcí a nezahrnují podporu.
Přehled
Možnost vlastních akcí v Power Automate pro desktopy vám umožňuje vytvářet vlastní opakovaně použitelné akce, které lze použít ve více pracovních postupech. Vlastní akce vám šetří čas a námahu tím, že vám umožňují opakovaně používat složité nebo často používané akce, aniž byste je museli znovu vytvářet pokaždé, když vytváříte nový tok. Tvůrci mohou uplatnit své stávající dovednosti a znalosti k vytvoření vlastních akcí, které se integrují s jinými systémy a službami. Profesionální vývojáři navíc mohou zabalit stávající funkce nebo knihovny kódů a vytvořit novou vlastní akci, která povede ke zvýšené opakované použitelnosti organizačních aktiv.
Vytváříte vlastní akce složením sekvence metod nebo funkcí do nové akce. Jakmile vytvoříte vlastní akci, použijte ji v libovolném desktopovém toku přetažením na plátno návrháře Power Automate Desktop.
Vlastní akce lze sdílet s ostatními uživateli prostřednictvím sekce vlastních akcí v Power Automate, která poskytuje centrální úložiště pro sdílení a zjišťování vlastních akcí. To znamená, že uživatelé mohou těžit z odborných znalostí a znalostí ostatních v organizaci a mohou snadno najít a používat vlastní akce vytvořené jinými výrobci.
Celkově vlastní akce v Power Automate pro desktopy poskytují účinný způsob, jak rozšířit funkčnost produktu, zefektivnit proces budování toku a podpořit spolupráci a inovace v rámci organizace.
Předpoklady
- Nejnovější verze Power Automate pro desktopy - Instalace Power Automate
- C# autorský nástroj, jako např. Visual Studio Community/Professional/Enterprise 2022 s pracovní zátěží vývoje desktopu .NET
- SDK vlastních akcí – NuGet Galerie | Microsoft.PowerPlatform.PowerAutomate.Desktop.Actions.SDK
- Digitální certifikát:
- Vygenerování certifikátu podepsaného svým držitelem (self-signed certificate) – Přehled vygenerování certifikátu podepsaného svým držitelem (self-signed certificate) - .NET
- Podnikové nasazení – Důvěryhodný certifikát vaší organizace od certifikačního úřadu – Digitální podpisy a certifikáty – Podpora kanceláře
- SignTool:
- Skript Windows PowerShell (.ps1) – Vytváření vlastních akcí – Power Automate
Vytvořte svoji vlastní akci
Otevřete Visual Studio a vytvořte nový projekt pomocí šablony Knihovna tříd (.NET Framework).
Nakonfigurujte svůj nový projekt pomocí názvu projektu, umístění souboru a nastavte Framework na .NET Framework 4.7.2.
Poznámka:
Postupujte podle konvencí tvorby názvů. Další informace: Vlastní konvence názvů modulů
V aplikaci Visual Studio zvolte Nástroje>Správce balíčků NuGet>Konzola Správce balíčků.
Otevřete okno PowerShellu a nainstalujte balíček NuGet PowerAutomate.Desktop.Actions.SDK pomocí tohoto příkazu PowerShellu.
Find-Package Microsoft.PowerPlatform.PowerAutomate.Desktop.Actions.SDK NuGet\Install-Package Microsoft.PowerPlatform.PowerAutomate.Desktop.Actions.SDK
Postupujte podle kroků ve Vytvoření vlastních akcí a vytvořte soubor třídy pro vaši vlastní akci.
Informace, které můžete použít jako odkaz pro vaši akci
Referenční archiv řešení: .NET Module Solution
Akce: Napište zprávu do místního souboru.
Vstupní parametry: Název souboru, zpráva pro zápis do souboru.
Výstupní parametry: Stavový kód – true v případě úspěchu a false v případě neúspěchu.
Definice třídy:
using System;
using System.IO;
using Microsoft.PowerPlatform.PowerAutomate.Desktop.Actions.SDK;
using Microsoft.PowerPlatform.PowerAutomate.Desktop.Actions.SDK.Attributes;
namespace ModulesLogEvent
{
[Action(Id = "LogEventToFile" , Order = 1, Category = "Logging")]
[Throws("LogEventError")]
public class LogEventToFile : ActionBase
{
[InputArgument]
public string LogFileName { get; set; }
[InputArgument]
public string LogMessage { get; set; }
[OutputArgument]
public bool StatusCode { get; set; }
public override void Execute(ActionContext context)
{
try
{
// To append all of the text to the file
File.AppendAllText(LogFileName, LogMessage);
StatusCode = true;
}
catch (Exception e)
{
if (e is ActionException) throw;
throw new ActionException("LogEventError", e.Message, e.InnerException);
}
}
}
}
Prostředky
V této tabulce jsou uvedeny popisy a popisné názvy parametrů v souboru Resources.resx.
Name | Hodnota | Comment |
---|---|---|
LogEventToFile_Description | Vlastní akce pro protokolování zprávy do dodaného souboru | Popis akce |
LogEventToFile_FriendlyName | LogEventToFile | Název akce |
LogEventToFile_LogFileName_Description | Vstupní parametr textového typu | Popis vstupu akce |
LogEventToFile_LogFileName_FriendlyName | LogFileName | Název vstupu akce |
LogEventToFile_LogMessage_Description | Vstupní parametr textového typu | Popis vstupu akce |
LogEventToFile_LogMessage_FriendlyName | LogMessage | Název vstupu akce |
LogEventToFile_StatusCode_Description | Výstupní parametr logického typu | Popis výstupu akce |
LogEventToFile_StatusCode_FriendlyName | LogMessage | OutputName akce |
ModulesLogEvent_Description | Modul pro správu událostí protokolu | Popis modulu |
ModulesLogEvent_FriendlyName | LogEvent | Název modulu |
Sestavte balíček a nasaďte vlastní akci
Vytvořte balíček a nasaďte jej na Power Automate.
Získejte digitální certifikát, aby bylo možné podepsat soubor DLL vlastní akce.
Důležité
Certifikáty podepsané svým držitelem (self-signed certificate) jsou pouze pro testovací účely a nedoporučují se pro produkční použití. Pro organizační nasazení vlastních akcí ve vašem prostředí doporučujeme použít důvěryhodný digitální certifikát, který se řídí vašimi organizačními pokyny.
Tip
Chcete-li zefektivnit proces vývoje a používání vlastních akcí pro Power Automate pro dekstopy ve vaší organizaci, můžete důvěryhodný digitální certifikát spojit s instalačním programem Power Automate pro desktopy, který je distribuován prostřednictvím SCCM/Appstore. . > To umožní automatickou instalaci certifikátu na tvůrce i bezobslužné počítače s modulem runtime, které vyžadují Power Automate pro desktopy bez nutnosti dalších akcí.
V tomto příkladu je použit certifikát podepsaný svým držitelem (self-signed certificate).
Pomocí tohoto skriptu vytvořte certifikát podepsaný svým držitelem (self-signed certificate).
$certPFXFileName="C:\PADCustomAction\PADCustomActionCert.pfx"; $certCERFileName="C:\PADCustomAction\PADCustomActionCert.cer"; $certStoreLocation="Cert:\LocalMachine\AuthRoot"; $certname = "PADCustomActionSelfSignCert" ##Create certificate $cert = New-SelfSignedCertificate -CertStoreLocation Cert:\CurrentUser\My -Type CodeSigningCert -Subject "CN=$certname" -KeyExportPolicy Exportable -KeySpec Signature -KeyLength 2048 -KeyAlgorithm RSA -HashAlgorithm SHA256 $mypwd = ConvertTo-SecureString -String <YOUR CERT PASSWORD GOES HERE> -Force -AsPlainText ##Export certificate $certPFXFile = Export-PfxCertificate -Cert $cert -FilePath $certPFXFileName -Password $mypwd $certCERFile = Export-Certificate -Cert $cert -FilePath $certCERFileName -Type CERT -Verbose -Force
Pomocí tohoto příkazu importujte certifikát do úložiště certifikátů.
##Import certificate Import-Certificate -CertStoreLocation $certStoreLocation -FilePath $certCERFile
Ověřte, že se importovaný certifikát zobrazuje v části Důvěryhodné kořenové certifikační úřady>Certifikáty v modulu snap-in Certificates Microsoft Manager Console (MMC)
Dokončete vlastní modul vytvořený podepsáním souboru DLL pomocí důvěryhodného certifikátu. Chcete-li pro tuto aktivitu použít nástroj Signtool, použijte příkazový řádek vývojáře Visual Studio.
Signtool sign /f "C:/PADActions/PADCustomActionCert.pfx" /p <YOURCERTPASSWORD> /fd SHA256 "C:/PADActions/PADCustomActionEventLog/Modules.LogEvent.dll"
Chcete-li nasadit vlastní akci, sestavte obsah balíčku do souboru CAB (.cab) pomocí tohoto skriptu PowerShell.
.\BuildCAB.ps1 "C:/PADActions/PADCustomActionEventLog" "C:/PADActions/PADCustomActionEventLog" PADCustomActionEventLog.cab
Vygenerovaný soubor CAB podepište pomocí Signtool.
Signtool sign /f "C:/PADActions/PADCustomActionCert.pfx" /p <YOURCERTPASSWORD> /fd SHA256 "C:/PADActions/PADCustomActionEventLog/PADCustomActionEventLog.cab"
Přejděte do části vlastních akcí Power Automate a nahrajte vlastní akci, kterou jste vytvořili. Zadejte název, popis a soubor CAB a poté vyberte Odeslat.
Až bude soubor úspěšně odeslán, obdržíte oznámení.
Po těchto krocích je modul vlastních akcí zabalen do souboru CAB a podepsán důvěryhodným certifikátem. Kromě toho je soubor CAB vlastních akcí nahrán do knihovny vlastních akcí v Power Automate.
Další informace: Nahrát vlastní akce
Použijte svou vlastní akční aktivitu v toku na počítači pomocí Power Automate pro desktopy
Vytvořte nový desktopový tok a pak vyberte Knihovnu prostředků v návrháři.
Zkontrolujte vlastní akci dostupnou v knihovně prostředků. Všimněte si dříve vytvořené akce a nahrané do sekce vlastních akcí Power Automate.
Výběrem možnosti Přidat přidáte tuto vlastní akci do sekce Akce v návrháři.
Ověřte, zda byla vlastní akce úspěšně přidána. Vyhledejte ji na vyhledávacím panelu Akce v Power Automate pro návrháře desktopu.
Přetáhněte vlastní akci nebo na ni poklepejte a přidejte ji do toku na ploše.
Zadejte vstupní parametry a další kroky k otestování vlastní akce.
Ukázka toku na ploše pomocí vlastní akce.
Otestujte tok, abyste viděli, jak vlastní akce funguje v reálném čase.
Poznámka:
Importujte certifikát používaný k podepsání souboru CAB do počítače používaného k vytváření desktopových toků s vlastními akcemi a do všech počítačů modulu runtime, na kterých budou toky plochy spouštět.
Po těchto krocích byla vytvořena vlastní akce, modul zabalen do souboru CAB, podepsán důvěryhodným certifikátem, nahrán do knihovny vlastních akcí v Power Automate, desktopovém toku pro použití vlastní akce vytvořené a otestované pro úspěšné spuštění.
Aktualizujte a znovu nasaďte vlastní akci
Aktualizujte funkčnost vlastní akce tak, aby odrážela aktualizovanou schopnost, pomocí následujících kroků.
Aktualizujte soubor třídy v řešení Visual Studio s novou akční funkcí. Více informací: Aktualizované řešení .NET Module
Upravil podpis souboru třídy tak, aby přijal třetí vstupní parametr, jak je znázorněno.
using System; using System.IO; using Microsoft.PowerPlatform.PowerAutomate.Desktop.Actions.SDK; using Microsoft.PowerPlatform.PowerAutomate.Desktop.Actions.SDK.Attributes; namespace ModulesLogEvent { [Action(Id = "LogEventToFile" , Order = 1, Category = "Logging")] [Throws("LogEventError")] public class LogEventToFile : ActionBase { [InputArgument] public string LogFileName { get; set; } [InputArgument] public string LogMessage { get; set; } [InputArgument] public string LogLevel { get; set; } [OutputArgument] public bool StatusCode { get; set; } public override void Execute(ActionContext context) { try { // To append all of the text to the file File.AppendAllText(LogFileName, LogLevel + ": " + LogMessage); StatusCode = true; } catch (Exception e) { if (e is ActionException) throw; throw new ActionException("LogEventError", e.Message, e.InnerException); } } } }
Použijte podobné kroky popsané výše, kde podepíšete soubor DLL, vytvoříte soubor CAB, podepíšete soubor CAB a nahrajete soubor CAB do sekce vlastních akcí v Power Automate. Další informace: Sestavte balíček a nasaďte vlastní akci
Poznámka:
Před nahráním aktualizovaného souboru CAB vlastní akce nezapomeňte analyzovat dopad této změny, protože toky na ploše s touto akcí budou aktualizovány o nové možnosti.
Podle potřeby aktualizujte desktopový tok.
Abychom ověřili schopnost aktualizace, přidali jsme do vlastní akce třetí vstupní parametr. Všimněte si, že aktivita vlastní akce je v návrháři označena jako Chyba a je třeba ji aktualizovat pomocí nového vstupního parametru.
Otestujte tok, abyste viděli, jak aktualizovaná vlastní akce funguje v reálném čase.
V této části jste aktualizovali základní funkcionalitu vlastní akce, vytvořili balíček, nasadili do Power Automate, refaktorovali tok na ploše a ověřili funkčnost spuštěním toku na ploše s aktualizovanými možnostmi vlastní akce v Power Automate pro desktopy.