Белешка
Приступ овој страници захтева ауторизацију. Можете покушати да се пријавите или промените директоријуме.
Приступ овој страници захтева ауторизацију. Можете покушати да промените директоријуме.
Односи се на: Цанвас апликације
Цопилот Студио
Апликације
вођене моделом Повер Платформ ЦЛИ
Датаверсе функције
Повер Пагес
Генерише текстуални JSON низ за табелу, запис или вредност.
Опис
Функција JSON враћа ЈаваСцрипт Објецт Нотатион ( JSON) представљање структуре података као текста, тако да је погодна за чување или преношење преко мреже. [ЕЦМА-404]( https://www.ecma-international.org/publications/files/ECMA-ST/ECMA-404.pdf и ИЕТФ РФЦ 8259 описују формат, који се широко користи од стране #глср_цихцдгјдз и других програмских језика.
Апликације са подлогом подржавају типове података које ова табела наводи, уз детаље о њиховим репрезентацијама текста:
| Тип података | Опис | Пример резултата |
|---|---|---|
| Булову | тачно или лажно. | true |
| Боја | Ниска која садржи осмоцифрену хексадецималну репрезентацију боје. Ова репрезентација има формат #rrggbbaa, где је rr црвена компонента, gg је зелена, bb је плава, а aa је алфа канал. За алфа канал, 00 је потпуно транспарентан, а ff је у потпуности непрозиран. Можете пренети ниску у функцију ColorValue. | "#102030ff" |
| Валута | Број који користи одговарајући знак за раздвајање децимала за језик корисника. Научни запис се користи ако је потребно. | 1.345 |
| Датум | Низ који садржи датум у ISO 8601 гггг-мм-дд формату. | "2019-03-31" |
| Датум и време | Ниска која садржи ISO 8601 датум/време. Вредности датум/време су у UTC, као што означава завршетак „Z“. | "2019-03-31T22:32:06.822Z" |
| ГУИД | Ниска која садржи GUID вредност. Слова су мала. | "751b58ac-380e-4a04-a925-9f375995cc40" |
| Слика, Медији | Ако је специфициран ЈСОНФормат.ИнцлудеБинарyДата , медијске датотеке су кодиране у низу. Веб референце које користе http: или https: шему URL адресе се не мењају. Референце на бинарне податке у меморији су кодиране помоћу формата „data:mimetype;base64,...“. Подаци у меморији укључују слике које корисници снимају користећи контролу Камера и било које друге референце са appres: и blob: шемама URL адресе. | "data:image/jpeg;base64,/9j/4AA..." |
| Број | Број који користи одговарајући знак за раздвајање децимала за језик корисника. Научни запис се користи ако је потребно. | 1.345 |
| < ДИЦТ__скуп опција >Оптион сет | Нумеричка вредност избора, а не ознака која се користи за приказ. Нумеричка вредност се користи јер је њен језик независан. | 1001 |
| Време | Ниска која садржи ISO 8601 у формату сс:мм:сс.ссс. | "23:12:49.000" |
| Запис | Листа поља и њихових вредности, раздвојена зарезима између { и }. Овај облик подсећа на облик записа у апликацијама подлоге, али име је увек између двоструких наводника. Овај формат не подржава записе који се заснивају на више-према-један односима. | { "First Name": "Fred", "Age": 21 } |
| Стол | Списак записа, раздвојених зарезом између [ и ]. Овај формат не подржава табеле који се заснивају на један-према-више односима. Користите ЈСОНФормат .ФлаттенВалуеТаблес опцију да уклоните запис за табеле са једном колоном под називом Вредност. | [ { "First Name": "Fred", "Age": 21 }, { "First Name": "Jean", "Age": 20 } ] |
| Две опције | Логичка вредност од две опције, тачно или нетачно, а не ознака која се користи за приказ. Логичка вредност се користи јер је њен језик независан. | false |
| Хипервеза, Текст | Ниска између двоструких наводника. Функција избегава уграђене двоструке наводнике помоћу косе црте уназад, а нове црте замењује са „\n“, и врши друге стандардне замене JavaScript-а. | "This is a string." |
Наведите опционални аргумент Формат да бисте контролисали колико је резултат читљив и како се рукује неподржаним и бинарним врстама података. Подразумевано, излаз је што компактнији, без непотребних размака или нових линија, а неподржани типови података и бинарни подаци нису дозвољени. Можете комбиновати више формата ако наведете & оператор.
| Нумеричка вредност JSONFormat | Опис |
|---|---|
| ЈСОНФормат.Цомпацт | Подразумевано. Излаз је што компактнији без доданих размака или нових линија. |
| ЈСОНФормат.ФлаттенВалуеТаблес | Као табела вредности, [1,2,3] нотација резултира у табели која садржи записе где сваки запис има једну колону вредности . У JSON, та иста нотација представља низ од три броја. Да би интероперабилност између њих била лакша, ова опција изравнава табелу Повер Фк вредности у пријатељски JSON низ уместо низа записа. |
| ЈСОНФормат.ИндентФоур | Да би се побољшала читљивост, излазна вредност садржи нову линију за сваку колону и ниво гнежђења, а и користи четири размака за сваки ниво увлачењa. |
| ЈСОНФормат.ИнцлудеБинарyДата | Резултат укључује колоне за слике, видео и аудио снимке. Овај формат може драматично повећати величину резултата и деградирати перформансе апликације. |
| ЈСОНФормат.ИгнореБинарyДата | Резултат не укључује колоне за слике, видео нити аудио снимке. Ако не наведете ни ЈСОНФормат.ИнцлудеБинарyДата ни ЈСОНФормат.ИгнореБинарyДата , функција производи грешку ако наиђе на бинарне податке. |
| ЈСОНФормат.ИгнореУнсуппортедТyпес | Неподржани типови података су дозвољени, али резултат их неће укључивати. Подразумевано, неподржани типови података производе грешку. |
Користите функције ShowColumns и DropColumns да бисте контролисали које податке резултат укључује и уклањали неподржане типове података.
Зато што JSON може бити и меморија и рачунање интензивно, можете користити ову функцију само у функцијама понашања . Резултат можете снимити у JSON променљиву , коју затим можете користити у протоку података.
Ако колона садржи и име за приказ и логичко име, резултат садржи логичко име. Имена за приказ одражавају језик корисника апликације и због тога су неприкладна за пренос података на заједничку услугу.
Синтакса
JSON( ДатаСтруцтуре [, Формат ] )
- ДатаСтруцтуре – Обавезно. Структура података за претварање у JSON. Табеле, записи и примитивне вредности су подржане, а и произвољно угнежђене.
- Формат - Опционо. ЈСОНФормат енум вредност. Подразумевана вредност је ЈСОНФормат.Цомпацт , која не додаје нове линије или размаке и блокира бинарне податке и неподржане колоне.
Примери
Хијерархијски подаци
Уметните контролу Дугме и подесите њено својство OnSelect према овој формули.
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" ) )Док држите тастер Alt притиснут, изаберите дугме.
Колекција CitiesByCountry се креира са овом структуром података коју можете приказати избором Колекције у менију Датотека, а затим изаберите назив колекције.
Ову колекцију такође можете приказати ако изаберете мени Поставке>Предстојеће функције>Омогући приказ резултата на траци са формулама, ако изаберете назив колекције на траци са формулама, а затим одаберете стрелицу надоле поред назива колекције испод траке са формулама.
Уметните друго дугме и подесите његово својство OnSelect према овој формули:
Set( CitiesByCountryJSON, JSON( CitiesByCountry ) )Ова формула поставља глобалну променљиву ЦитиесБyЦоунтрyЈСОН на JSON представљање за ЦитиесБyЦоунтрy .
Док држите тастер Alt притиснут, изаберите дугме.
Уметните контролу Ознака, а затим подесите њено својство Текст на ову променљиву.
CitiesByCountryJSONОзнака приказује овај резултат, све на једној линији без размака, погодну за пренос путем мреже:
[ { "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" } ]Промените формулу другог дугмета да би резултат био читљивији.
Set( CitiesByCountryJSON, JSON(CitiesByCountry, JSONFormat.IndentFour ))Док држите тастер Alt притиснут, изаберите друго дугме.
Ознака приказује читљивији резултат.
[ { "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" } ]
Слике и медији у base64
Додајте контролу Image.
Ова контрола доноси SampleImage са њим.
Додајте контролу Дугме и подесите њено својство OnSelect према овој формули.
Set( ImageJSON, JSON( SampleImage, JSONFormat.IncludeBinaryData ) )Док држите тастер Alt притиснут, изаберите дугме.
Додајте ознаку и подесите њено својство Text према овој променљивој:
ImageJSONПромените величину контроле и смањите величину фонта према потреби да бисте приказали већину резултата.
Ознака приказује текстуални низ који JSON је функција заробила.
"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjxzdmcgdmVyc2lvbj0iMS4xIg0KCSB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWxuczphPSJodHRwOi8vbnMuYWRvYmUuY29tL0Fkb2JlU1ZHVmlld2VyRXh0ZW5zaW9ucy8zLjAvIg0KCSB4PSIwcHgiIHk9IjBweCIgd2lkdGg9IjI3MHB4IiBoZWlnaHQ9IjI3MHB4IiBlbmFibGUtYmFja2dyb3VuZD0ibmV3IDAgMCAyNzAgMjcwIiB4bWw6c3BhY2U9InByZXNlcnZlIj4NCgk8ZyBjbGFzcz0ic3QwIj4NCgkJPHJlY3QgeT0iMC43IiBmaWxsPSIjRTlFOUU5IiB3aWR0aD0iMjY5IiBoZWlnaHQ9IjI2OS4zIi8+DQoJCTxwb2x5Z29uIGZpbGw9IiNDQkNCQ0EiIHBvaW50cz0iMjc3LjksMTg3LjEgMjQ1LDE0My40IDE4OC42LDIwMi44IDc1LDgwLjUgLTQuMSwxNjUuMyAtNC4xLDI3MiAyNzcuOSwyNzIiLz4NCgkJPGVsbGlwc2UgZmlsbD0iI0NCQ0JDQSIgY3g9IjIwMi40IiBjeT0iODQuMSIgcng9IjI0LjQiIHJ5PSIyNC4zIi8+DQoJPC9nPg0KPC9zdmc+"
Табеле вредности
Ова формула:
JSON( [1,2,3] )
производи текстуални низ [ {"Валуе":1 }, {"Валуе":2 }, {"Валуе":3 }].
Иста формула са опцијом ЈСОНФормат.ФлаттенВалуеТаблес:
JSON( [1,2,3], JSONFormat.FlattenValueTables )
производи текстуални низ [1,2,3].
Имајте на уму да опција ФлаттенВалуеТаблес нема утицаја када се JSON користи са колекцијама ЦитиПопулатионс или ЦитиесБиЦоунтрy јер ове табеле нису табеле вредности. Табела вредности има једну колону и мора се звати "Вредност".