Povezivanje na SQL Server iz usluge Power Apps

Možete da se povežete sa SQL Serverom u Azure ili lokalni podataka.

Napomena

Novokreirani SQL izvori podataka više nisu prefiksisani [dbo] kao u prethodnim verzijama Power Apps.

Više informacija potražite u članku Uobičajena pitanja i rešenja za Power Apps.

Automatsko generisanje aplikacije

U zavisnosti od toga Power Apps koji interfejs koristite, pogledajte novi izgled ili klasičan izgled za izradu aplikacije.

  1. Prijavite se u Power Apps.

  2. Sa matične stranice izaberite galeriju sa jednom stranicom ili opciju mobilnog ekrana sa tri ekrana:

    • Da biste kreirali aplikaciju galerije sa jednom stranicom sa rasporedom koji reaguje, odaberite jednu od sledećih opcije:
      • Počnite sa podacima > Izaberite spoljne podatke > iz SQL-a.
      • Počnite sa galerijom dizajna stranice > povezanom sa spoljnim podacima > iz SQL-a.
    • Da biste kreirali mobilnu aplikaciju sa tri ekrana, izaberite opciju Započni sa predloškom aplikacije > iz SQL-a.
  3. Izaberite SQL vezu, a zatim izaberite tabelu. Da biste odabrali drugu vezu, izaberite ... prekoračenje menija za prebacivanje veze ili kreiranje nove SQL veze.

    Napomena

    Prikazuje se samo jedna po jedna veza.

  4. Kada završite, izaberite stavku Kreiraj aplikaciju.

Pozovi uskladištene procedure direktno u Power Fx (pregled)

Možete direktno da pozovete SQL Server uskladištene procedure tako što Power Fx ćete uključiti prekidač za pregled uskladištene procedure sistema SQL Server.

Napomena

Izlazni parametri nisu podržani.

  1. Idite na postavke > Predstojeće funkcije Pregled > ·.
  2. Potražite uskladištene procedure.
  3. Postavite preklopnik na "Dalje " za uskladištene procedure sistema SQL Server.
  4. Sačuvajte i ponovo otvorite aplikaciju.

Snimak ekrana koji prikazuje sql Server uskladištene procedure se uključuje na "Dalje".

Kada aplikaciji dodate SQL Server vezu, sada možete da dodate tabele i prikaze ili uskladištene procedure. Ova funkcija funkcioniše i sa bezbednim implicitnim vezama.

Snimak ekrana koji prikazuje liste tabela, prikaza i uskladištenih procedura dostupnih za dodavanje u aplikaciju.

Ako odmah ne vidite uskladištenu proceduru, brže ćete je potražiti.

Kada izaberete uskladištenu proceduru, pojaviće se podređeni oglas i uskladištiti uskladištenu proceduru kao bezbednu za korišćenje za galerije i tabele. Ako proverite ovu opciju, uskladištenu proceduru možete da dodelite kao svojstvo "Artikli" za galerije koje će tabele koristiti u aplikaciji.

Omogući ovu opciju samo ako:

  1. Nema neželjenih efekata za pozivanje ove procedure na zahtev, više puta, svaki put Power Apps kada osvežava kontrolu. Kada se koristi sa svojstvom "Artikli" galerije ili tabele, Power Apps poziva uskladištenu proceduru svaki put kada sistem utvrdi da je potrebno osvežavanje. Ne možete kontrolisati kada je uskladištena procedura pozvana.
  2. Količina podataka koje vraćate u uskladištenoj proceduri je skromna. Pozivi za radnje, kao što su uskladištene procedure, nemaju ograničenje broja preuzetih redova. One se ne mogu automatski prikazati u 100 zapisa poput tabelarnih izvora podataka kao što su tabele ili prikazi. Dakle, ako uskladištena procedura vrati previše podataka (mnogo hiljada zapisa) onda bi aplikacija mogla da uspori ili padne. Iz razloga performansi trebalo bi da donesete manje od 2.000 zapisa.

Važno

Šema povratnih vrednosti uskladištene procedure treba da bude statična. Što znači da se ne menja od poziva do poziva. Na primer, ako pozovete uskladištenu proceduru i ona vrati dve tabele, uvek bi trebalo da vrati dve tabele. Ako je šema rezultata dinamična, onda ne bi trebalo da je koristite sa njom Power Apps. Na primer, ako pozovete uskladištenu proceduru, a ona ponekad vrati jednu tabelu, a ponekad vrati dve tabele, ona neće ispravno funkcionisati u njemu Power Apps. Power Apps zahteva statičnu šemu za ovaj poziv.

Primer

Kada dodate uskladištenu proceduru, možda ćete videti više izvor podataka u projektu.

Snimak ekrana koji prikazuje SQL izvore podataka.

Da biste koristili uskladištenu proceduru Power Apps, prvo prefiksuj ime uskladištene procedure sa imenom linije spajanja koja je povezana sa njom i imenom uskladištene procedure. 'Paruntimedb.dbonewlibrarybook' u primeru ilustruje ovaj obrazac. Imajte na namenu Power Apps i da kada donese uskladištenu proceduru, ona spaja puno ime. Dakle, 'dbo.newlibrarybook' postaje 'dbonewlibrarybook'.

Ne zaboravite da konvertujete vrednosti na odgovarajući način dok ih prenosite u uskladištenu proceduru po potrebi pošto čitate od tekstualne vrednosti u Power Apps. Na primer, ako ažurirate ceo broj u SQL-u, morate da konvertujete tekst u polju koristeći "Vrednost()".

Direktno pozivanje uskladištenih procedura.

Uskladištenoj proceduri za svojstvo "Artikli" galerije možete pristupiti nakon što je proglasite bezbednom za UI. Referenca izvor podataka i ime uskladištene procedure praćene "Skupovima rezultata". Više rezultata možete pristupiti referenciranjem skupa vraćenih tabela kao što su Tabela 1, Tabela 2 itd.

Na primer, vaš pristup uskladištenoj proceduri sa izvor podataka pod imenom "Paruntimedb" sa uskladištenom procedurom pod imenom "dbo.spo_show_all_library_books()" izgledaće kao sledeći.

Paruntimedb.dbospshowalllibrarybooks().ResultSets.Table1

Ovo popunjava galeriju zapisima. Međutim, uskladištene procedure su dodatak ponašanja radnje tabelarnom modelu. Osvežavanje() radi samo sa tabelarnim izvorima podataka i ne može se koristiti sa uskladištenim procedurama. Zatim je potrebno da osvežite galeriju kada se zapis kreira, ažurira ili izbriše. Kada koristite prosleđivanje() u obrascu za tabelarnu izvor podataka on efektivno poziva Refresh() ispod pokrivača i ažurira galeriju.

Da biste zaobišli ovo ograničenje, koristite promenljivu u svojstvu OnVisible za ekran i podesite uskladištenu proceduru na promenljivu.

Set(SP_Books, Paruntimedb.dbospshowalllibrarybooks().ResultSets.Table1);

A zatim svojstvo "Artikli" galerije postavite na promenljivo ime.

SP_Books

Nakon što kreirate, ažurirate ili izbrišete zapis pozivom na uskladištenu proceduru, ponovo postavite promenljivu. Ovo ažurira galeriju.

Paruntimedb.dbonewlibrarybook({   
  book_name: DataCardValue3_2.Text, 
  author: DataCardValue1_2.Text,
    ...
});
Set(SP_Books, Paruntimedb.dbospshowalllibrarybooks().ResultSets.Table1);

Poznati problemi

SQL izvori podataka više ne dodaju [dbo] prefiks izvor podataka ime

Prefiks [dbo] ne služi nikakvoj praktičnoj svrsi Power Apps jer se izvor podataka imena automatski deambifikuju. Na ovu promenu ne utiče postojeći izvor podataka, ali svi novododati SQL izvori podataka ne uključuju prefiks.

Ako je potrebno da ažurirate veliki broj formula u nekoj od aplikacija, Power Apps uslužni program "Izvorni paket datoteka" i "Raspakivanje " može da se koristi za globalnu pretragu i zamenu.

Napomena

Počevši od verzije 3.21054, automatski ćemo ažurirati prekinute reference imena za nasleđe na novo ime izvor podataka nakon čitanja izvor podataka.

Sledeći koraci

Napomena

Možete li nam reći o svojim željenim postavkama jezika u dokumentaciji? Ispunite kratku anketu. (imajte na umu da je ova anketa na engleskom jeziku)

Anketa će trajati oko sedam minuta. Ne prikupljaju se lični podaci (izjava o privatnosti).