Jaa


Käytä SQL Serverin tietoja

Suorakäyttö:

Jos valitset Aloita tiedoista -asetuksen sovellusta luodessasi, valikoiman Items-ominaisuudessa on Power Fx-kaava, jonka tietolähteen nimi osoittaa suoraan tietokantataulukkoon.

Jos sinulla on esimerkiksi BOOKLENDING-taulukko, näet seuraavan kaavan:

Search([@'[dbo].[BOOKLENDING]'], SearchInput1.Text, author, author,book_name,category)

Näkymät ja tallennetut toimintosarjat:

Yleinen ammattimainen tietojen käyttömalli on käyttää näkymiä ja sitten tallennettuja toimintosarjoja luomiseen, päivittämiseen ja poistamiseen suorakäytön sallimisen sijaan. Jos haluat käyttää näkymiä tai tallennettuja toimintosarjoja, esimerkkikaavaa on muutettava. Tietueen lomakkeessa ei myöskään käytetä SubmitForm()-kaavan sisäistä suoraa lähestymistapaa.

Käynnistimet:

Yksi tietokantamalli on käynnistimien käyttäminen taulukoissa. Jos taulukossa on käynnistin, et voi käyttää suoraa mallia Submit() luomiseen, päivittämiseen tai poistamiseen. Submit()-mallissa on ristiriita SQL-käynnistimien käsittelyn ja samaa tulosparametria käyttävän sisäänrakennetun Power Apps -toiminnallisuuden välillä.

Voit kuitenkin käyttää taulukkoa suoraan kyselytarkoituksiin, mutta käsitelläksesi Create-, Update- tai Delete-funktioita sinun on kutsuttava tallennettua toimintosarjaa.

Lisää tietolähde

Näkymän käyttäminen

Näkymä on tallennettu kysely, joka näytetään yhtenä tietotaulukkona.

Näkymät näkyvät niiden taulukoiden luettelossa, jotka voit valita tietolähdettä lisättäessä. Näkymät tukevat vain kyselyitä, eivät päivityksiä. Päivityksissä on käytettävä tallennettua toimintosarjaa.

Jos luot taulukon Start with data-asetuksella, näet näyttöjä ja kaavoja, jotka näyttävät tietueet valikoimassa ja lomakkeessa. Näet luonnin, muokkaamisen ja poistamisen kaavat ja toiminnot. Jos kuitenkin käytät näkymää, näet vain valikoiman ja lomakkeen näyttöruudun.

Haluat ehkä automaattisesti luodut näytöt Start with data -määrityksestä näkymiä varten.

Tätä automaattisesti luotua vaihtoehtoa varten:

  1. Valitse Start with data perustaulukon avulla.
  2. Poista ja korvaa taulukon tietolähde.

Esimerkki:

Jos sinulla on esimerkiksi BOOKLENDINGVIEW-taulukko ja olet lisännyt sen tietolähteeksi Power Appsille, kaava voi olla niinkin yksinkertainen kuin:

BOOKLENDINGVIEW

Voit myös korvata muita luonti-, päivitys- ja poistokaavoja näkymätietolähteellä ja tallennettujen toimintosarjojen kutsuilla.

Tallennettujen toimintosarjojen käyttäminen

Kun lisäät SQL Server -yhteyden sovellukseesi, voit lisätä tallennettuja toimintosarjoja ja kutsua niitä suoraan Power Fx:ssä.

Muistiinpano

Tämä ominaisuus toimii myös suojattujen implisiittisten yhteyksien kanssa.

Näyttökuva, jossa on niiden taulukoiden, näkymien ja tallennettujen toimintosarjojen luettelot, jotka voidaan lisätä sovellukseen.

Kun tallennettu toimintosarja on valittu, näkyviin tulee alitason solmu, ja tallennetulle toimintosarjalle voidaan antaa Turvallinen valikoimissa ja taulukoissa käyttöä varten -määritys.

Tallennettu toimintosarja on turvallinen, jos siinä ei ole suoritettavia toimintoja, jotka saattavat olla ei-toivottuja tietyissä tilanteissa. Jos esimerkiksi tallennettu toimintosarja keräsi kaikki tilit tietystä kaupungista ja lähetti niille sähköpostiviestin. Et ehkä halua, että sähköpostiviestit lähetetään aina, kun tallennettua toimintosarjaa kutsutaan. Siksi tallennettua menettelyä ei pidä merkitä turvalliseksi.

Merkitse tallennettu toimintosarja turvalliseksi vain, jos:

  1. Tämän toimintosarjan kutsumisella tarpeen mukaan ei ole sivuvaikutuksia.

    Sinun pitäisi pystyä kutsumaan toimintosarjaa useita kertoja tai aina, kun Power Apps päivittää ohjausobjektin. Kun sitä käytetään valikoiman tai taulukon Nimikkeet-ominaisuuden kanssa, Power Apps kutsuu tallennettua toimintosarjaa aina, kun järjestelmä määrittää päivityksen tarpeelliseksi. Tallennetun toimintosarjan kutsumista ei voi ohjata.

  2. Palautat tallennetussa menettelyssä vain pienen määrän tietoja.

    Toimintokutsuilla, kuten tallennetuilla toimintosarjoilla, ei ole rajoitusta noudettavien rivien määrälle. Niitä ei sivuteta automaattisesti 100 tietueen välein, kuten taulukkomuotoisia tietolähteitä, kuten taulukoita tai näkymiä.

    Jos tallennettu toimintosarja palauttaa liikaa tietoja (useita tuhansia tietueita), sovelluksesi saattaa hidastua tai kaatua. Suorituskykysyistä tuo alle 2 000 tietuetta.

Jos merkitset tallennetun toimintosarjan turvalliseksi, voit määrittää tallennetun toimintosarjan valikoimien Items-ominaisuudeksi sovelluksessa käytettäviä taulukoita varten.

Tärkeää

Tallennetun toimintosarjan palautusarvojen rakenteen on oltava staattinen, jotta arvot eivät muutu kutsujen välillä. Jos tallennettu toimintosarja palauttaa esimerkiksi kaksi taulukkoa, se palauttaa aina kaksi taulukkoa. Voit käsitellä joko tyypitettyjä tai tyypittämättömiä tuloksia.

Tulosten rakenteen on myös oltava staattinen. Jos esimerkiksi tulosten rakenne on dynaaminen, niin tulokset ovat tyypittämättömiä ja sinun on määritettävä tyyppi, jotta voit käyttää niitä Power Appsissa. Lisätietoja on kohdassa Tyypittämättömät tulokset.

SQL-nimitilan lisääminen tallennetun toimintosarjan nimen alkuun

Sen SQL Server -nimitilan nimi, johon toimintosarja tallennetaan, lisätään tallennetun toimintosarjan nimen alkuun. Esimerkiksi kaikissa SQL Server -nimitilan DBO tallennetuissa toimintosarjoissa on dbo nimen alussa.

Kun esimerkiksi lisäät tallennetun toimintosarjan, projektissa saattaa näkyä useampi kuin yksi tietolähde.

Näyttökuva SQL-tietolähteistä.

Tallennetun toimintosarjan kutsuminen

Jos haluat käyttää tallennettua toimintosarjaa Power Appsissa, liitä tallennetun toimintosarjan nimen etuliitteeksi siihen liittyvän yhdistimen nimi ja sen jälkeen tallennetun toimintosarjan nimi, kuten Paruntimedb.dbonewlibrarybook.

Muistiinpano

Kun Power Apps tuo tallennetun toimintosarjan, se liittää nimitilan ja toiminnon nimen niin, että nimestä dbo.newlibrarybook tulee dbonewlibrarybook.

Argumentit välitetään Power Apps -tietueena, jossa on nimetyt arvoparit:

<datasourceName>.<StoredprocedureName>({<paramName1: value, paramName2: value, ... >})

Vihje

Muista muuntaa arvot tarvittaessa, kun välität ne tallennettuun toimintosarjaan, koska luet Power Appsin tekstiarvosta. Jos esimerkiksi päivität kokonaislukua SQL:ssä, kentän teksti on muunnettava käyttämällä Value()-funktiota.

Tässä on esimerkki siitä, miltä tallennetut toimintosarjat voivat näyttää, kun niille määritetään OnSelect-ominaisuus.

Näyttökuva, jossa näytetään, miten tallennettuja toimintosarjoja kutsutaan suoraan avain/arvo-parien ja pistemerkintöjen avulla.

Muuttujat ja kaikki tallennetut toimintosarjat

Voit käyttää tallennettua toimintosarjaa gallerian Nimikkeet-ominaisuutta varten, kun olet julistanut sen turvalliseksi käyttöliittymälle. Viittaa tietolähteen nimeen ja tallennetun toimintosarjan nimeen, jonka jälkeen tulee ResultSets. Voit käyttää useita tuloksia viittaamalla palautettuihin taulukoihin, kuten taulukkoon 1 ja taulukkoon 2.

Esimerkiksi tallennettu toimintosarja, jota käytetään Paruntimedb-taulukosta nimellä dbo.spo_show_all_library_books(), näyttää tältä:

Paruntimedb.dbospshowalllibrarybooks().ResultSets.Table1

Tämä kysely täyttää valikoiman tietueilla. Tallennetut toimintosarjat ovat kuitenkin taulukkomallin toiminto-toiminnallisuuksia. Refresh() toimii vain taulukkomuotoisten tietolähteiden kanssa, eikä sitä voi käyttää tallennettujen toimintosarjojen kanssa. Kun tietue luodaan, päivitetään tai poistetaan, valikoima on päivitettävä.

Muistiinpano

Kun käytät Submit()-funktiota lomakkeessa taulukkomuotoiselle tietolähteelle, se kutsuu tehokkaasti taustalla Refresh()-funktiota ja päivittää valikoiman.

Käytä muuttujaa näytön OnVisible-ominaisuudessa ja määritä tallennettu toimintosarja muuttujaan.

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

Tämän jälkeen voit määrittää valikoiman Items-ominaisuuden arvoksi muuttujan nimen.

SP_Books

Kun olet luonut, päivittänyt tai poistanut tietueen kutsumalla tallennettua toimintosarjaa, määritä muuttuja uudelleen päivittääksesi valikoiman.

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

Käytä Power Automatea tallennettujen toimintosarjojen kutsumiseen

Power Automate käsittelee parhaiten asynkronisia toimintoja. Voit kutsua tallennettuja toimintosarjoja osana liiketoimintaprosessin kutsusarjaa.

Jos haluat kutsua Power Automatea ja sen jälkeen tallennettuja toimintosarjoja, luo syötemuuttujat osana työnkulkua.

Näyttökuva, jossa näkyy Power Automate -syöte.

Välitä sitten syötemuuttujat tallennetun toimintosarjan kutsuun.

Suorita tallennettu toimintosarja

Lisää tämä Power Automate -työnkulku sovellukseesi ja kutsu sitä. Valinnaiset argumentit välitetään tietueena ”{ ... }”. Seuraavassa esimerkissä on kaikki valinnaiset argumentit.

Power Automate -työnkulku