Uporabniška orodja

Barvna shema: Temna

Office JSON

Razčlenjevalnik JSON za VBA – z objektnim modelom, ki ga poznate iz MSXML

Naložite odgovor spletne storitve, ga poizvedujte z JPath, berite tipizirane vrednosti in zapišite JSON nazaj – z objektnim modelom MSXML. Zneski in dolgi identifikatorji se vrnejo natanko takšni, kot so bili poslani.

Koda VBA z JDoc, GetCurrency in GetDecimal; ob njej rezultat 1234567.89 in 9007199254740993 brez zaokroževanja

Izhodišče

Spletne storitve in vmesniki REST odgovarjajo v JSON, Access in VBA pa za to nimata ničesar. Kdor JSON razčlenjuje ročno ali ga bere prek tipa Double, hitro izgubi števko: zneski se zaokrožijo, 19-mestni identifikatorji ne gredo več vanj, datum pa se premakne za časovni pas.

Rešitev

Office JSON prinese JSON v VBA z objektnim modelom MSXML. Števila ohranijo besedilo, s katerim so bila prebrana – shranjevanje nikoli ne spremeni števke.

Tako delate z njim:

  1. Odgovor naložite z LoadJson; ParseError pove, kje besedilo ni pravilno.
  2. Poizvedujete z JPath in berete tipizirane vrednosti, na primer z GetCurrency ali GetDate.
  3. Vozlišča spremenite ali dodate in rezultat zapišete kot besedilo JSON ali v datoteko.
  • Nič novega za učenje: JDoc, LoadJson s ParseError, SelectSingleNode, SelectNodes in For Each delujejo kot v MSXML.
  • Natančna števila: Currency in Decimal se vrneta brez ovinka prek tipa Double, 19-mestni identifikatorji ostanejo nespremenjeni.
  • Poizvedbe namesto zank: JPath po RFC 9535 s potmi, nadomestnimi znaki, rekurzivnim spustom, rezinami in filtri.
  • Napake obravnavate po številki: stalne številke napak s potjo ali položajem v opisu.

Od besedila do natančne vrednosti

JDoc naloži besedilo, JPath najde vrednost, tipizirani bralniki pa jo preberejo natanko tako, kot je zapisana v JSON.

Potek: besedilo JSON, JDoc, JPath, tipizirana vrednost kot Decimal 9007199254740993
Števila ostanejo besedilo, dokler ne zahtevate tipa. Šele GetDouble računa z Double.

Funkcije

  • Tipizirane metode Get z nadomestno vrednostjo kot pri Nz(): GetString, GetLong, GetCurrency, GetDecimal, GetDate in druge
  • Vrednost, ki ne ustreza zahtevanemu tipu, se zavrne, ne odreže
  • Datumi po ISO 8601 v obe smeri, z enim pravilom za časovne pasove za ves dokument
  • Ustvarjanje JSON: SetValue doda manjkajoče objekte in polja; vozlišča kopirate in odstranite
  • Sporočila o napakah v slovenščini, nemščini, angleščini, hrvaščini ali italijanščini
  • Ničesar ni treba namestiti za izvajanje: ena izvorna knjižnica DLL za vsako bitno različico, brez .NET

Tehnični podatki

Pogosta vprašanja

Kaj moram namestiti?

Samo knjižnico: eno izvorno knjižnico DLL za vsako bitno različico, brez .NET in brez izvajalnega okolja. Namestitev in razdeljevanje

Kako strogo knjižnica bere JSON?

Po standardu, zato nobena vrednost ni prebrana napačno. Katere popustljive zapise drugih orodij zavrne in kako ravnati z njimi, piše v razdelku Odpravljanje težav.

Kako začnem?

Z vadnico: naložite dokument, preberite vrednosti z JPath, ga spremenite in shranite – v približno desetih minutah. Na vadnico

Je to WKL Access JSON?

Da. Office JSON je novo ime knjižnice, ki se je prej imenovala WKL Access JSON.

Namestitev, primeri in referenca, korak za korakom: vse je v dokumentaciji.

Odprite dokumentacijo