Razumijevanje izvora podataka za aplikacije od gotovih gradivnih elemenata

U servisu Power Apps, većina aplikacija od gotovih gradivnih elemenata koristi vanjske informacije pohranjene u servisu u oblaku koji se zove Data Sources. Uobičajeni primjer je tablica u datoteci programa Excel pohranjena u usluzi OneDrive za tvrtke. Aplikacije pristupaju tim izvorima podataka putem Veza.

Ovaj članak opisuje različite vrste izvora podataka te kako raditi s tablicom izvora podataka.

Lako je stvoriti aplikaciju koja vrši osnovno čitanje izvora podataka i zapisivanje na isti. Međutim, ponekad želite više kontrole time kako podaci ulaze u vašu aplikaciju i izlaze iz nje. Ovaj članak opisuje kako vam funkcije Patch, DataSourceInfo, Validate i Errors pružaju više kontrole.

Vrste izvora podataka

Izvori podataka mogu se povezati sa servisom u oblaku ili biti lokalni za aplikaciju.

Povezani izvori podataka

Najčešći izvori podataka su tablice koje možete upotrijebiti za dohvaćanje i pohranjivanje informacija. Možete upotrijebiti veze na izvore podataka za čitanje i pisanje podataka u radnim knjigama programa Microsoft Excel, popise stvorene upotrebom aplikacije Microsoft Lists, biblioteke za SharePoint, SQL tablice i mnoge druge formate koji se mogu pohraniti na servise u oblaku kao što su OneDrive za tvrtke, DropBox i SQL Server.

Izvori podataka koji nisu tablice mogu uključivati e-poštu, kalendare, Twitter i obavijesti, ali ovaj se članak ne babi tim vrstama izvora podataka.

Lokalni izvori podataka

Upotreba kontrola Galerija, Prikaz obrasca i Uređivanje obrasca omogućuje jednostavno stvaranje aplikacije koja očitava i zapisuje podatke iz izvora podataka. Za početak pročitajte članak Razumijevanje obrazaca podataka.

Kada servis Power Apps zatražite da stvori aplikaciju iz podataka, koriste se te kontrole. Iza kulisa, aplikacija koristi internu tablicu za pohranu podataka iz izvora podataka i baratanje istima.

Posebna vrsta izvora podataka je Kolekcija koja je lokalna za aplikaciju i nema podršku u obliku veze sa servisom u oblaku, stoga se informacije ne mogu dijeliti među uređajima za istog korisnika ili između korisnika. Zbirke se mogu lokalno učitati i spremiti.

Vrste tablica

Tablice koje su interne aplikaciji servisa Power Apps su fiksne vrijednosti, baš kao što su broj ili niz vrijednosti. Interne tablice se ne pohranjuju nigdje, one jednostavno postoje u memoriji vaše aplikacije. Ne možete izravno mijenjati strukturu i podatke tablice. Ono što možete učiniti umjesto toga jest stvoriti novu tablicu putem formule: upotrijebite tu formulu kako biste napravili izmijenjenu kopiju izvorne tablice.

Vanjske tablice pohranjuju se na izvor podataka za kasnije dohvaćanje i dijeljenje. Servis Power Apps pruža „veze” za čitanje i zapisivanje pohranjenih podataka. Unutar veza možete pristupiti većem broju tablica s informacijama. Odabrat ćete koje će se tablice koristiti u vašoj aplikaciji, a svaka od njih će postati zasebni izvor podataka.

Ako želite saznati više, Rad s tablicama detaljnije opisuje interne tablice, ali je primjenjiv i na vanjske tablice koje se nalaze u servisu u oblaku.

Rad s tablicama

Tablice izvora podataka možete upotrijebiti na isti način na koji koristite i tablicu servisa Power Apps. Baš kao i interne tablice, svaki izvor podataka ima zapise, stupce i svojstva koja možete koristiti u formulama. Dodatno:

  • Izvor podataka ima iste nazive stupaca i vrste podataka kao i tablica u vezi.

    Napomena

    Za izvore podataka programa SharePoint i Excel koji sadrže nazive stupaca s razmacima, Power Apps će umjesto znakova koristiti "_x0020_". Na primjer, „Naziv stupca” će se u programima SharePoint ili Excel prikazati kao „Naziv_x0020_Stupca” u usluzi Power Apps kada se prikaže u izgledu podataka ili upotrijebi u formuli.

  • Izvor podataka automatski se učitava sa servisa prilikom učitavanja aplikacije. Podatke možete prisilno osvježiti korištenjem funkcije Refresh.

  • Kada korisnici pokrenu aplikaciju, mogu stvoriti, izmijeniti i izbrisati zapise te prisilno poslati te promjene natrag u pozadinsku tablicu u servisu.

    • Zapisi se mogu stvoriti koristeći funkcije Patch i Collect.
    • Zapisi se mogu izmijeniti pomoću funkcija Patch, Update i UpdateIf.
    • Zapisi se mogu ukloniti pomoću funkcija Remove i RemoveIf.
    • Pogreške pri radu s izvorom podataka dostupne su putem funkcije Errors.
  • Funkcije DataSourceInfo, Defaults i Validate pružaju informacije o izvoru podataka koji možete upotrijebiti za optimizaciju korisničkog iskustva.

Stvaranje izvora podataka

Power Apps se ne može koristiti za stvaranje povezanog izvora podataka ili izmjenu njegove strukture. Izvor podataka mora već postojati negdje u servisu. Primjerice, za stvaranje tablice u radnoj knjizi programa Excel koja je pohranjena na servisu OneDrive, prvo morate upotrijebiti Excel Online na servisu OneDrive za stvaranje radnje knjige. Zatim možete stvoriti vezu s njom iz svoje aplikacije.

Međutim, izvori podataka iz zbirki mogu se stvoriti i izmijeniti unutar aplikacije, ali on su privremeni.

Prikažite jedan ili više zapisa

Tok informacija kada ih aplikacija pročita u izvor podataka. Dijagram prikazan iznad prikazuje tok informacija kada aplikacija čita informacije u izvoru podataka:

  • Informacije se pohranjuju i dijele putem servisa za pohranu (u ovom slučaju aplikacije Microsoft Lists ili servisa SharePoint Online).
  • Veza čini ove informacije dostupnima aplikaciji. Ova se veza brine o provjeri autentičnosti korisnika radi pristupa informacijama.
  • Kada se aplikacija pokrene ili se dodirne funkcija Refresh, informacije se izvlače iz veze u izvor podataka u aplikaciji za lokalnu upotrebu.
  • Formule se koriste za čitanje informacija i izlaganje istih kontrolama koje korisnik može vidjeti. Zapise izvora podataka možete prikazati koristeći galeriju na zaslonu i zapisivanjem svojstva Items na izvor podataka: Gallery.Items = DataSource. Kontrole unutar galerije i galeriju povezujete pomoću svojstva Default za tu kontrolu.
  • Izvor podataka je i tablica. Stoga možete koristiti funkcije Filter, Sort, AddColumns i druge za pročišćavanje i proširivanje izvora podataka prije nego što ga upotrijebite cijelosti. Možete upotrijebiti i funkcije Lookup, First, Last i druge kako biste radili s pojedinačnim zapisima.

Izmijenite zapis

U prethodnom ste odjeljku vidjeli kako pročitati izvor podataka. Imajte na umu da strelice u dijagramu iznad pokazuju u jednom smjeru. Promjene izvora podataka ne vraćaju se natrag kroz iste formule iz kojih su podaci dohvaćeni. Umjesto toga, koriste se nove formule. Često se za uređivanje zapisa koristi zaslon drugačiji od onoga za pregledavanje zapisa, osobito na mobilnim uređajima.

Imajte na umu da za izmjenu postojećeg zapisa izvora podataka, zapis mora izvorno dolaziti s izvora podataka. Zapis je možda putovao kroz galeriju, varijablu konteksta i određen broj formula, ali njegov izvor se mora moći pratiti sve do izvora podataka. To je važno zato što dodatne informacije putuju sa zapisom koji ga jedinstveno identificira, osiguravajući time da izmijenite ispravan zapis.

Tijek informacija za ažuriranje izvora podataka. Dijagram prikazan iznad prikazuje tok informacija za ažuriranje izvora podataka:

  • Kontrola Edit form pruža spremnik za kartice unosa koje čine kontrole za korisnički unos kao što su kontrola za unos teksta ili klizač. Svojstva DataSource i Item upotrebljavaju se za identifikaciju zapisa koji treba urediti.
  • Svaka kartica unosa ima svojstvo Default property, koje je obično postavljeno na polje zapisa ThisItem tog obrasca. Kontrole unutar kartica unosa će preuzeti svoje ulazne vrijednosti iz svojstva Default. To obično ne morate izmijeniti.
  • Svaka kartica unosa prikazuje svojstvo Update. To svojstvo mapira unos korisnika na specifično polje zapisa radi zapisivanja natrag na izvor podataka. To obično ne morate izmijeniti.
  • Gumb ili slika kontrole na zaslonu korisniku omogućuje spremanje promjena na zapis. Formula OnSelect te kontrole poziva funkciju SubmitForm koja će to izvršiti. SubmitForm čita sva svojstva Update kartice i to koristi za zapisivanje nazad na izvor podataka.
  • Ponekad će se pojaviti problemi. Može se prekinuti mrežna veza ili provjeru valjanosti izvršava servis za kojeg aplikacija nije znala. Svojstva Error i ErrorKind kontrole obrasca čine te informacije dostupnima kako bi ih se moglo prikazati korisniku.

Za preciznije upravljanje procesom možete upotrijebiti i funkcije Patch i Errors. Kontrola Edit form prikazuje svojstvo Updates kako biste mogli pročitati vrijednosti polja unutar obrasca. To svojstvo možete upotrijebiti i za poziv prilagođenog poveznika na vezu, time potpuno zaobilazeći funkcije Patch i SubmitForm.

Provjera valjanosti

Prije izmjene zapisa, aplikacija bi trebala učiniti sve što može kako bi bila sigurna da će promjena biti prihvatljiva. Postoje dva razloga za to:

  • Daje trenutačne povratne informacije korisniku. Najbolji trenutak za otklanjanje problema je čim se taj problem dogodi, dok ga korisnik ima na umu. Crveni tekst koji identificira problem unosa može se pojaviti doslovce za svaki dodir ili pritisak tipke.
  • Smanjuje mrežni promet i latenciju korisnika. Otkrivanje više problema u aplikaciji znači manje razgovora putem mreže radi otkrivanja i rješavanje problema. Svaki razgovor oduzima vrijeme tijekom kojeg korisnik mora čekati prije nastavka s radom.

Power Apps nudi dva alata za provjeru valjanosti:

  • Izvor podataka može pružiti informacije o tome što je ili nije valjano. Primjerice, brojevi mogu imati minimalne i maksimalne vrijednosti, a za to može biti potreban jedan unos ili više njih. Tim podacima možete pristupiti pomoću funkcije DataSourceInfo.
  • Funkcija Validate upotrebljava te iste informacije za provjeru vrijednosti jednog stupca ili cijelog zapisa.

Rukovanje pogreškama

Odlično, potvrdili ste valjanost svog zapisa. Vrijeme je za ažuriranje tog zapisa pomoću funkcije Patch!

Nažalost, možda još uvijek postoji problem. Mreža ne radi, provjera valjanosti u servisu nije uspjela ili korisnik nema točne dozvole, a to je samo nekoliko mogućih pogrešaka na koje vaše aplikacija može naići. Potrebno je ispravno reagirati na situacije pogrešaka, te korisniku pružiti povratne informacije i način da ih ispravi.

Kada se pojave pogreške s izvorom podataka, vaša aplikacija automatski bilježi podatke o pogrešci i čini ih dostupnima putem funkcije Pogreške. Pogreške su povezane sa zapisima koji su imali probleme. Ako je problem nešto što korisnik može popraviti, primjerice problem s provjerom valjanosti, mogu ponovno poslati zapis, a pogreška će se izbrisati.

Ako se pojavi pogreška tijekom stvaranja zapisa s funkcijom Patch ili Collect, nema zapisa s kojima sr pogreške mogu povezati. U to slučaju, Patch će vratiti vrijednost blank i može se upotrijebiti kao argument zapisa za Errors. Pogreške stvaranja se brišu sljedećom radnjom.

Funkcija Errors vraća tablicu informacija o pogreškama. Te informacije mogu uključivati informacije o stupcu, ako se pogreška može pripisati određenom stupcu. Upotrijebite poruke pogrešaka na razini stupca u kontrolama oznaka koje se nalaze u blizini stupca na zaslonu za uređivanje. Upotrijebite poruke o pogreškama na razini zapisa kada je Stupac u tablici pogrešaka blank, na lokaciji koja je blizu gumba Spremi za cijeli zapis.

Rad sa velikim izvorima podataka

Kada stvarate izvješća iz velikih izvora podataka (možda i milijuni zapisa), htjet ćete smanjiti mrežni promet. Recimo da želite prijaviti sve klijente koji imaju StatusCode „Platinum” u gradu New Yorku. Recimo i da vaša tablica Klijenata sadrži milijune zapisa.

Te milijune klijenata ne želite uvesti u aplikaciju, a zatim odabrati one koje želite. Ono što želite je izvršiti odabir unutar servisa u oblaku u kojem je vaša tablica pohranjena, a zatim poslati odabrane zapise preko mreže.

Mnoge, ali ne sve, funkcije koje možete upotrijebiti za odabir zapisa mogu se delegirati, što znači da se pokreću unutar servisa u oblaku. Kako to učiniti možete saznati tako da pročitate odjeljak Delegacija.

Zbirke

Zbirke su posebna vrsta izvora podataka. One su lokalne za aplikaciju i nemaju podršku u obliku veze sa servisom u oblaku, stoga se informacije ne mogu dijeliti među uređajima za istog korisnika ili između korisnika. Djeluju kao i bilo koji drugi izvor podataka, uz nekoliko izuzetaka:

  • Zbirke se mogu stvoriti dinamički pomoću funkcije Collect. Nije ih potrebno unaprijed uspostaviti, za razliku od izvora podataka koji se temelje na vezi.
  • Stupci zbirke mogu se izmijeniti u bilo kojem trenutku pomoću funkcije Collect.
  • Zbirke omogućuju dupliciranje zapisa. U zbirci može postojati više od jedne kopije istog zapisa. Funkcije kao što je Remove djelovat će na prvi odgovarajući zapis koji pronađu, osim ako se ne navede argument Sve.
  • Upotrijebite funkcije SaveData i LoadData za spremanje i ponovno učitavanje kopije zbirke. Podaci se pohranjuju na privatnu lokaciju kojoj drugi korisnici, aplikacije ili uređaji ne mogu pristupiti.
  • Možete upotrijebiti kontrole Export i Import za spremanje i ponovno učitavanje kopije zbirke na datoteku na kojoj korisnik može raditi.

Više informacija o radu sa zbirkom kao izvorom podataka potražite u odjeljku stvaranje i ažuriranja zbirke.

Zbirke se često koriste za održavanje globalnog stanja za aplikaciju. Pogledajte rad s varijablama kako biste saznali koje su mogućnosti dostupne za upravljanje stanjem.

Napomena

Možete li nam reći više o željenim jezicima za dokumentaciju? Ispunite kratki upitnik. (imajte na umu da je upitnik na engleskom jeziku)

Ispunjavanje upitnika će trajati otprilike sedam minuta. Osobni podaci se ne prikupljaju (izjava o zaštiti privatnosti).