PJROCT – Získání číselných hodnot z textu ve formátu JSON

Symbol blokuPotřebná licence: STANDARD
PIC

Popis funkce
Tento blok má stejnou funkci jako PJSOCT, jen výstupy jsou číselné. Pokud v JSON textu požadovaný objekt neexistuje nebo hodnota objektu nejde převést na číslo, nastaví se na výstup hodnota parametru yerr a je hlášena chyba.

Blok na vstupu jtxt očekává text ve formátu JSON. Na výstupech y1 y7 jsou pak po řadě hodnoty objektů identifikovaných parametry name1 name7. Pokud je některý z parametrů parametry name1 name7 prázdný, bude prázdný i příslušný výstup a není to považováno za chybu. Blok vstupní string vyhodnocuje jen pokud je RUN = on. Na výstupu iE je indikována chyba. Mohou nastávat tyto případy:

  • 0 – bez chyby
  • -1 – některý z parametrů name1 name7 odkazuje na objekt, který se ve vstupním textu (na vstupu jtxt) nevyskytuje
  • -103 – textu na vstupu jtxt neodpovídá JSON formátu
  • -106 – všechny z parametrů name1 name7 odkazují na objekt, který se ve vstupním textu (na vstupu jtxt) nevyskytuje

Příklad: předpokládejme
jtxt = "{"id": 12345, "params":{"temperature": 23, "pressure": 2.34},
"description":"reactor1","values":[12, 34.5, 45.0, 30.2]}"
name1 = "params.temperature",
name2 = "values[0]",
name3 = "pressure",
name4 = "description",
pak na výstupu sy1 bude hodnota "23", na výstupu y2 bude hodnota "12", na výstupu y3 bude hodnota parametru yerr a bude signalizována chyba, na výstupu y4 bude hodnota parametru yerr a bude signalizována chyba

Vstupy

jtxt

Text v JSON formátu

String

RUN

Povolení běhu algoritmu

Bool

Parametry

name1..8

Jméno objektu v textu formátu JSON

String

nmax

Rezervovaná paměť pro řetězec   0  65520

Long (I32)

yerr

Náhradní hodnota pro případ chyby

Double (F64)

Výstupy

y1..8

Výstup bloku

Double (F64)

iE

Kód chyby

Error

2024 © REX Controls s.r.o., www.rexygen.com