Transformace formulářů InfoPath do Power Apps
Jste tvůrcem skvělých formulářů v aplikaci InfoPath, který hledá způsob, jak je přenést na robustnější platformu?
Klíčové výhody Power Apps oproti aplikaci InfoPath
Jako většina zkušených uživatelů aplikace InfoPath už nějakou dobu vyžíváte své jedinečné dovednosti k vytváření úžasných formulářů. Se svými formuláři jste spokojení, ale zároveň znáte jejich omezení: "klasický" vzhled, ne zrovna ideální prostředí pro mobilní zařízení, nejistota využitelnosti v budoucnu a pocit odříznutí, když se potřebujete připojit k ostatním službám bez nutnosti psaní kódu.
Tým Power Apps o těchto a mnohých dalších výzvách věděl. Zapracoval na tom, aby způsob práce s formuláři zlepšil a umožnil vám vytvářet aplikace plátna s využitím vašich stávajících obchodních a technologických dovedností. Díky použití Power Apps můžete rychle vytvářet a nasazovat vhodná firemní řešení bez nutnosti psaní kódu.
Power Apps umožňuje výkonnou budoucnost
Power Apps fungují na platformě software jako služba (SaaS), která je navržená k rychlému vytváření vysoce funkčních aplikací, které můžete bez další práce nasazovat na web, na SharePoint, do Dynamics 365, Teams a Power BI nebo na mobilní zařízení. Protože je jejich nasazení tak snadné (stačí někomu poslat adresu URL k publikované aplikaci), je stejně snadná i jejich aktualizace.
Sdílení aplikací
Zkoušeli jste někdy vytvořit aplikaci a potom ji publikovat do obchodu pro zařízení s iOSem nebo Android? Je to složité. Pokud chcete nasadit druhou aplikaci nebo aktualizovat stávající aplikaci, musí vaši uživatelé provést ještě spoustu dalších kroků. Ne s Power Apps. Vaši uživatelé si na svoje zařízení nainstalují Power Apps Mobile a přihlásí se. Okamžitě mají přístup ke všem vysoce funkčním aplikacím, které jste jim nasdíleli. Když budete v budoucnu tyto aplikace aktualizovat nebo budete vydávat nové aplikace, objeví se jim tyto aplikace na zařízení. Mobilní aplikace bez potíží se správou zařízení jsou velkou výhrou pro vás i pro vaši firmu.
Když už jsme u mobilních zařízení
Díky Power Apps můžete využít funkcí uživatelova mobilního zařízení. V rámci aplikace máte přístup ke snímači zrychlení, fotoaparátu, kompasu, informacím o připojení a signálům o poloze. Otevírá se vám tak spousta možností, jak vytvářet aplikace, které pomohou co nejrychleji dokončit práci. Funkce dotykového ovládání je v Power Apps samozřejmostí: už nemusíte při vytváření aplikace psát žádný kód navíc.
Nebuďte odříznutí
U aplikace InfoPath bylo běžné pracovat s daty z jednoho zdroje dat. Pokud jste však chtěli provádět aktualizace někde jinde (například v seznamu v jiné kolekci webů) nebo jste se chtěli připojit k externím službám, bylo to složité a kódování takových postupů vám nedalo spát. Power Apps jsou navržené tak, aby vám umožňovaly v jedné aplikaci pracovat s více zdroji dat a připojeními ke službě. Aktuálně existuje více než 200 konektorů, které podporují kombinaci místních a cloudových dat, včetně Microsoft Office 365 a služeb Azure, jako je Power Automate a Dynamics 365. Můžete se také připojit k celé řadě služeb třetích stran, mezi které patří Dropbox, Google, Salesforce, Slack a další oblíbené služby.
Nyní můžete vytvářet řešení nejen podle toho, kde se nacházela původní data, ale i podle toho, kde je uživatelé potřebují.
Power Apps a SharePoint: ještě lépe spolu
Power Apps jsou skvělým nástrojem ke zlepšení prostředí SharePoint, a to hned dvěma způsoby. Máte možnost buď přizpůsobit formuláře seznamu, nebo pro práci s daty SharePoint vytvořit samostatnou aplikaci.
Přizpůsobení formuláře SharePoint je velmi užitečné, pokud budou vaši uživatelé tento seznam používat pro každodenní práci, ale chcete přizpůsobit, jakým způsobem mohou přidávat, zobrazovat a upravovat položky v seznamu. Kliknutím na možnost Přizpůsobit formulář vytvoříte "formulářovou aplikaci" s jednou obrazovkou, která bude na základě kontextu měnit režimy (nový/upravit/zobrazit). Tyto aplikace spravuje SharePoint a jejich oprávnění jsou stejná jako oprávnění seznamu pro upravení/zobrazení.
Vytvoření aplikace plátna Power Apps ze SharePoint vám umožní spustit tuto aplikaci na mobilním zařízení samostatně. Můžete ji také vložit na stránku SharePoint. Kliknutím na ni vytvoříte aplikaci se třemi obrazovkami (procházení seznamu, zobrazení podrobností a vytvoření/aktualizace položky). Model oprávnění nebo sdílení není u těchto aplikací vázaný na SharePoint, ale místo toho je spravovaný z Power Apps.
Teď, když rozumíte rozdílu mezi těmito dvěma možnostmi, vám následující část poskytne přehled o používání každé z nich.
formuláře aplikace SharePoint
Tým Power Apps a tým SharePoint spolupracovaly na vytvoření scénáře přizpůsobení, který můžete se SharePoint použít. Pokud jste jako většina vývojářů aplikace InfoPath, naučili jste InfoPath komunikovat se SharePoint. SharePoint je skvělý, ale výchozí formuláře jsou bez nápadu a neumožňují bez aplikace InfoPath přizpůsobení ani práci s obchodní logikou. Tak tomu bývalo dříve.
Nyní je v Power Apps přizpůsobení formuláře seznamu výchozí funkcí a jejím využitím využíváte i plný potenciál Power Apps. Na následujícím snímku obrazovky si můžete prohlédnou příklad formuláře Power Apps s vloženou sestavou Power BI. Celé řešení netrvalo ani 15 minut.

Další důležitou funkcí Power Apps je schopnost se ze stejného formuláře snadno připojit k další kolekci webů SharePoint nebo jinému prostředí. Chtěli byste například vytvořit jeden formulář, který zobrazuje a aktualizuje data zároveň ze SharePoint Online i místního prostředí SharePoint? Žádný problém. Nainstalujte místní bránu dat a v řádu několika minut budete v provozu a budete moct propojit služby Power Apps, Power BI, Power Automate a Azure Logic Apps se svými místními daty. Změny v pravidlech brány firewall nejsou potřeba. Další úroveň funkčnosti můžete získat připojením této aplikace ke službě Power Automate.
Samostatná aplikace SharePoint
Tento postup použijte, pokud nechcete pouze aktualizovat prostředí formuláře seznamu, ale chtěli byste vytvořit úplnou, samostatnou aplikaci na základě dat služby SharePoint. Je to zároveň i nejlepší způsob, jak se začít učit, jak plátno Power Apps funguje a jak začít z velkého množství zdrojů dat vytvářet budoucí aplikace.
Chcete-li začít, postupujte následovně:
- Otevřete seznam, ze kterého chcete vytvořit aplikaci.
- Na řádku nabídek vyberte Integrace -> Power Apps -> Vytvořit aplikaci.
- Zadejte název a pak vyberte Vytvořit.
Power Apps vytvoří aplikaci, kterou si můžete přizpůsobit.
Začněte svou první aplikaci jednoduchým seznamem pouze s několika poli různých typů. Umožní vám to vytvořit slušný základ, aniž byste se cítili zahlcení. Nedělejte si starosti, za chvíli z vás budou profesionálové připravení na komplexní aplikace. Pokud potřebujete pomoct provést touto první aplikací, podívejte se do dokumentace nebo na komunitní video. Níže uvedené příklady ukazují běžné úkoly v aplikaci InfoPath a návod, jak je provést v Power Apps. Základem každého z nich je jednoduchá aplikace seznamu.
Jak se to dělá v Power Apps?
Teď, když už znáte základní koncepty, pokročme dál. První aplikaci jste vytvořit zvládli a tato část vám pomůže použít běžné koncepty aplikace InfoPath v Power Apps.
Skrytí/zobrazení/zamknutí pole na základě hodnoty
Úspěšné formuláře často používají silnou obchodní logiku například změnou stavu pole na základě hodnoty nebo akce. V Power Apps můžete nastavit vlastnost DisplayMode na možnost Edit (Upravit) nebo View (Zobrazit), abyste určili, zda uživatel může dané pole změnit. Můžete také použít jednoduchý vzorec If a provést to podmíněně. Nejprve vyberte kartu, kterou chcete upravit, a potom vyberte ikonu zámku. Tento krok odemkne kartu, abyste mohli změnit hodnotu.

V pravém podokně přejděte na vlastnost DefaultMode, abyste ji mohli upravovat.

V tomto příkladu použijte vzorec If:
If(ThisItem.Color = "Blue", DisplayMode.View, DisplayMode.Edit)
Tento vzorec říká, že pokud pole Color (Barva) aktuální položky obsahuje barvu Blue (Modrá), pole Animal (Zvíře) je jen pro čtení. V opačném případě je možné pole upravovat.
Pokud chcete kartu skrýt, místo toho, aby byla jen pro čtení, vložte podobnou funkci do vlastnosti Visible přímo nad položkou DisplayMode.
Můžete také například nastavit, že tlačítko schválení se zobrazí, pouze pokud je e-mailová adresa uživatele shodná s e-mailovou adresou schvalovatele. (Tip: Použijte User().Email pro přístup k e-mailové adrese současného uživatele.) Tím by bylo možné uložit e-mailovou adresu schvalujícího do pole YourDataCard a následně nastavit vlastnost Visible tlačítka na tento vzorec:
If( YourDataCard.Text = User().Email, true, false )
Podmíněné formátování
Podobným způsobem, kterým jste výše skryli pole, můžete také poskytnout uživatelům vizuální zpětnou vazbu. Mohli byste například červeně zvýraznit text, kdyby zadaná hodnota nespadala do přijatelného rozsahu, nebo byste mohli po dokončení nahrávání souboru změnit text a barvu tlačítka nahrávání. Oba kroky můžete provést pomocí funkce, například pomocí funkce If ve vlastnostech, jako například Color nebo Visible.
Například byste mohli použít funkci If společně s funkcí IsMatch, abyste změnili barvu textu e-mailového pole na červenou, když uživatel nezadá do vstupního pole správně naformátovanou e-mailovou adresu. Provedli byste to nastavením hodnoty Color u pole TextInput1 (kam uživatel zadává e-mailovou adresu) na tento vzorec:
If( IsMatch(TextInput1.Text, Email), Black, Red )
Funkce IsMatch podporuje spoustu předdefinovaných vzorů, jako jsou e-mailové adresy, a můžete si vytvořit i své vlastní. Další informace o podmíněném formátování najdete v tomto komunitním videu.
Implementace zabezpečení na základě rolí
První funkcí, kterou je třeba vzít v úvahu, je DataSourceInfo. Informace, které získáte zpět ze zdroje dat, se budou lišit, často však můžete použít tento vzorec, abyste ověřili, zda má uživatel přístupová oprávnění k úpravě dat (nahraďte položku YourDataSource názvem vašeho zdroje dat):
DataSourceInfo( YourDataSource, DataSourceInfo.EditPermission )
Když bude mít uživatel přístup k úpravě dat, můžete s tímto vzorcem zobrazit pouze formulář nebo tlačítko. Pokud si chcete zobrazit celý seznam informací, na které se můžete s touto funkcí dotazovat, podívejte se na dokumentaci funkce DataSourceInfo.
Pokud chcete pro správu přístupu k tlačítkům nebo formulářům aplikace používat raději skupiny služby Active Directory, bude to složitější. K tomuto účelu využijete flexibility Power Apps a vytvoříte si pomocí rozhraní Microsoft Graph API vlastní konektor. Pokud to zní příliš složitě, postupujte podle instrukcí v tomto blogovém příspěvku, kde jsou uvedeny podrobné pokyny.
Odeslání e-mailu z aplikace
E-mailovou zprávu ze služby Power Apps můžete odeslat různými způsoby, ale nejjednodušší je použít konektor Office 365 Outlook. Pomocí tohoto konektoru můžete z aplikace odeslat zprávu vlastním jménem. Můžete také přijímat e-mailové zprávy a provádět další úlohy spojené z poštovní schránkou. K tématu odesílání e-mailu existuje dokumentace a komunitní video.
Složitější zprávy (například v rámci pracovního postupu schvalování ve službě SharePoint) můžete odesílat pomocí toku Power Automate a připojit aplikaci k toku, který vytvoříte. Po připojení aplikace k toku Power Automate se uvolní plný potenciál modulu pracovních postupů, který je stejně jako Power Apps velmi dobře propojený s externími daty a službami. Další informace o tom, jak propojit Power Apps a Power Automate, najdete v této dokumentaci.
Pokud se vám stále nepodařilo najít způsob odeslání emailu, který hledáte, můžete využít konektory Power Apps pro Benchmark Email, Gmail, MailChimp, Outlook.com, SendGrid nebo SMTP. Právě v možnostech připojení spočívá výhoda Power Apps.
Pracovní postupy
Obchodní aplikace a obchodní logika se těžko obejdou bez modulu pracovního postupu. Dobrou zprávou je, že tým Power Apps se nesnažil znovu objevit Ameriku a vytvořit další modul pracovního postupu. Místo toho vám nabízí robustní konektor ke službě Power Automate. Můžete automatizovat procesy a úlohy napříč více než 200 různými službami prostřednictvím jejich snadno použitelného modulu pracovního postupu. Další informace o tom, jak propojit Power Apps a Power Automate, najdete v této dokumentaci.
Proměnné v Power Apps
Při sestavování řešení je přirozené přemýšlet nad zahrnutím proměnných. Power Apps nabízí několik typů proměnných, ale používejte je, pouze pokud je to nezbytné. Místo toho, abyste získávali data, ukládali je do proměnné a pak na tuto proměnnou odkazovali, zkuste na tato data odkázat přímo. Tento model lze pochopit lépe, pokud jej přirovnáte k Excelu. V Excelu není funkce Suma proměnnou, ale součtem ostatních polí. Takže pokud chcete tuto hodnotu použít na jiném místě na listu, vyberte buňku, ve které jste součet spočítali. V této dokumentaci k tomu všemu najdete vysvětlení. Otevřete svou mysl jinému myšlenkovému pochodu.
Pokud proměnnou přesto stále potřebujete (v mnoha případech tomu tak je), následující část vám pomůže pochopit jejich různé možnosti. Nezapomínejte, že v Power Apps proměnné definovat nemusíte. Prostě použijte funkci k zadání názvu a hodnoty, které chcete uložit, a vaše proměnná se vytvoří. Vytvořené proměnné si můžete prohlédnout po výběru možnosti Proměnné na kartě Zobrazení. Proměnné jsou uchovávány v paměti a jejich hodnoty jsou ztraceny při zavření aplikace. Můžete vytvořit následující typy proměnných:
Globální proměnné jsou asi první proměnné, které vás napadnou. Pomocí funkce Set zadejte hodnotu globální proměnné, která bude k dispozici v celé aplikaci:
Set( YourVariable, YourValue )Potom můžete v celé aplikaci odkazovat na VašiHodnotu jejím názvem.
Kontextové proměnné jsou k dispozici pouze na obrazovce, na které byly definovány. Když z obrazovky odejdete, dojde k jejich resetování. Často se například používají k ukládání informací předaných z předchozí obrazovky nebo ke sledování toho, jestli byl odeslán formulář. Pro nastavení kontextové proměnné použijte funkci UpdateContext, jak je uvedeno v tomto příkladu:
UpdateContext( { Submitted: "true" } )V tomto příkladu je hodnota proměnné s názvem Submitted (Odesláno) nastavena na hodnotu true. Tento vzorec můžete přidat k vlastnosti OnSelect tlačítka pro odeslání a sledovat, jestli se informace odeslala, a následně změnit všechna pole na Jen pro čtení.
Kolekce se používají k ukládání tabulek s informacemi, které je možné aktualizovat jednotlivě. Pomocí funkce Collect například vytvoříte nákupní košík, když uživatel označí různé položky služby SharePoint, které chce odeslat. Použití tohoto konceptu si můžete prohlédnout na komunitním videu.
Kaskádové rozevírací seznamy
Kaskádové rozevírací seznamy jsou velmi užitečné, protože vám například umožňují filtrovat volby v jednom rozevíracím seznamu na základě hodnoty vybrané v předchozím rozevíracím seznamu. V Power Apps se často vytvářejí z důvodu dvou zdrojů dat v aplikaci. Prvním zdrojem dat jsou data, která si zobrazujete nebo která aktualizujete, a druhý zdroj dat ukládá hodnoty pro vytvoření kaskádového efektu. Na tomto obrázku vidíte příklad druhého zdroje dat s možnostmi volby.

V tomto příkladu můžete přidat rozevírací seznam s názvem ddSelectType a nastavit jeho vlastnost Items (Položky) na tento vzorec:
Distinct( Impacts, Title )
V rozevíracím seznamu by se zobrazovaly pouze položky Cost (Cena), Program Impact (Dopad programu) a Schedule (Plán). Potom můžete přidat druhý rozevírací seznam a nastavit jeho vlastnost Items (Položky) na tento vzorec:
Filter( Impacts, ddSelectType.Selected.Value in SCategory )
A takhle snadno byste vytvořili kaskádové rozevírací seznamy. Další informace najdete v příspěvku od týmu Power Apps SharePoint: Kaskádování rozevíracích seznamů ve 4 snadných krocích! nebo v tomto komunitním videu. A nedělejte si starosti, úplně stejně jednoduše to zvládnete i bez SharePoint.
Nevytvářejte jednu superaplikaci
V Power Apps můžete vzájemně volat jednotlivé aplikace. Takže místo obrovského formuláře InfoPath, který sotva drží pohromadě, můžete vytvořit skupinu aplikací, které na sebe vzájemně volají a dokonce si předávají data, což usnadňuje vývoj.
Další kroky
S Power Apps a informacemi z tohoto tématu jste nyní připraveni vyrazit do světa a začít ho postupně dobývat každou novou aplikací. Níže jsme vám připravili na cestu několik užitečných a nápomocných odkazů, například odkaz na komunitní web služby Power Apps. Připojte se ke komunitě ještě dnes a zlepšete své dovednosti mnohem rychleji, než byste to zvládli samotní.
Referenční informace ke vzorcům – procházení výchozích funkcí je vždy skvělý způsob, jak získat inspiraci.
Komunita Power Apps - prohlédněte si příklady, zapojte se do diskuse s ostatními, ptejte se, odpovídejte na otázky a pomozte komunitě Power Apps růst.
Poznámka
Můžete nám sdělit, jaké máte jazykové preference pro dokumentaci? Zúčastněte se krátkého průzkumu. (upozorňujeme, že tento průzkum je v angličtině)
Průzkum bude trvat asi sedm minut. Nejsou shromažďovány žádné osobní údaje (prohlášení o zásadách ochrany osobních údajů).
Váš názor
Odeslat a zobrazit názory pro