Esimerkki 2: Sido FHIR-tietoja pohjaan perustuvassa sovelluksessa FHIRlink-yhdistimen avulla
Tämä esimerkki seuraa esimerkkiä Esimerkki 1: Määritä ja muodosta yhteys FHIRlink-sovellukseen ja käyttää samaa FHIRlink-näyte-sovellusta FHIRlink ListResources-menetelmällä. Tässä esimerkissä näytämme, kuinka menetelmäkutsun tulokset ja merkinnät niputetaan pohjaan perustuvan sovelluksen ohjausobjektiin.
Voit myös ladata ja tuoda lopullisen ratkaisun toteutusesimerkkinä. Lisätietoja: Lataa esimerkki. Ennen kuin aloitat esimerkin tai käytät näytettä, katso Oletukset esimerkin käytöstä.
Muistiinpano
FHIR® (jonka omistaa Health Level Seven International), Google™ (jonka omistaa Google LLC) ja EPIC® (jonka omistaa Epic Systems Corporation) ovat rekisteröityjä tavaramerkkejä Näiden tuotemerkkien käyttö tällä sivulla ei merkitse Health Level Seven Internationalin, Googlen tai Epic Systemsin hyväksyntää.
Sido valikoiman ohjausobjektiin
edellisessä näytteessä tarkastelit _patientList
muuttujan arvoa ja huomasit, että se sisälsi Bundle
-objektin ja aliluettelon resurssit nimeltä entry
. Tämä nippu sisälsi seuraavan ListResources-menetelmäkutsun tulokset OnSelect-menetelmällä:
Set(_patientList, FHIRlink.ListResources("Patient", {_elements:"id,name,birthDate,telecom"}));
Yksittäisiä potilasresursseja sisältävän nippuresurssin avainelementti on merkintä-solmu. FHIRlink.ListResources-yhdistinkutsu palauttaa FHIR-nipun tyypittämättömänä objektitietotyyppinä. Voit kuitenkin käyttää tätä potilasluettelomuuttujan elementtiä lausekkeella _patientList.entry
. Tämä elementti on taulukko, joka sisältää näytettävät FHIR-resurssitietueet.
Vihje
Lisätietoja FHIR Bundle-resurssityypistä on kohdassa HL7 FHIR - Bundle.
Jokainen entry
resurssi edustaa vastaavaa tietuetta, joka palautettiin ListResources-kutsusta, joka on potilas-FHIR-resurssi. Luotu rakenne sisältää esityksen tästä potilas-FHIR-resurssista, jota voidaan käyttää valikoimaohjaimen yksityiskohtien sitomiseen. Lisätietoja valikoiman ohjausobjekteista on kohdassa Valikoiman hallinta Power Appsissa.
Ennen kuin sidot tämän taulukon pohjaan perustuvan sovelluksen ohjausobjekteihin, muunnetaan matriisi ensin taulukko-tietotyypiksi, jonka voit helposti sitoa valikoimaan. Lisää Luetteloi resurssit -painikkeen OnSelect-menetelmään seuraava koodirivi:
ClearCollect(_patientListTable, Table(_patientList.entry));
Tämä koodi muuntaa _patientList.entry
-matriisin taulukko-tietotyypiksi ja tyhjentää edellisen kokoelman. Taulukossa on luettelo yksittäisistä riveistä, joiden Value
-ominaisuus sisältää Potilas-FHIR-resurssin.
Lisätietoja Power Fx:n Taulukko- ja ClearCollect-funktioista on osoitteessa:
Vihje
Toinen vaihtoehto tulosten tallentamiseen taulukkoon on käyttää seuraavaa koodia:
ClearCollect(_patientListTable, Table(FHIRlink.ListResources("Patient", {_elements:"id,name,birthDate,telecom"}).entry));
Tämä koodi poistaa _patientList
-muuttujan tarpeen. Jatkamme kuitenkin tämän muuttujan käyttöä tässä näytteessä näyttääksemme ListResources-menetelmäkutsun täydellisen tuloksen.
Kun olet muuntanut entry
-matriisin, sido galleriakohteen mallin tiedot seuraavien vaiheiden avulla:
Lisää pystysuora valikoima FHIRlink-esimerkki-sovelluksen päänäyttöön ja merkitse sen nimeksi PatientList.
Muuta Asettelu-kohdan arvoksi Otsikko ja alaotsikko.
Muuta valikoiman Nimikkeet-arvo
_patientList
-arvostaCustomGallerySample
-arvoksi.
Valikoimanimikkeiden päivittäminen
Kun määrität Nimikkeet-ominaisuuden PatientList-valikoimalle, sinun on määritettävä tiedot myös valikoimakohteen mallissa. Oletusarvoisesti valikoima sitoutuu automaattisesti taulukon rivin ensimmäiseen käytettävissä olevaan omaisuuteen, joka on Value
.
Muistiinpano
Intellisense ei sisälly siihen Table.Value
-esine. Sinun on viitattava FHIR-spesifikaatioon Potilas-ominaisuuksille. Lisätietoja FHIR Potilas-resurssityypistä on kohdassa HL7 FHIR - Potilas.
Jokainen luettelon kohde edustaa entry
-luettelokohdetta, jossa on resource
-solmu, joka sisältää Potilas-FHIR-resurssin tiedot. Päivitä nimikemalli sitoutumaan tähän resource
-solmuun seuraavasti:
Valitse Title1-selite-ohjausobjekti PatientList-valikoiman alla.
Tarkastele Teksti-ominaisuutta Title1 -otsikko-ohjausobjektissa. Näet, että ominaisuus asetetaan automaattisesti arvoon
ThisItem.fullUrl
Vaihda Teksti-ominaisuudeksi
ThisItem.Value.resource
resource
-ominaisuus sisältää FHIR-resurssille ominaisia tietoja, joissa ListResources-menetelmän ensimmäinen parametri määrittää FHIR-resurssityypin. Tässä näytteessä tarkastelemme potilas-resursseja ja pyydettyjä id
-, name
-, birthDate
- ja telecom
-arvot _elements
-parametrin kautta.
Vihje
Palautettu FHIR-paketti perustuu _elements
-parametrissa pyydettyihin kenttiin. Jos et määritä kenttiä _elements
-parametrissa, kaikki arvot palautetaan ja skeema edustaa kaikkia palautetun FHIR-resurssin käytettävissä olevia kenttiä. Mutta jos kentän arvot eivät ole tuloksen yksittäisissä tietueissa, tulos ei sisällä näitä solmuja.
Esimerkiksi ListResources_elements
-parametri sisältää birthDate
. Mutta jos potilas-tietueella ei ole arvoa birthDate
:lle, FHIR-palvelut eivät palauta tätä määritettä.
Kun kehität sovelluksiasi, suosittelemme luomaan tietueita, jotka luovat mallitietoja, jotka edustavat sovelluksesi tarvitsemia tietoja. Tämä vaihe auttaa varmistamaan, että testaus kattaa tuotannon odotettavissa olevat skenaariot.
Jokainen resource
-tulos vaihtelee pyydetyn resurssityypin mukaan ListResources-menetelmäkutsun mukaan. Päivitetty ThisItem.Value.resource
on edelleen objekti, ja tarvitset sen sitoutuaksesi kenttäarvoihin. Voit sitoa tunnisteet yksinkertaisiin tietotyyppeihin, jotka ovat saatavilla kohdassa resource
ja nähdä arvot valikoimassa.
Valitse Title1-selite-ohjausobjekti PatientList-valikoiman alla.
Vaihda Teksti-ominaisuudeksi
ThisItem.Value.resource.resourceType
Valitse Subtitle1-selite-ohjausobjekti PatientList-valikoiman alla.
Vaihda Teksti-ominaisuudeksi
ThisItem.Value.resource.birthDate
Suorita sovellus esiversiotilassa ja valitse Luetteloi resurssit -painike.
Voit nyt tarkastella entry
-luettelon sisältöä nipun juuriobjektissa ja näyttää resource
-ominaisuuden ominaisuudet jokaiselle ListResources-pyynnön palauttamalle merkinnälle.
Näytä monimutkaiset ominaisuudet
FHIR-resurssit koostuvat tyypillisesti useista ominaisuustasoista eivätkä rajoitu yksinkertaisiin tietotyyppeihin. Kuten Potilas-FHIR-resurssi, elementit voivat olla monimutkaisia objekteja tai objektien ryhmiä.
Tässä esimerkissä name
- ja telecom
-ominaisuudet ovat molemmat monitasoisia taulukoita. Jokainen telecom
-nimike on monimutkainen ContactPoint-tietotyyppi. Voit yhdistää seuraavat esimerkit valikoimaan:
Esimerkki 1: Valitse sijainnin mukaan
Voit valita alatason matriisiluettelon ensimmäisen kohteen. Tätä lähestymistapaa voidaan käyttää ominaisuuksissa, jotka sisältävät usein vain yhden kohteen. Havainnollistetaan esimerkkiä, jossa on name
-ominaisuus.
Käytä First-funktiota valitaksesi ensimmäisen
name
-arvon luettelosta. Tämä funktio palauttaa matriisiluettelon tai taulukon ensimmäisen kohteen. Kun ensimmäinenname
-arvo on palautettu, voit yhdistääfamily
- jause
-ominaisuudet näyttöä varten.Valitse Title1-selite-ohjausobjekti PatientList-valikoiman alla.
Vaihda Teksti-ominaisuudeksi
First(ThisItem.Value.resource.name).family & ", (" & First(ThisItem.Value.resource.name).use & ")"
Muistiinpano
Lue lisätietoja tässä esimerkissä käytetystä funktiosta kohdasta First-, FirstN-, Last- ja LastN-funktiot Power Appsissa.
Esimerkki 2: Valitse ehdon mukaan
Voit käyttää tätä vaihtoehtoa näyttääksesi yksittäisen matriisitaulukon haun luettelon kohteen ominaisuuksien perusteella.
Jos haluat näyttää kotipuhelinnumeron, käytä Suodatin-funktiota suodattamaan
telecom
-kentän arvotsystem
- jause
-arvoissa.telecom
-ominaisuus on matriisi, kuten nipunentry
-solmu. Voit käsitellä sitä samalla tavalla muuntamalla sen taulukko-inline-muotoon. Muuntamisen jälkeen sinun on käytettävä arvoa myös suodatinehtoihin.Valitse Subtitle1-selite-ohjausobjekti PatientList-valikoiman alla.
Vaihda Teksti-ominaisuudeksi
First(Filter(Table(ThisItem.Value.resource.telecom), Value.use="home", Value.system="phone")).Value.value
Muistiinpano
Lue lisätietoja tässä esimerkissä käytetystä funktiosta kohdasta Filter-, Search- ja LookUp-funktiot Power Appsissa.
Esimerkki 3: Arvojen ketjuttaminen
Toinen vaihtoehto alielementtimatriisille on ketjuttaa luettelon kohteet rajatuksi merkkijonoksi. Voit tiivistää kaikki family
-ominaisuusarvot yhdeksi merkkijonoksi Concat-funktiolla. Kun lisäät rivinvaihtomerkin, jokainen nimi näkyy uudella rivillä. Tämä uusi kaava sisältää myös joitain nollatarkistuksia täydellisyyden varalta.
Samoin kuin telecom
-ominaisuus, name
-ominaisuus on myös taulukko, joka meidän on muutettava taulukko-inlineksi.
Lisää uusi seliteohjausobjekti PatientList-valikoiman nimikemalliin. Merkitse sen nimeksi FamilyNames.
Laajenna kokoa, jotta voit nähdä kaksi tai kolme riviä.
Valitse uusi FamilyNames-seliteohjausobjekti PatientList-valikoiman alla.
Vaihda Teksti-ominaisuudeksi
Concat(Filter(Table(ThisItem.Value.resource.name), !IsBlank(Value.family)), Value.family & " (" & Value.use & ")", Char(13))
Suorita sovellus esiversiotilassa ja valitse Luetteloi resurssit -painike.
Jokainen potilaan FHIR-resurssi sisältää name-kentän, joka on joukko arvoja. Tämä kenttä sallii potilastietueen tallentaa useita nimiä, kuten heidän nykyisen nimensä ja tyttönimensä.
Seuraavassa on esimerkki potilaan nimikentästä:
"name": [{
"use": "official",
"family": "Grimes165",
"given": [
"Alysia661"
],
"prefix": [
"Mrs."
]
},
{
"use": "maiden",
"family": "Bins636",
"given": [
"Alysia661"
],
"prefix": [
"Mrs."
]
}]
Kaava käyttää Suodatus-funktiota sulkeakseen pois name
-arvot ilman family
-ominaisuutta. Jokaisen kohteen kohdalla family
- ja use
-ominaisuudet yhdistetään ja Concat-funktio lisää uuden rivin erottimen.
Muistiinpano
Lue lisätietoja Concat-aiheesta ja niihin liittyvistä toiminnoista kohdasta Concat- ja Concatenate-funktiot Power Appsissa.
Lataa malli-
Voit ladata ja tuoda valmiin pohjaan perustuvan sovellusratkaisun tästä esimerkistä toteutusesimerkiksi. Näyte on ladattavissa seuraavissa kolmessa muodossa:
- Zip-paketti: FHIRlink Sample2.zip
- MSAPP-arkisto: FHIRlink Sample2.msapp
- Power Platform -ratkaisu (sisältää kaikki näytteet): FHIRlinkSamples.zip
Ohjeet pohjaan perustuvien sovellusten tuontiin ja vientiin on kohdassa Pohjaan perustuvien sovelluspakettien vienti ja tuonti.
Seuraavat vaiheet
Lue Esimerkki 3: Yhdistä menetelmät FHIR-tietojen näyttämiseksi -kohdasta miten voit käyttää muita FHIRlink-menetelmiä ja yhdistää niitä sovelluksessa.
Lue lisätietoja malliin perustuvien sovellusten rakentamisesta
Katso lisätietoja tähän näytteeseen liittyvistä pohjaan perustuvien sovelluksen yksityiskohdista: