Nata
Norint pasiekti šį puslapį, reikalingas leidimas. Galite pabandyti prisijungti arba pakeisti katalogus.
Norint pasiekti šį puslapį, reikalingas leidimas. Galite pabandyti pakeisti katalogus.
Taikoma: "Canvas apps
Copilot Studio
Model", pagrįstos "
Power Platform CLI
Dataverse" funkcijomis
"Power Pages"
JSON Generuoja lentelės, įrašo arba reikšmės teksto eilutę.
Aprašas
Funkcija JSON pateikia Duomenų struktūros JavaScript objekto notacijos (JSON) išraišką kaip tekstą, kad ji būtų tinkama saugoti arba perduoti tinkle. [ECMA-404](https://www.ecma-international.org/publications/files/ECMA-ST/ECMA-404.pdf ir IETF RFC 8259 apibūdina formatą, kurį plačiai naudoja JavaScript ir kitos programavimo kalbos.
Drobės programos palaiko duomenų tipus, išvardytus šioje lentelėje, kurioje taip pat nurodoma informacija apie jų tekstinį vaizdavimą:
| Duomenų tipas | Aprašas | Rezultato pavyzdys |
|---|---|---|
| Bulio logikos | teisinga arba klaidinga. | true |
| Spalva | Eilutė, kurioje yra 8 skaitmenų šešioliktainė spalvos reikšmė. Šio pavidalo formatas yra #rrggbbaa, kur rr yra raudonas komponentas, gg – žalias, bb – mėlynas, o aa yra alfa kanalas. Naudojant alfa kanalą, 00 yra visiškai permatoma, o ff – visiškai nepermatoma. Eilutę galite perduoti funkcijai ColorValue. | "#102030ff" |
| Valiuta | Skaičius, kuriame naudojamas tinkamas dešimtainis skyriklis pagal vartotojo kalbą. Jei reikia, naudojamas mokslinis žymėjimas. | 1.345 |
| Data | Eilutė su data, nurodyta ISO 8601 mmmm-mm-dd formatu. | "2019-03-31" |
| DateTime | Eilutė, kurioje yra ISO 8601 data / laikas. Datos / laiko reikšmės yra UTC, kaip nurodo pabaiga „Z“. | "2019-03-31T22:32:06.822Z" |
| GUID | Eilutė, kurioje yra GUID reikšmė. Raidės yra mažosios. | "751b58ac-380e-4a04-a925-9f375995cc40" |
| Vaizdas, žiniasklaida | Jei JSONFormat.IncludeBinaryData nurodytas, medijos failai užkoduojami eilutėje. Žiniatinklio nuorodos, kuriose naudojama http: arba https: URL schema, nėra modifikuojamos. Nuorodos į atmintyje esančius dvejetainius duomenis užkoduojamos naudojant formatą "data:mimetype;base64,...". Atmintyje esantys duomenys apima vaizdus, kuriuos vartotojai fiksuoja naudodami fotoaparato valdiklį, ir kitos nuorodos su appres: bei blob: URL schemomis. | "data:image/jpeg;base64,/9j/4AA..." |
| Numeris | Skaičius, kuriame naudojamas tinkamas dešimtainis skyriklis pagal vartotojo kalbą. Jei reikia, naudojamas mokslinis žymėjimas. | 1.345 |
| parinkčių rinkinys | Skaitinė pažymėtų reikšmių, o ne žymą, naudojamą rodant. Skaitinė reikšmė naudojama, nes ji nepriklauso nuo kalbos. | 1001 |
| Laikas | Eilutė, kurioje naudojamas ISO 8601 formatas hh:mm:ss.fff. | "23:12:49.000" |
| Įrašas | Kableliais atskirtas laukų ir jų reikšmių sąrašas tarp { ir }. Šis žymėjimas panašus į drobės programų įrašų žymėjimą, tačiau pavadinimas visada yra tarp dvigubųjų kabučių. Šis formatas nepalaiko įrašų, pagrįstų ryšiais „daugelis su vienu“. | { "First Name": "Fred", "Age": 21 } |
| Stalas | Kableliais atskirtas įrašų sąrašas tarp [ ir ]. Šis formatas nepalaiko lentelių, pagrįstų ryšiais „vienas su daugeliu“. Naudokite parinktį JSONFormat.FlattenValueTables , kad pašalintumėte vieno stulpelio lentelių, kurių stulpelis pavadintas Reikšmė, įrašą. | [ { "First Name": "Fred", "Age": 21 }, { "First Name": "Jean", "Age": 20 } ] |
| Du variantai | Dviejų parinkčių rinkinio Bulio logikos reikšmė true arba false, ne žyma, naudojama kažkam rodyti. Bulio logikos reikšmė naudojama, nes ji nepriklauso nuo kalbos. | false |
| Hipersaitas, tekstas | Eilutė tarp dvigubųjų kabučių. Funkcija kairiniu brūkšniu išjungia įdėtąsias dvigubąsias kabutes, naujas eilutes pakeičia elementu „\n“ ir atlieka kitus standartinius „JavaScript“ pakeitimus. | "This is a string." |
Nurodykite pasirenkamąjį argumentą Format, kad galėtumėte kontroliuoti, kiek rezultatas yra skaitomas ir kaip tvarkomi nepalaikomi bei dvejetainiai duomenų tipai. Numatyta, kad išvestis yra kiek įmanoma kompaktiškesnė be nereikalingų tarpų ar naujų eilučių, o nepalaikomi duomenų tipai ir dvejetainiai duomenys neleidžiami. Galite derinti kelis formatus, jei nurodote operatorių .
| JSONFormat išvardijimas | Aprašas |
|---|---|
| JSONFormat.Compact | Numatytoji reikšmė. Išvestis yra kiek įmanoma kompaktiškesnė be papildomų tarpų ar naujų eilučių. |
| JSONFormat.FlattenValueTables | Kaip reikšmių lentelės žymėjimo rezultatas yra lentelė, kurioje yra įrašų, [1,2,3] kuriuose kiekvienas įrašas turi vieną stulpelį Reikšmė . Toje JSONpačioje žymėjimas reiškia trijų skaičių masyvą. Kad būtų lengviau sąveikauti tarp dviejų, ši parinktis sulygina "Power Fx Value" lentelę su draugišku JSON masyvu, o ne įrašų masyvu. |
| JSONFormat.IndentFour | Siekiant pagerinti skaitomumą, išvestyje kiekvienas stulpelis ir įdėjimo lygis yra naujoje eilutėje, o kiekvienam įtraukos lygio naudojami keturi tarpai. |
| JSONFormat.IncludeBinaryData | Rezultatai apima vaizdų, vaizdo įrašų ir garso įrašų stulpelius. Šis formatas gali labai padidinti rezultato dydį ir pabloginti programos našumą. |
| JSONFormat.IgnoreBinaryData | Rezultatai neapima vaizdų, vaizdo įrašų ar garso įrašų stulpelių. Jei nenurodysite nei JSONFormat.IncludeBinaryData, nei JSONFormat.IgnoreBinaryData, funkcija sukuria klaidą, jei susiduria su dvejetainiais duomenimis. |
| JSONFormat.IgnoreUnsupportedTypes | Nepalaikomi duomenų tipai yra leidžiami, tačiau į rezultatus jie nebus įtraukti. Numatyta, kad, esant nepalaikomiems duomenų tipams, generuojama klaida. |
Naudokite funkcijas ShowColumns ir DropColumns, kad galėtumėte valdyti, kurie duomenys įtraukiami į rezultatus, ir pašalinti nepalaikomus duomenų tipus.
Kadangi JSON gali būti daug atminties ir skaičiuoti, šią funkciją galite naudoti tik veikimo funkcijose. Galite užfiksuoti rezultatą į JSONkintamąjį, kurį tada galite naudoti duomenų sraute.
Jei stulpelyje yra ir rodomas pavadinimas, ir loginis pavadinimas, rezultatuose pateikiamas loginis pavadinimas. Rodomi pavadinimai atspindi programos vartotojo kalbą ir todėl jie netinka duomenims į bendrą tarnybą perduoti.
Sintaksė
JSON( DataStructure [, Format ] )
- Duomenų struktūra - būtina. Duomenų struktūra, kurią reikia konvertuoti į JSON. Palaikomos savo nuožiūra įdėtos lentelės, įrašai ir primityvios reikšmės.
- Formatas - neprivalomas. JSONFormat išvardijimas vertė. Numatytoji reikšmė yra JSONFormat.Compact, kuri neprideda naujų eilučių ar tarpų ir blokuoja dvejetainius duomenis bei nepalaikomus stulpelius.
Pavyzdžiai
Hierarchiniai duomenys
Įterpkite mygtuko valdiklį ir jo ypatybę OnSelect nustatykite kaip šią formulę.
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" ) )Mygtuką pasirinkite laikydami nuspaudę klavišą „Alt”.
Naudojant šią duomenų struktūrą, sukuriamas rinkinys MiestaiPagalŠalį, kurį galite rodyti meniu Failas pasirinkdami Rinkiniai, tada – rinkinio pavadinimą.
Be to, šį rinkinį galite matyti pasirinkę Parametrai>Būsimos funkcijos>Įjungti formulės juostos rezultato rodinį, pasirinkę rinkinio pavadinimą formulės juostoje ir rodyklę žemyn prie rinkinio pavadinimo po formulės juosta.
Įterpkite kitą mygtuką ir jo ypatybę OnSelect nustatykite kaip šią formulę:
Set( CitiesByCountryJSON, JSON( CitiesByCountry ) )Ši formulė nustato visuotinį kintamąjį CitiesByCountryJSON kaip JSON"CitiesByCountry" atvaizdą.
Mygtuką pasirinkite laikydami nuspaudę klavišą „Alt”.
Įterpkite žymos valdiklį ir jo ypatybę Text nustatykite kaip šį kintamąjį.
CitiesByCountryJSONŽymoje šis rezultatas rodomas vienoje eilutėje be tarpų, kad būtų galima perduoti tinklu:
[ { "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" } ]Pakeiskite antro mygtuko formulę, kad išvestis būtų labiau skaitoma.
Set( CitiesByCountryJSON, JSON(CitiesByCountry, JSONFormat.IndentFour ))Laikydami nuspaudę klavišą „Alt”, pasirinkite antrąjį mygtuką.
Žymoje rodomas labiau skaitomas rezultatas.
[ { "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" } ]
Vaizdai ir medija naudojant „base64“
Įtraukite valdiklį Image.
Į šį valdiklį taip pat įtraukta SampleImage.
Įtraukite mygtuko valdiklį ir jo ypatybę OnSelect nustatykite kaip šią formulę.
Set( ImageJSON, JSON( SampleImage, JSONFormat.IncludeBinaryData ) )Mygtuką pasirinkite laikydami nuspaudę klavišą „Alt”.
Įtraukite žymą ir jos ypatybę Text nustatykite kaip šį kintamąjį.
ImageJSONPagal poreikį pakeiskite valdiklio dydį ir sumažinkite šrifto dydį, kad būtų galima matyti didžiąją rezultato dalį.
Etiketėje rodoma teksto eilutė, kurią JSON užfiksavo funkcija.
"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjxzdmcgdmVyc2lvbj0iMS4xIg0KCSB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWxuczphPSJodHRwOi8vbnMuYWRvYmUuY29tL0Fkb2JlU1ZHVmlld2VyRXh0ZW5zaW9ucy8zLjAvIg0KCSB4PSIwcHgiIHk9IjBweCIgd2lkdGg9IjI3MHB4IiBoZWlnaHQ9IjI3MHB4IiBlbmFibGUtYmFja2dyb3VuZD0ibmV3IDAgMCAyNzAgMjcwIiB4bWw6c3BhY2U9InByZXNlcnZlIj4NCgk8ZyBjbGFzcz0ic3QwIj4NCgkJPHJlY3QgeT0iMC43IiBmaWxsPSIjRTlFOUU5IiB3aWR0aD0iMjY5IiBoZWlnaHQ9IjI2OS4zIi8+DQoJCTxwb2x5Z29uIGZpbGw9IiNDQkNCQ0EiIHBvaW50cz0iMjc3LjksMTg3LjEgMjQ1LDE0My40IDE4OC42LDIwMi44IDc1LDgwLjUgLTQuMSwxNjUuMyAtNC4xLDI3MiAyNzcuOSwyNzIiLz4NCgkJPGVsbGlwc2UgZmlsbD0iI0NCQ0JDQSIgY3g9IjIwMi40IiBjeT0iODQuMSIgcng9IjI0LjQiIHJ5PSIyNC4zIi8+DQoJPC9nPg0KPC9zdmc+"
Reikšmių lentelės
Ši formulė:
JSON( [1,2,3] )
Sukuria teksto eilutę [{"Reikšmė":1},{"Reikšmė":2},{"Reikšmė":3}].
Ta pati formulė su parinktimi JSONFormat.FlattenValueTables:
JSON( [1,2,3], JSONFormat.FlattenValueTables )
Sukuria teksto eilutę [1,2,3].
Atkreipkite dėmesį, kad parinktis FlattenValueTables neturi įtakos naudojant JSON su "CityPopulations " arba "CitiesByCountry " rinkiniais, nes šios lentelės nėra reikšmės lentelės. Lentelėje Reikšmė yra vienas stulpelis ir ji turi būti pavadinta "Reikšmė".