opomba,
Dostop do te strani zahteva pooblastilo. Poskusite se vpisati alispremeniti imenike.
Dostop do te strani zahteva pooblastilo. Poskusite lahko spremeniti imenike.
Velja za: Canvas apps
Copilot Studio
Model-driven apps
Power Platform CLI
Dataverse funkcije
Power Pages
Ustvari besedilni JSON niz za tabelo, zapis ali vrednost.
Opis
Funkcija JSON vrne predstavitev podatkovne strukture v obliki zapisa predmeta JavaScript (JSON) kot besedilo, tako da je primerna za shranjevanje ali prenos v omrežju. [ECMA-404](https://www.ecma-international.org/publications/files/ECMA-ST/ECMA-404.pdf in IETF RFC 8259 opisujeta obliko, ki jo pogosto uporabljajo JavaScript in drugi programski jeziki.
Aplikacije delovnega območja podpirajo vrste podatkov, ki so navedene v tej tabeli skupaj s podrobnosti o njihovi ponazoritvi besedila:
| Vrsta podatkov | Opis | Primer rezultata |
|---|---|---|
| Boolean | true ali false. | true |
| barva | Niz, ki vsebuje osemmestno šestnajstiško ponazoritev barve. Ta ponazoritev ima obliko zapisa #rrggbbaa, kjer je rr rdeča komponenta, gg zelena komponenta, bb modra komponenta, aa pa je kanal alfa. Pri kanalu alfa 00 pomeni popolno prosojnost, ff pa popolno neprosojnost. Niz lahko prenesete v funkcijo ColorValue. | "#102030ff" |
| Valuta | Številka, ki za jezik uporabnika uporablja ustrezno decimalno ločilo. Po potrebi se uporabi znanstveni zapis. | 1.345 |
| Datum | Niz, ki vsebuje datum v obliki zapisa ISO 8601 llll-mm-dd. | "2019-03-31" |
| Datum in čas | Niz, ki vsebuje datum/čas ISO 8601. Vrednosti datum/čas sta v UTC, kar označuje končnica »Z«. | "2019-03-31T22:32:06.822Z" |
| GUID | Niz, ki vsebuje vrednost GUID. Črke so male. | "751b58ac-380e-4a04-a925-9f375995cc40" |
| Slika, mediji | Če je podan JSONFormat.IncludeBinaryData , so predstavnostne datoteke kodirane v nizu. Spletne reference, ki uporabljajo shemo URL http: ali https:, se ne spremenijo. Sklici na dvojiške podatke v pomnilniku so kodirani z obliko zapisa "data:mimetype;base64,...". Podatki v pomnilniku vključujejo slike, ki jih uporabniki zajamejo s kontrolnikom Camera, in vse druge sklice s shemami URL appres: in blob:. | "data:image/jpeg;base64,/9j/4AA..." |
| številka | Številka, ki za jezik uporabnika uporablja ustrezno decimalno ločilo. Po potrebi se uporabi znanstveni zapis. | 1.345 |
| nabor možnosti | Številska vrednost izbire, ne oznaka, ki se uporablja za prikaz. Številska vrednost se uporablja zato, ker ni odvisna od jezika. | 1001 |
| Čas | Niz, ki vsebuje obliko zapisa ISO 8601 hh:mm:ss.fff. | "23:12:49.000" |
| Zapis | Seznam, ločen z vejico, med { in } ali polji in njihovimi vrednostmi. Ta zapis spominja na zapise v aplikacijah delovnega območja, vendar je ime vedno med dvojnimi narekovaji. Ta oblika zapisa ne podpira zapisov, ki temeljijo na odnosih »mnogo proti ena«. | { "First Name": "Fred", "Age": 21 } |
| Tabela | Seznam, ločen z vejico, med [ in ] v zapisih. Ta oblika zapisa ne podpira tabel, ki temeljijo na odnosih »ena proti mnogo«. Uporabite možnost JSONFormat.FlattenValueTables , da odstranite zapis za tabele z enim stolpcem s stolpcem z imenom Vrednost. | [ { "First Name": "Fred", "Age": 21 }, { "First Name": "Jean", "Age": 20 } ] |
| Dve možnosti | Logična vrednost za dve možnosti, true ali fals, in ne oznaka, ki se uporablja za prikaz. Logična vrednost se uporablja zato, ker ni odvisna od jezika. | false |
| Hiperpovezava, besedilo | Niz med dvojnimi narekovaji. Funkcija se izogne vdelanim dvojnim narekovajem s poševnico nazaj, nove vrstice nadomesti z »\n« in naredi druge standardne zamenjave za JavaScript. | "This is a string." |
Določite neobvezni argument Oblika zapisa in upravljajte, kako berljiv je rezultat in kako se obravnavajo nepodprte vrste in vrste dvojiških podatkov. Privzeto je rezultat čim bolj strnjen, brez nepotrebnih presledkov ali novih vrstic, nepodprte vrste podatkov in dvojiški podatki pa niso dovoljeni. Kombinirate lahko več formatov, če podate operator & .
| Enumerator JSONFormat | Opis |
|---|---|
| JSONFormat.Compact | Privzeto. Rezultat je karseda strnjen, brez dodanih presledkov ali novih vrstic. |
| JSONFormat.FlattenValueTables | Kot Tabela vrednosti, [1,2,3] zapis povzroči tabelo, ki vsebuje zapise, kjer ima vsak zapis eno samo Vrednost stolpec. V JSONisti obliki zapisa predstavlja matriko treh števil. Ta možnost za lažjo interoperabilnost med njima izravna tabelo vrednosti Power Fx JSON v prijazno matriko namesto polja zapisov. |
| JSONFormat.IndentFour | Za izboljšanje berljivosti rezultat vsebuje novo vrstico za vsak stolpec in raven gnezdenja ter uporabi štiri presledke za vsako raven zamika. |
| JSONFormat.IncludeBinaryData | Rezultat vključuje stolpce za slike, videoposnetke in zvočne posnetke. Ta oblika zapisa lahko znatno poveča velikost rezultata in zmanjša učinkovitost delovanja vaše aplikacije. |
| JSONFormat.IgnoreBinaryData | Rezultat ne vključuje stolpcev za slike, videoposnetke ali zvočne posnetke. Če ne podate niti JSONFormat.IncludeBinaryData niti JSONFormat.IgnoreBinaryData, funkcija ustvari napako, če naleti na binarne podatke. |
| JSONFormat.IgnoreUnsupportedTypes | Nepodprte vrste podatkov so dovoljene, vendar jih rezultat ne vključi. Nepodprte vrste podatkov privzeto ustvarijo napako. |
Uporabite funkciji ShowColumns in DropColumns ter upravljajte, katere podatke vključuje rezultat, in odstranite nepodprte vrste podatkov.
Ker JSON sta lahko tako pomnilnik kot tudi zahtevna računanje, lahko to funkcijo uporabljate le v funkcijah vedenja. Rezultat lahko zajamete v spremenljivkoJSON, ki jo lahko nato uporabite v podatkovnem toku.
Če ima stolpec prikazno ime in logično ime, rezultat vsebuje logično ime. Prikazna imena odražajo jezik uporabnika aplikacije in so zato neprimerna za prenos podatkov v skupno storitev.
Sintaksa
JSON( DataStructure [, Format ] )
- DataStructure – Zahtevano. Struktura podatkov, ki jo želite pretvoriti v JSON. Tabele, zapisi in osnovne vrednosti so podprte in poljubno ugnezdene.
- Oblika - neobvezno. Vrednost JSONFormat oštevilčenje. Privzeta vrednost je JSONFormat.Compact, ki ne dodaja novih vrstic ali presledkov ter blokira binarne podatke in nepodprte stolpce.
Primeri
Hierarhični podatki
Vstavite kontrolnik Button in nastavite njegovo lastnost OnSelect na to formulo.
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" ) )Izberite gumb, medtem ko držite tipko Alt.
Zbirka CitiesByCountry je ustvarjena s to strukturo podatkov, ki jo lahko pokažete tako, da izberete Zbirke v meniju Mapa in nato izberete ime zbirke.
To zbirko lahko prikažete tudi tako, da izberete Nastavitve>Prihajajoče funkcije>Omogoči ogled rezultatov vnosne vrstice in izberite ime zbirke v vnosni vrstici ter puščico navzdol ob imenu zbirke pod vnosno vrstico.
Vstavite še en gumb in nastavite njegovo lastnost OnSelect na to formulo:
Set( CitiesByCountryJSON, JSON( CitiesByCountry ) )Ta formula nastavi globalno spremenljivko CitiesByCountryJSON na predstavitev JSON mest po državah.
Izberite gumb, medtem ko držite tipko Alt.
Vstavite kontrolnik Label in nastavite njegovo lastnost Besedilo na to spremenljivko:
CitiesByCountryJSONOznaka prikaže ta rezultat, in sicer v celoti v eni vrstici brez presledkov, tako da je primeren za prenos prek omrežja:
[ { "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" } ]Spremenite formulo drugega gumba, da bo rezultat bolj berljiv.
Set( CitiesByCountryJSON, JSON(CitiesByCountry, JSONFormat.IndentFour ))Medtem ko držite tipko Alt, izberite drugi gumb.
Oznaka prikazuje bolj berljiv 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 in predstavnost v obliki zapisa Base64
Dodajte kontrolnik Slika.
Ta kontrolnik doda SampleImage.
Dodajte kontrolnik Button in nastavite njegovo lastnost OnSelect na to formulo.
Set( ImageJSON, JSON( SampleImage, JSONFormat.IncludeBinaryData ) )Izberite gumb, medtem ko držite tipko Alt.
Dodajte oznako in nastavite njeno lastnost Besedilo na to spremenljivko.
ImageJSONČe želite prikazati večino rezultata, spremenite velikost kontrolnika in zmanjšajte velikost pisave.
Oznaka prikazuje besedilni niz, ki ga je zajela JSON funkcija.
"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjxzdmcgdmVyc2lvbj0iMS4xIg0KCSB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWxuczphPSJodHRwOi8vbnMuYWRvYmUuY29tL0Fkb2JlU1ZHVmlld2VyRXh0ZW5zaW9ucy8zLjAvIg0KCSB4PSIwcHgiIHk9IjBweCIgd2lkdGg9IjI3MHB4IiBoZWlnaHQ9IjI3MHB4IiBlbmFibGUtYmFja2dyb3VuZD0ibmV3IDAgMCAyNzAgMjcwIiB4bWw6c3BhY2U9InByZXNlcnZlIj4NCgk8ZyBjbGFzcz0ic3QwIj4NCgkJPHJlY3QgeT0iMC43IiBmaWxsPSIjRTlFOUU5IiB3aWR0aD0iMjY5IiBoZWlnaHQ9IjI2OS4zIi8+DQoJCTxwb2x5Z29uIGZpbGw9IiNDQkNCQ0EiIHBvaW50cz0iMjc3LjksMTg3LjEgMjQ1LDE0My40IDE4OC42LDIwMi44IDc1LDgwLjUgLTQuMSwxNjUuMyAtNC4xLDI3MiAyNzcuOSwyNzIiLz4NCgkJPGVsbGlwc2UgZmlsbD0iI0NCQ0JDQSIgY3g9IjIwMi40IiBjeT0iODQuMSIgcng9IjI0LjQiIHJ5PSIyNC4zIi8+DQoJPC9nPg0KPC9zdmc+"
Tabele vrednosti
Ta formula:
JSON( [1,2,3] )
Ustvari besedilni niz [{"Vrednost":1},{"Vrednost":2},{"Vrednost":3}].
Ista formula z možnostjo JSONFormat.FlattenValueTables:
JSON( [1,2,3], JSONFormat.FlattenValueTables )
Ustvari besedilni niz [1,2,3].
Možnost »FlattenValueTables« JSON nima nobenega vpliva pri uporabi z zbirkami »MestoPoselji « ali » MestaPoDržavi «, saj te tabele niso tabele z vrednostmi. Tabela z vrednostmi ima en sam stolpec in mora biti imenovan "Vrednost".