Používání modulů plug-in s minimálním psaním kódu v Dataverse (Preview)
Článek
[Toto téma představuje předběžnou dokumentaci a může se změnit.]
Microsoft Dataverse nabízí výkonné řešení pro dosažení efektivnější datové architektury a snížení zátěže na straně klienta prostřednictvím zásuvných modulů s nízkým obsahem kódu. Tyto zásuvné moduly jsou opakovaně použitelné pracovní postupy v reálném čase, které provádějí specifickou sadu příkazů v rámci Dataverse, běží na straně serveru a spouštějí personalizované obslužné rutiny událostí.
Důležité
Okamžité moduly plug-in s minimálním psaním kódu nemají prioritu a nejsou poskytovány jako funkce. Okamžité zásuvné moduly s minimálním psaním kódu jsou nahrazeny funkcemi. Další informace: Funkce v Microsoft Dataverse (Preview)
Toto je funkce Preview.
Funkce Preview nejsou určené pro normální používání a mohou mít omezené fungování. Jsou to funkce, které jsou poskytnuté před svým oficiálním vydáním, aby si je zákazníci mohli co nejdříve vyzkoušet a mohli nám napsat své názory.
Zásuvné moduly byly tradičně vytvářeny jako vlastní třídy zkompilované do sestavení .NET Framework, které byly poté nahrány a zaregistrovány v rámci Dataverse. Se zavedením zásuvných modulů s nízkým obsahem kódu však mohou uživatelé vytvářet tyto obslužné rutiny událostí s minimálním nebo žádným požadovaným kódováním a bez nutnosti ruční registrace.
Pluginy s nízkým kódem jsou uloženy v databázi Dataverse je bez problémů integrovat do Power Apps a Power Automate. Chování pracovního postupu je definováno pomocí výrazového jazyka Power Fx a lze jej přímo propojit s obchodními daty Dataverse a externími datovými zdroji prostřednictvím konektorů Power Platform. Díky zásuvným modulům s nízkým obsahem kódu mohou tvůrci rychle vytvářet složité pracovní postupy s minimálními znalostmi v oblasti kódování, což vede k efektivnější datové architektuře.
Výhody logiky na straně serveru
Definování obchodní logiky na straně serveru nabízí několik výhod, včetně:
Zvýšeného zabezpečení. Protože se logika na straně serveru spouští na serveru, může pomoci zabránit neoprávněnému přístupu k citlivým datům nebo procesům.
Zlepšení výkonu. Spuštěním na serveru může obchodní logika snížit množství dat, která je třeba přenést mezi klientem a serverem, což má za následek rychlejší zpracování.
Konzistence a spolehlivost. Logika na straně serveru zajišťuje konzistentní uplatňování obchodních pravidel napříč všemi klienty, čímž se snižuje riziko chyb nebo nekonzistencí.
Jednodušší údržba a upgrady. Díky centralizaci obchodní logiky na serveru je její údržba a aktualizace snazší, protože změny lze provádět na jednom místě a nemusíte aktualizovat více klientů.
Škálovatelnost. Logiku na straně serveru lze škálovat snadněji než logiku na straně klienta, což umožňuje lepší výkon a manipulaci s většími pracovními zátěžemi.
Moduly plugin s minimálním psaním kódu
Existují dva typy modulů plug-in s minimálním psaním kódu podporovaných v Dataverse:
Všechny plug-iny s minimálním psaním kódu mají následující společné vlastnosti:
Vlastnost
Description
Display name
Srozumitelný název modulu plug-in. Tuto hodnotu nelze měnit, jakmile je vytvořena.
Name
Interní název modulu plug-in. Platforma jej používá k identifikaci komponenty v kódových a databázových operacích. Tuto hodnotu nelze měnit, jakmile je vytvořena.
Description
Používá se k poskytnutí dalšího kontextu o zásuvném modulu (účel, chování nebo jiné důležité podrobnosti).
Řešení
Používá se k seskupování komponent a exportu do jiných prostředí. Další informace o řešeních.
Výraz
Toto je vlastní funkce, kterou lze použít k provádění akcí nebo výpočtů definovaných pomocí jazyka výrazů Power Fx. Power Fx je jazyk vzorců používaný v aplikacích plátna Power Apps a byl rozšířen pro použití v zásuvných modulech s nízkým kódem. Viz podporované funkce pro více podrobností.
Okamžitý modul plug-in s minimálním psaním kódu je logika vlastního kódu, kterou spouští uživatel. Lze použít vlastní vstupní a výstupní parametry.
Jedinečné vlastnosti:
Vlastnost
Description
Obor
Používá se k přiřazení zásuvného modulu ke konkrétní tabulce. Může být nastaven buď na tabulku (zobrazenou jako entita), nebo na globální, kde rozsah tabulky (entity) znamená, že se modul plugin spouští s kontextem konkrétního záznamu tabulky, a globální rozsah znamená, že operace není spojena s tabulkou. (další informace).
Parametry
Parametry vám umožňují předávat informace mezi modulem plug-in a kontextem, který ho spouští, takže je jednodušší navrhnout obchodní logiku, kterou lze znovu použít v různých situacích.
Vstupní parametry se používají k poskytování dat modulu plug-in a umožňují vám řídit, jak se funkce chová, předáním různých hodnot, které zadáte do vzorce Power Fx.
Výstupní parametry umožňují získat výsledky funkce nebo metody pro další použití ve vašem programu.
Automatizovaný modul plug-in s nízkým kódem je vlastní kód, který se spouští během zpracování konkrétní datové události.
Jedinečné vlastnosti:
Vlastnost
Description
Datová událost ('Spustit tento modul plug-in, když řádek je')
Určuje, která datová událost spouští modul plug-in. K vyvolání zásuvného modulu lze vybrat kteroukoli z následujících událostí:
Vytvoření
Aktualizovat
Odstranění
Fáze ('Kdy se má spustit')
Můžete navrhnout, zda se modul plug-in spustí před nebo po dokončení datové události, což umožňuje flexibilitu přístupu a úpravy hodnot v klíčových fázích události.
Předchozí operace. Tuto možnost vyberte, pokud chcete spustit logiku modulu plug-in po ověření formuláře, ale před vložením nebo změnou hodnot Dataverse.
Následná operace. Tuto možnost vyberte, chcete-li spustit logiku zásuvného modulu poté, co byly hodnoty vloženy nebo změněny Dataverse.
Oprávnění modulu plug-in
Doba návrhu
Tvůrci, kteří mají členství role zabezpečení úpravce systéme nebo správce systému v prostředí Power Platform, mohou přistupovat všechny moduly plug-in v daném prostředí. Vlastní role zabezpečení lze použít k omezení přístupu k zásuvným modulům s nízkým kódem.
Operační čas
Když je modul plug-in vyvolán, přistupuje k datům tabulky zahrnutým v definici modulu plug-in (tabulky, které jsou součástí vzorce nebo pokud je tabulka přidružena k nastavení automatizovaného modulu plug-in) v kontextu uživatele, který jej vyvolal.
Připojení
Pomocí rolí zabezpečení lze přístup ke konektorům v rámci plug-inů omezit na konkrétní skupinu uživatelů ve vaší organizaci. Určete, které role mají oprávnění k vytváření, čtení, aktualizaci nebo odstraňování.
Předpoklady pro vytvoření modulů plug-in s minimálním psaním kódu
Role zabezpečení správce systému nebo úpravce systému v prostředí Power Platform.
Přístup k aplikaci akcelerátor Dataverse.
Tip
Všechna nová prostředí mají od 1. října 2023 automaticky nainstalovanou aplikaci akcelerátor Dataverse. Pokud jste již měli nainstalovaný akcelerátor Dataverse, můžete akcelerátor Dataverse aktualizovat ručně.
Pokud je Dataverse Accelerator již nainstalován a je k dispozici aktualizace, je to uvedeno v tabulce vedle položky.
Vyberte Dataverse Accelerator a poté na panelu příkazů vyberte možnost Aktualizovat.
Tip
Povolte automatické aktualizace aplikací pro vydavatele Microsoft - Power CAT, aby automaticky dostával aktualizace, když jsou k dispozici (není nutné pro nové prostředí vytvořená po 1. říjnu 2023).
Poznámka
Pokud jste dříve nainstalovali volitelné řešení Moduly plug-in s nízkým kódem pro konektory, bude automaticky odstraněno, pokud provedete aktualizaci po 29. červnu 2023. Funkce budou dostupné v hlavním řešení.
Vytvořte okamžitý plug-in s minimálním psaním kódu
Spusťte aplikaci akcelerátor Dataverse.
Vyberte kartu Vytvořit okamžitý modul plug-in.
Zadejte Zobrazovaný název.
Volitelně definujte parametry:
Vyberte Nový vstupní parametr nebo Nový výstupní parametr, poté zadejte popisek a datový typ.
Podle potřeby přidejte další vstupní a výstupní parametry.
Zadejte výraz Power Fx v editoru výrazů.
Vstupní parametry ve vzorci odkazujte podle názvu štítku.
Výstupní parametry musí být odkazovány uvnitř složených závorek, například { Out: "Return value" }.
Odkazujte na tabulky Dataverse pomocí funkcí sběru dat, jako jsou Filter() a LookUp().
Pokud je rozsah nastaven na entitu, použijte ThisRecord pro přístup k hodnotám sloupců v řádku tabulky spojeném se spuštěním modulu plug-in, jako je ThisRecord.'Account Name'.
Tip
Poznamenejte si intellisense v poli Výraz. Červená podtržená je neplatná. Zvlněná žlutá znamená, že vaše logika může být ovlivněna omezeními delegování. Vyhněte se problémům s delegováním pomocí delegovatelných funkcí.
Volitelně rozbalte Rozšířené možnosti a upravte řešení, rozsah nebo popis.
Používání konektorů Power Platform s moduly plug-in s minimálním psaním kódu
Konektory Power Platform lze použít v zásuvných modulech s nízkým kódem pro snadnou integraci dat a funkcí ze systémů mimo Dataverse, jako je SQL Server, Salesforce a SharePoint, bez nutnosti složitého kódování nebo zakázkového vývoje.
Předpoklady pro použití konektorů v zásuvných modulech s nízkým kódem
V editoru výrazů plug-in s nízkým kódem Power Fx zadejte název odkazu na připojení (interní název s předponou a podtržítkem, například new_connectorName, nikoli zobrazované jméno).
Intellisense vám ukáže dostupné akce. Vyberte požadovanou akci a poté zadejte požadované parametry.
Před použitím konektoru v plug-inu s nízkým kódem si prohlédněte dokumentaci ke konektoru, abyste se ujistili, že vstupní a výstupní parametry předáváte správně.
V současnosti nejsou podporovány všechny akce konektorů.
Nepoužívejte konektor Dataverse k připojení k tabulkám Dataverse z výrazu modulu plug-in. Místo toho použijte k interakci s kolekcemi nativní funkce Power Fx: Filtr, Hledat, Vyhledat, Oprava, Collect a Set, kde jsou sloupce považovány za globální proměnné.
Otestujte modul plug-in s nízkým kódem
Otestujte okamžité zásuvné moduly
Na Domovské obrazovce vyberte okamžitý zásuvný modul ze seznamu a poté na příkazové liště vyberte Test. Na tuto obrazovku se můžete také dostat z okamžitého editoru zásuvných modulů na panelu příkazů po jejím uložení.
Zadejte hodnoty pro všechny vstupní parametry, které jsou definovány v modulu plug-in s nízkým kódem, a poté vyberte Spustit.
Sledujte odpověď:
Tip
Použijte výstupní parametry k ověření očekávaného chování a výsledků. Jinak při testování vidíte jen úspěch nebo neúspěch.
Testujte automatické zásuvné moduly
Otestujte automatické zásuvné moduly vyvoláním datové události. Ověřením očekávaných změn, které byly definovány ve vzorci, sledujte, zda modul plug-in úspěšně běžel.
Tip
Během náhledu můžete vyvolat související datovou událost pomocí editoru tabulky v Power Apps:
Přihlaste se k Power Apps, přejděte na Tabulky a vyberte tabulku Plug-in.
Na panelu příkazů vyberte Upravit.
Vytvořte, aktualizujte nebo odstraňte řádky přímo z tohoto zobrazení. Případně otevřete řádek ve výchozím formuláři výběrem řádku a poté vyberte Upravit řádek pomocí formuláře na příkazovém řádku.
Integrujte modul plug-in s nízkým kódem
Vyvolejte okamžitý modul plug-in z aplikace plátna nebo vlastní stránky
V aplikaci Akcelerátor Dataverse:
Vyberte okamžitý modul plug-in v seznamu.
Vyberte Zkopírovat fragment kódu na panelu nástrojů.
Vložte a uložte zkopírovaný vzorec do textového editoru nebo poznámkového bloku (někam, kam se můžete snadno vrátit).
Vytvořte nebo upravte aplikaci na plátně (nebo vlastní stránku) v Power Apps studio.
V levém navigačním panelu na kartě Zdroje dat vyberte + Nový zdroj dat a vyhledejte možnost Prostředí z konektoru Dataverse.
Do plátna vložte následující součásti:
Přidejte ovládací prvky vstupu, které odpovídají datovému typu každého parametru, jako např Zadávání textu pro text nebo čísla, přepínač pro logickou hodnotu.
Pokud je rozsah modulu plug-in vázán na tabulku, přidejte pole se seznamem, které je přidruženo ke stejné tabulce, abyste mohli vybrat vstup.
Vložte vzorec zásuvného modulu, který jste zkopírovali, do vlastnosti OnSelect tlačítka.
Mapujte každý vstupní parametr Value pro odkaz na odpovídající vstupní ovládací prvky:
Pokud vzorec byl Environment.new_CalculateSum({ X: Value, Y: Value });, mohl by být přepsán na Environment.new_CalculateSum({ X: TextInput1.Text, Y: TextInput2.Text });
Pokud byl vzorec vázaný, nahraďte Environment zobrazovaným názvem tabulky pro přístup k zásuvnému modulu.
Pokud je pro plug-in s nízkým kódem definován výstupní parametr:
Zachyťte odpověď do vzorce Set() nebo UpdateContext(): Set( ActionResult, Environments.CalculateSum({ X: TextInput1.Text, Y: TextInput2.Text }) );. Zobrazit proměnnou v popisku. Alternativně použijte k zobrazení dat v oznámení vzorec Notify().
Spusťte aplikaci a výběrem příkazu na příkazovém řádku spusťte modul plug-in s minimálním psaním kódu.
Pro přístup k novým modulům plug-in v rámci existujících aplikací plátna je třeba načíst objekt jazyka prostředí. U všech modulů plug-in vytvořených poté, co jste přidali zdroj dat tabulky prostředí do existující aplikace plátna, musíte odstranit a přečíst objekt jazyka prostředí Power Fx. Poté uvidíte aktualizovaný seznam modulů plug-in jako akce.
Intellisense vyžaduje explicitní zápis v automatických zásuvných modulech, pokud chcete odkazovat na jakékoli tabulky ve vzorci. Použijte následující syntaxi zjednoznačnění, jako je [@Accounts], pomocí hranatých závorek a symbolu @ (nikoli Accounts).
Vnořená podpora. Moduly plug-in mohou volat pouze akce první strany publikované společností Microsoft z výrazů Power Fx .
Některé scénáře Collect vyžadují Patch. Existují některé scénáře, kdy Collect() nefunguje. Řešením je použít Patch() jak je uvedeno v příkladu vyplnění sloupce níže. Pokud vytváříte automatický modul plug-in, přidejte před každou tabulku odkazovanou ve vzorci Power Fx znak @.
Když plug-iny s nízkým kódem interagují s konektory a je použito DLP, může správce blokovat vytváření připojení pomocí DLP. Existující odkazy na připojení v prostředí Dataverse však nadále fungují. V případě, že administrátor potřebuje zablokovat všechny interakce zásuvných modulů s nízkým kódem s libovolnými konektory, může zakázat nastavení organizace Allowconnectorsonpowerfxactions. Toto nastavení je ve výchozím nastavení povoleno a lze jej zakázat obvyklými metodami sady SDK (WebAPI, SDK, PowerShell atd.). Můžete to zakázat pomocí okamžitého plug-inu s nízkým kódem takto:
Patch(Organizations, First(Organizations), { 'Enable connectors on power fx actions.': 'Enable connectors on power fx actions. (Organizations)'.No })
Zásuvné moduly, které používají konektory, mohou vydávat pouze výsledky z konkrétních polí. Kvůli tomu je potřeba namapovat konkrétní primitivní hodnoty z odezvy konektoru na výstupní hodnoty.
Moduly plug-in s minimem kódu, které mají omezení vlastních konektorů
Pokud používáte moduly plug-in s minimem kódu s vlastními konektory, musíte nejprve importovat vlastní konektory před informacemi o připojení nebo toky.
Pokud vaše prostředí neobsahuje vlastní konektor v řešení, importujte samostatné řešení, které obsahuje pouze vlastní konektor. Tento import proveďte před importem samotného řešení. Musíte to provést jako první věc, protože Azure musí registrovat vlastní konektor, než mohou být importovány ostatní součásti řešení.
Pokud importujete řešení obsahující vlastní konektory a toky, Azure nemůže registrovat vlastní konektor, zatímco registruje informace o připojení nebo toky. To platí také pro odkazy na připojení pro vlastní konektor, který dříve nebyl importován v samostatném řešení. Pokud Azure nezaregistroval váš vlastní konektor, import se nezdaří nebo nebudete moci import spustit.