Napomena
Za pristup ovoj stranici potrebna je autorizacija. Možete se pokušati prijaviti ili promijeniti direktorije.
Za pristup ovoj stranici potrebna je autorizacija. Možete pokušati promijeniti direktorije.
Odnosi se na: Canvas apps
Copilot Studio
Model-driven apps
Power Platform CLI
Dataverse functions
Power Pages
Generira tekstni JSON niz za tablicu, zapis ili vrijednost.
Opis
Funkcija JSON vraća prikaz strukture podataka u obliku teksta (JavaScript Object NotationJSON) tako da je prikladna za pohranu ili prijenos preko mreže. [ECMA-404](https://www.ecma-international.org/publications/files/ECMA-ST/ECMA-404.pdf a IETF RFC 8259 opisuje format, koji naširoko koriste JavaScript i drugi programski jezici.
Aplikacije radnog područja podržavaju vrste podataka koje ova tablica navodi zajedno s detaljima o tome kako predstavljaju tekst:
| Vrsta podataka | Opis | Primjer rezultata |
|---|---|---|
| Booleova | točno ili netočno. | true |
| Boja | Niz koji sadrži 8-znamenkastu heksadecimalnu oznaku boje. Ova oznaka ima oblik #rrggbbaa, gdje je rr crvena komponenta, gg zelena, bb plava, a aa je alfa kanal. Kod alfa kanala, 00 potpuno je transparentno, a ff potpuno neprozirno. Možete proslijediti niz funkciji ColorValue. | "#102030ff" |
| Valuta | Broj koji koristi odgovarajući decimalni razdjelnik za jezik korisnika. Po potrebi se koristi znanstvena notacija. | 1.345 |
| Datum | Niz koji sadrži datum u obliku ISO 8601 gggg-mm-dd. | "2019-03-31" |
| DatumVrijeme | Niz koji sadrži datum/vrijeme prema ISO 8601. Vrijednosti datum/vrijeme su u UTC, kao što označava završetak „Z”. | "2019-03-31T22:32:06.822Z" |
| GUID | Niz koji sadrži GUID vrijednost. Slova su mala. | "751b58ac-380e-4a04-a925-9f375995cc40" |
| Slika, Mediji | Ako je naveden JSONFormat.IncludeBinaryData , medijske datoteke kodiraju se u nizu. Web-reference koje koriste URL shemu http: ili https: se ne mijenjaju. Reference na binarne podatke u memoriji kodirane su u obliku „data:mimetype;base64,...”. Podatci u memoriji mogu biti slike koje korisnici snimaju koristeći kontrolu Camera i bilo koje druge reference s URL shemama appres: i blob:. | "data:image/jpeg;base64,/9j/4AA..." |
| Broj | Broj koji koristi odgovarajući decimalni razdjelnik za jezik korisnika. Po potrebi se koristi znanstvena notacija. | 1.345 |
| skup mogućnosti | Numerička vrijednost izbora, a ne oznaka koja se koristi za prikaz. Numerička vrijednost koristi se jer ne ovisi o jeziku. | 1001 |
| Vrijeme | Niz koji sadrži oblik hh:mm:ss.fff prema ISO 8601. | "23:12:49.000" |
| Zapis | Popis polja i njihovih vrijednosti, razgraničen zarezima, između znakova { i }. Ova notacija podsjeća na zapise u aplikacijama radnog područja, ali naziv je uvijek između dvostrukih navodnika. Ovaj oblik ne podržava zapise koji se temelje na odnosima tipa „više na jedan”. | { "First Name": "Fred", "Age": 21 } |
| Stol | Popis zapisa, razgraničen zarezima, između znakova [ i ]. Ovaj oblik ne podržava tablice koje se temelje na odnosima tipa „jedan na više”. Upotrijebite mogućnost JSONFormat.FlattenValueTables da biste uklonili zapis za tablice s jednim stupcem sa stupcem pod nazivom Vrijednost. | [ { "First Name": "Fred", "Age": 21 }, { "First Name": "Jean", "Age": 20 } ] |
| Dvije mogućnosti | Booleova vrijednost dvije opcije, true ili false, a ne oznaka koja se koristi za prikaz. Booleova vrijednost koristi se jer ne ovisi o jeziku. | false |
| Hiperveza, Tekst | Niz između dvostrukih navodnika. Ova funkcija obilježava ugrađene dvostruke navodnike obrnutim kosim crtama, znakove novog retka zamjenjuje s „\n” te provodi druge standardne JavaScript zamjene. | "This is a string." |
Navedite neobvezni argument Format kako biste kontrolirali čitljivost rezultata i način rukovanja s nepodržanim i binarnim vrstama podataka. Prema zadanim postavkama, izlaz je što kompaktniji, bez nepotrebnih razmaka ili novih redaka, a nepodržane vrste podataka i binarni podatci nisu dopušteni. Možete kombinirati više formata ako navedete &operator .
| Numerička vrijednost JSONFormat | Opis |
|---|---|
| JSONFormat.Compact | Zadano. Izlaz je što kompaktniji, bez dodanih razmaka ili novih redaka. |
| JSONFormat.FlattenValueTables | Kao tablica vrijednosti, [1,2,3] notacija rezultira tablicom koja sadrži zapise u kojima svaki zapis ima jedan stupac vrijednosti . U JSON, ta ista notacija predstavlja polje od tri broja. Da bi se olakšala interoperabilnost između njih, ovom se mogućnošću tablica dodatka Power Fx Value JSON stisne na prijateljsko polje, a ne niz zapisa. |
| JSONFormat.IndentFour | Kako bi se poboljšala čitljivost, izlaz sadrži novi redak za svaki stupac i razinu gniježđenja i koristi četiri razmaka za svaku razinu uvlake. |
| JSONFormat.IncludeBinaryData | Rezultat sadrži stupce slika, video i audioisječaka. Ovaj oblik može drastično povećati veličinu rezultata i pogoršati performanse vaše aplikacije. |
| JSONFormat.IgnoreBinaryData | Rezultat ne sadrži stupce slika, video i audioisječaka. Ako ne navedete ni JSONFormat.IncludeBinaryData ni JSONFormat.IgnoreBinaryData, funkcija će generirati pogrešku ako naiđe na binarne podatke. |
| JSONFormat.IgnoreUnsupportedTypes | Nepodržane vrste podataka su dopuštene, ali rezultat ih ne sadrži. Po zadanim postavkama, nepodržane vrste podataka vraćaju pogrešku. |
Upotrijebite funkcije ShowColumns i DropColumns kako biste kontrolirali koje podatke rezultat sadrži i uklonili nepodržane vrste podataka.
Budući JSON da može biti i memorija i računalni zahtjevni rad, tu funkciju možete koristiti samo u funkcijama ponašanja. Rezultat možete snimiti u varijablu JSONkoju zatim možete koristiti u tijeku podataka.
Ako neki stupac sadrži i zaslonsko i logičko ime, rezultat sadrži logičko ime. Zaslonska imena odražavaju jezik korisnika aplikacije i stoga nisu prikladna za prijenos podataka na zajedničku uslugu.
Sintaksa
JSON( DataStructure [, Format ] )
- DataStructure – obavezno. Struktura podataka u koju će se pretvoriti JSON. Tablice, zapisi i primitivne vrijednosti su podržane, proizvoljno ugniježđene.
- Format - Nije obavezno. JSONFormatenumeracija vrijednost. Zadana vrijednost je JSONFormat.Compact, koja ne dodaje nove retke ili razmake i blokira binarne podatke i nepodržane stupce.
Primjeri
Hijerarhijski podatci
Umetnite kontrolu Button i postavite njezino svojstvo OnSelect na ovu formulu.
ClearCollect( CityPopulations, { City: "London", Country: "United Kingdom", Population: 8615000 }, { City: "Berlin", Country: "Germany", Population: 3562000 }, { City: "Madrid", Country: "Spain", Population: 3165000 }, { City: "Hamburg", Country: "Germany", Population: 1760000 }, { City: "Barcelona", Country: "Spain", Population: 1602000 }, { City: "Munich", Country: "Germany", Population: 1494000 } ); ClearCollect( CitiesByCountry, GroupBy( CityPopulations, "Country", "Cities" ) )Odaberite gumb dok držite pritisnutu tipku Alt.
Zbirka CitiesByCountry stvara se s ovom strukturom podataka koju možete pokazati odabirom Zbirke u izborniku Datoteka, a zatim odabirom naziva te zbirke.
Ovu kolekciju možete prikazati tako da odaberete Postavke>Buduće značajke>Omogući prikaz rezultata trake s formulama, odabirom imena kolekcije na traci formula, a zatim odabirom strelice prema dolje pored naziva kolekcije u traci formule.
Umetnite neki drugi gumb i postavite njegovo svojstvo OnSelect na ovu formulu:
Set( CitiesByCountryJSON, JSON( CitiesByCountry ) )Ova formula postavlja globalnu varijablu CitiesByCountryJSON na prikaz JSON za CitiesByCountry.
Odaberite gumb dok držite pritisnutu tipku Alt.
Umetnite kontrolu Label i postavite njezino svojstvo Text na ovu varijablu.
CitiesByCountryJSONOznaka prikazuje ovaj rezultat, sve u jednom retku bez razmaka, pogodno za prijenos preko mreže:
[ { "Cities": [{ "City": "London", "Population": 8615000 }], "Country": "United Kingdom" }, { "Cities": [ { "City": "Berlin", "Population": 3562000 }, { "City": "Hamburg", "Population": 1760000 }, { "City": "Munich", "Population": 1494000 } ], "Country": "Germany" }, { "Cities": [ { "City": "Madrid", "Population": 3165000 }, { "City": "Barcelona", "Population": 1602000 } ], "Country": "Spain" } ]Promijenite formulu drugog gumba kako biste poboljšali čitljivost rezultata.
Set( CitiesByCountryJSON, JSON(CitiesByCountry, JSONFormat.IndentFour ))Odaberite drugi gumb dok držite pritisnutu tipku Alt.
Oznaka pokazuje čitljiviji rezultat.
[ { "Cities": [ { "City": "London", "Population": 8615000 } ], "Country": "United Kingdom" }, { "Cities": [ { "City": "Berlin", "Population": 3562000 }, { "City": "Hamburg", "Population": 1760000 }, { "City": "Munich", "Population": 1494000 } ], "Country": "Germany" }, { "Cities": [ { "City": "Madrid", "Population": 3165000 }, { "City": "Barcelona", "Population": 1602000 } ], "Country": "Spain" } ]
Slike i mediji u base64
Dodajte kontrolu Image.
Ova kontrola sa sobom donosi SampleImage.
Dodajte kontrolu Button i postavite njezino svojstvo OnSelect na sljedeću formulu.
Set( ImageJSON, JSON( SampleImage, JSONFormat.IncludeBinaryData ) )Odaberite gumb dok držite pritisnutu tipku Alt.
Dodajte neku oznaku i postavite njezino svojstvo Text na ovu varijablu.
ImageJSONPromijenite kontrolu i smanjite veličinu fonta prema potrebi kako biste pokazali najveći dio rezultata.
Oznaka prikazuje tekstni niz koji je JSON funkcija snimila.
"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjxzdmcgdmVyc2lvbj0iMS4xIg0KCSB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWxuczphPSJodHRwOi8vbnMuYWRvYmUuY29tL0Fkb2JlU1ZHVmlld2VyRXh0ZW5zaW9ucy8zLjAvIg0KCSB4PSIwcHgiIHk9IjBweCIgd2lkdGg9IjI3MHB4IiBoZWlnaHQ9IjI3MHB4IiBlbmFibGUtYmFja2dyb3VuZD0ibmV3IDAgMCAyNzAgMjcwIiB4bWw6c3BhY2U9InByZXNlcnZlIj4NCgk8ZyBjbGFzcz0ic3QwIj4NCgkJPHJlY3QgeT0iMC43IiBmaWxsPSIjRTlFOUU5IiB3aWR0aD0iMjY5IiBoZWlnaHQ9IjI2OS4zIi8+DQoJCTxwb2x5Z29uIGZpbGw9IiNDQkNCQ0EiIHBvaW50cz0iMjc3LjksMTg3LjEgMjQ1LDE0My40IDE4OC42LDIwMi44IDc1LDgwLjUgLTQuMSwxNjUuMyAtNC4xLDI3MiAyNzcuOSwyNzIiLz4NCgkJPGVsbGlwc2UgZmlsbD0iI0NCQ0JDQSIgY3g9IjIwMi40IiBjeT0iODQuMSIgcng9IjI0LjQiIHJ5PSIyNC4zIi8+DQoJPC9nPg0KPC9zdmc+"
Tablice vrijednosti
Ova formula:
JSON( [1,2,3] )
Stvara tekstualni niz [{"Value":1},{"Value":2},{"Value":3}].
Ista formula s mogućnošću JSONFormat.FlattenValueTables:
JSON( [1,2,3], JSONFormat.FlattenValueTables )
Stvara tekstni niz [1,2,3].
Imajte na umu da mogućnost FlattenValueTables JSON ne utječe na korištenje zbirki CityPopulations ili CitiesByCountry jer te tablice nisu tablice Vrijednosti. Tablica vrijednosti ima jedan stupac i mora se zvati "Vrijednost".