Princípy zdrojov údajov pre plátnové aplikácie v službe Power Apps

Väčšina aplikácií plátna Power Apps používa externé informácie uložené v cloudových službách s názvom Zdroje údajov. Bežným príkladom je tabuľka v súbore programu Excel, ktorý je uložený v službe OneDrive for Business. Aplikácie majú k týmto zdrojom údajom prístup prostredníctvom Pripojení.

Tento článok sa venuje rôznym typom zdrojov údajov a spôsobu práce s tabuľkovými zdrojmi údajov.

Vytvorenie aplikácie, ktorá v zdroji údajov vykonáva základné čítanie a zapisovanie, je jednoduché. Niekedy ale chcete mať väčšiu kontrolu nad tokom údajom do aplikácie a z aplikácie. Tento článok popisuje, ako väčšiu kontrolu zaisťujú funkcie Patch, DataSourceInfo, Validate a Errors.

Druhy zdrojov údajov

Zdroje údajov môžu byť pripojené k nejakej cloudovej službe alebo môžu byť voči aplikácii lokálne.

Pripojené zdroje údajov

Najbežnejším zdrojom údajov sú tabuľky, ktoré môžete používať na získavanie a ukladanie informácií. Pripojenia k zdrojom údajov môžete používať na čítanie a zapisovanie údajov v rámci zošitov Microsoft Excel, zoznamov SharePoint, tabuliek SQL a mnohých ďalších formátov, ktoré sa môžu ukladať do cloudových služieb, ako napríklad OneDrive for Business, DropBox, SQL Server atď.

Medzi iné ako tabuľkové zdroje údajov patria e-mail, kalendáre, Twitter a oznámenia. Tento článok sa však týmto iným zdrojom údajov nevenuje.

Lokálne zdroje údajov

Pomocou ovládacích prvkov Galéria, Formulár zobrazenia a Formulár úprav je jednoduché vytvoriť aplikáciu, ktorá číta a zapisuje údaje zo zdroja údajov. Začnite tým, že si prečítate článok Vysvetlenie údajových formulárov.

Tieto ovládacie prvky sa použijú, keď službu Power Apps požiadate o vytvorenie aplikácie z údajov. Na ukladanie a manipuláciu s údajmi, ktoré pochádzajú zo zdroja údajov, používa táto aplikácia „pod kapotou“ internú tabuľku.

Špeciálnym druhom zdroja údajov je kolekcia, ktorá je voči aplikácii lokálna a nezávisí od pripojenia k nejakej službe v cloude, takže sa tieto informácie nedajú zdieľať medzi zariadeniami rovnakého používateľa alebo medzi používateľmi. Kolekcie sa načítavajú a ukladajú lokálne.

Druhy tabuliek

Tabuľky, ktoré sú voči aplikácii Power Apps interné, sú pevné hodnoty, podobne ako je hodnotou číslo alebo reťazec. Interné tabuľky nie sú nikde uložené a existujú iba v pamäti aplikácie. Štruktúru a údaje tabuľky nemôžete upravovať priamo. Namiesto toho môžete prostredníctvom vzorca vytvoriť novú tabuľku: pomocou tohto vzorca vytvoríte upravenú kópiu pôvodnej tabuľky.

Externé tabuľky sú uložené v zdroji údajov na neskoršie načítanie a zdieľanie. Power Apps poskytuje „pripojenie“ na čítanie a zapisovanie uložených údajov. V rámci určitého pripojenia môžete mať prístup k niekoľkým tabuľkám s informáciami. Keď vyberiete, ktoré tabuľky sa majú v aplikácii používať, stane sa z každej z nich samostatný zdroj údajov.

Ďalšie podrobnosti o interných tabuľkách nájdete v téme venovanej práci s tabuľkami, ktoré tiež platia pre externé tabuľky uložené v nejakej cloudovej službe.

Práca s tabuľkami

Tabuľkové zdroje údajov môžete používať rovnako ako internú tabuľku služby Power Apps. Každý zdroj údajov obsahuje (podobne ako interná tabuľka) záznamy, stĺpce a vlastnosti, ktoré sa používajú vo vzorcoch. Okrem toho:

  • Zdroj údajov má rovnaké názvy stĺpcov a údajové typy ako podkladová tabuľka v pripojení.

    Poznámka

    V prípade SharePoint a excelových zdrojov údajov obsahujúcich názvy stĺpcov s medzerami nahradí služba Power Apps tieto medzery za "_x0020_". Napríklad Názov stĺpca v Exceli alebo SharePoint sa v službe Power Apps zobrazí ako Názov_x0020_stĺpca v prípade, že sa vyskytuje v rozložení údajov alebo používa vo vzorci.

  • Zdroj údajov sa načíta zo služby automaticky pri načítaní aplikácie. Pomocou funkcie Obnoviť môžete vynútiť aktualizáciu údajov.

  • Používatelia môžu pri práci v aplikácii vytvárať, meniť a odstraňovať záznamy a odosielať tieto zmeny späť do podkladovej tabuľky v službe.

    • Záznamy sa dajú vytvárať pomocou funkcií Patch a Collect.
    • Záznamy sa dajú upravovať pomocou funkcií Patch, Update, a UpdateIf.
    • Záznamy sa dajú odstraňovať pomocou funkcií Remove a RemoveIf.
    • Chyby, ku ktorým dôjde pri práci so zdrojom údajov, sú dostupné prostredníctvom funkcie Errors.
  • Funkcie DataSourceInfo, Defaults a Validate poskytujú informácie o zdroji údajov, s pomocou ktorých môžete optimalizovať používateľské prostredie.

Vytváranie zdrojov údajov

Power Apps sa nedá použiť na vytvorenie pripojeného zdroja údajov ani na úpravu jeho štruktúry; zdroj údajov už musí existovať v nejakej službe. Ak chcete napríklad vytvoriť tabuľku v excelovom zošite uloženom na disku OneDrive, musíte najprv v Exceli Online vytvoriť na disku OneDrive zošit. Potom k nemu môžete z vašej aplikácie vytvoriť pripojenie.

Zdroje údajov v podobe kolekcie je možné vytvoriť a upraviť v aplikácii, sú však iba dočasné.

Zobrazenie jedného alebo viacerých záznamov

Diagram vyššie znázorňuje tok informácií, keď aplikácia číta tieto informácie v nejakom zdroji údajov:

  • Informácie sa ukladajú a zdieľajú prostredníctvom služby úložiska (v tomto prípade je to SharePoint zoznam na lokalite Office 365).
  • Pripojenie sprístupňuje tieto informácie aplikácii. Toto pripojenie zaisťuje overenie používateľa pri prístupe k informáciám.
  • Pri spustení aplikácie alebo použití funkcie Refresh sa informácie prenesú z pripojenia do zdroja údajov v aplikácii na lokálne použitie.
  • Vzorce slúžia na čítanie informácií a ich sprístupnenie v ovládacích prvkoch, ktoré vidí používateľ. Záznamy zdroja údajov zobrazíte tak, že na niektorej obrazovke použijete galériu a jej vlastnosť Položky previažete zo zdrojom údajov: Gallery.Items = DataSource. Ovládacie prvky v galérii previažete s galériou pomocou ich vlastnosti Default.
  • Zdroj údajov je tiež tabuľka. Než zdroj údajov použijete ako celok, môžete ho pomocou funkcií Filter, Sort, AddColumns a ďalších spresniť a rozšíriť. Na prácu s jednotlivými záznamami môžete použiť tiež funkcie Lookup, First, Last a ďalšie.

Úprava záznamu

V predchádzajúcej časti ste zistili, ako sa zdroj údajov číta. Všimnite si, že šípky v diagrame uvedenom vyššie sú jednosmerné. Zmeny, ktoré vykonáte v zdroji údajov, sa neprenášajú späť prostredníctvom rovnakých vzorcov, ktorými sa údaje načítali. Namiesto toho sa používajú nové vzorce. Často sa na úpravu záznamu používa iná obrazovka ako na prehľadávanie záznamov, obzvlášť v mobilnom zariadení.

Na to, aby ste mohli upraviť existujúci záznam nejakého zdroja údajov, musí tento záznam pôvodne pochádzať z tohto zdroja údajov. Záznam sa môže preniesť cez galériu, kontextovú premennú a ľubovoľný počet vzorcov, ale jeho pôvod by sa mal dať spätne vystopovať až k zdroju údajov. To je dôležité, pretože spolu so záznamom sa prenášajú ďalšie informácie, ktoré ho jednoznačne identifikujú a zaisťujú, že upravujete správny záznam.

Diagram vyššie znázorňuje tok informácií pri aktualizácii zdroja údajov:

  • Ovládací prvok Formulár na úpravy funguje ako kontajner pre vstupné karty, ktoré obsahujú ovládacie prvky pre zadania používateľa, ako je vstup textu alebo jazdec. Na identifikáciu záznamu, ktorý sa má upraviť, slúžia vlastnosti DataSource a Item.
  • Každá vstupná karta má vlastnosť Default, ktorá je obvykle nastavená na pole záznamu ThisItem formulára. Ovládacie prvky na vstupnej karte potom preberajú svoje vstupné hodnoty z vlastnosti Default. Za normálnych okolností toto nastavenie nemusíte meniť.
  • Každá vstupná karta sprístupňuje vlastnosť Update. Táto vlastnosť mapuje zadanie používateľa na konkrétne pole záznamu na účely spätného zapisovania do zdroja údajov. Za normálnych okolností toto nastavenie nemusíte meniť.
  • Ovládací prvok tlačidla alebo obrázka na obrazovke umožňuje používateľovi uložiť zmeny do záznamu. Vzorec OnSelect tohto ovládacieho prvku volá na tento účel funkciu SubmitForm. Funkcia SubmitForm prečíta všetky vlastnosti Update týchto kariet a použije ich na spätné zapisovanie do zdroja údajov.
  • Niekedy môžu nastať problémy. Môže prestať fungovať sieťové pripojenie alebo overovaciu kontrolu vykonáva služba, o ktorej aplikácia nevie. Tieto informácie sú sprístupnené vlastnosťami Error a ErrorKind formulára, takže ich môžete zobraziť používateľovi.

Na odstupňovanie kontroly nad týmto procesom môžete použiť tiež funkcie Patch a Errors. Ovládací prvok Formulár na úpravy sprístupňuje vlastnosť Updates, aby ste mohli prečítať hodnoty polí vo formulári. Pomocou tejto vlastnosti môžete tiež pri pripojení zavolať vlastný konektor a úplne tak obísť funkcie Patch a SubmitForm.

Overenie

Pred vykonaním zmeny záznamu by aplikácia mala všetkými možnými spôsobmi zaistiť, aby bola táto zmena akceptovateľná. Má to dva dôvody:

  • Okamžitá spätná väzba používateľovi. Chybu je najlepšie opraviť ihneď, keď nastane, dokým ju má používateľ v pamäti. Pri každom dotyku alebo stlačení klávesa sa môže objaviť červený text, ktorý označuje problém v zadaní.
  • Menší sieťový prenos údajov a kratšia latencia používateľa. Väčší počet problémov zistených v aplikácii znamená menšiu komunikáciu cez sieť z dôvodu zistenia a riešenia problémov. Každá komunikácia zaberie čas, počas ktorého musí používateľ čakať, než môže pokračovať.

Power Apps ponúka na overenie dva nástroje:

  • Zdroj údajov môže poskytovať informácie o tom, čo je a čo nie je platné. Čísla môžu mať napríklad minimálne a maximálne hodnoty a niektoré položky môžu byť povinné. K týmto informáciám sa dostanete pomocou funkcie DataSourceInfo.
  • Funkcia Validate používa rovnaké informácie na kontrolu hodnoty v jednom stĺpci alebo v celom zázname.

Spracovanie chýb

Skvelé, záznam ste overili. Nastal čas ho aktualizovať pomocou funkcie Patch.

Lenže problémom nemusí byť koniec. Sieť prestala fungovať, overenie v službe zlyhalo alebo používateľ nemá tie správne povolenia – to je iba niekoľko z možných chýb, na ktoré môže vaša aplikácia naraziť. Musí správne reagovať na chybové situácie a poskytnúť používateľovi spätnú väzbu a prostriedky, ako chybu napraviť.

Keď dôjde k chybe so zdrojom údajov, aplikácia automaticky zaznamená informácie o tejto chybe a sprístupni ich prostredníctvom funkcie Errors. Chyby sú pridružené k záznamom, v prípade ktorých nastali problémy. Ak ide o niečo, čo môže používateľ opraviť (napríklad o problém s overením), môže záznam znova odoslať a chyby tým vymazať.

Ak chyba nastane pri vytváraní záznamu pomocou funkcie Patch alebo Collect, neexistuje žiadny záznam, ku ktorému sa majú chyby pridružiť. V takom prípade vráti funkcia Patch prázdnu hodnotu, ktorá sa dá použiť ako druhý argument funkcie Errors. Chyby pri vytváraní sa mažú pomocou ďalšej operácie.

Funkcia Errors vracia tabuľku s informáciami o chybe. Môžu medzi ne patriť informácie o stĺpci, ak sa dá chyba prisúdiť konkrétnemu stĺpcu. Chybové správy na úrovni stĺpca používajte v prípade ovládacích prvkov označení, ktoré sú v blízkosti miesta, kde sa na obrazovke na úpravy tento stĺpec nachádza. Chybové správy na úrovni záznamu používajte, keď je pole Stĺpec v tabuľke chýb prázdne, a to v blízkosti tlačidla Uložiť pre celý formulár.

Práca s rozsiahlymi zdrojmi údajov

Pri vytváraní správ z rozsiahlych zdrojov údajov (možno milióny záznamov) chcete minimalizovať sieťový prenos údajov. Povedzme, že chcete vytvoriť správu so všetkými zákazníkmi v New Yorku, ktorých StatusCode má hodnotu Platinum. Tabuľka Zákazníci pritom obsahuje milióny záznamov.

Nechcete načítať tieto milióny zákazníkov do svojej aplikácie a potom vybrať tie, ktoré potrebujete. Chcete, aby k tomuto výberu došlo v cloudovej službe, kde je táto tabuľka uložená, a cez sieť sa odoslali iba zvolené záznamy.

Väčšinu funkcií, ktoré môžete použiť na výber záznamov (ale nie všetky), je možné delegovať, čo znamená, že sa spúšťajú v cloudovej službe. Ak chcete zistiť, ako na to, prečítajte si tému venovanú delegovaniu.

Kolekcie

Kolekcie sú špeciálnym druhom zdroja údajov. Sú voči aplikácii lokálne a nezávisia od pripojenia k nejakej službe v cloude, takže sa informácie nedajú zdieľať medzi zariadeniami rovnakého používateľa ani medzi používateľmi. Až na niekoľko výnimiek fungujú podobne ako akýkoľvek iný zdroj údajov:

  • Kolekcie sa dajú vytvárať dynamicky pomocou funkcie Collect. Nemusia byť zriadené predtým ako zdroje údajov založené na pripojení.
  • Stĺpce kolekcie je možné kedykoľvek upraviť pomocou funkcie Collect.
  • Kolekcie povoľujú duplicitné záznamy. V kolekcii môže existovať viac ako jedna kópia rovnakého záznamu. Funkcie ako Remove vykonajú operáciu s prvým nájdeným záznamom, ak nie je zadaný argument All.
  • Pomocou funkcií SaveData a LoadData môžete kópiu kolekcie uložiť a znova načítať. Informácie sú uložené v súkromnom umiestnení, ku ktorému nemajú prístup iní používatelia, aplikácie ani zariadenia.
  • Pomocou ovládacích prvkov Export a Import môžete uložiť a znova načítať kópiu kolekcie do súboru, s ktorým môže používateľ pracovať.

Ďalšie informácie o tom, ako pracovať s kolekciou ako zdrojom údajov, nájdete v téme venovanej vytvoreniu a aktualizácii kolekcie.

Kolekcie sa často používajú na uchovanie globálneho stavu aplikácie. Možnosti dostupné na správu stavu nájdete v téme o práci s premennými.