Early Access: The content on this website is provided for informational purposes only in connection with pre-General Availability Qlik Products. All content is subject to change and is provided without warranty.
JsonSet() modyfikuje ciąg zawierający dane JSON (JavaScript Object Notation). Może ustawić lub wstawić wartość JSON z nową lokalizacją określoną przez ścieżkę. Dane JSON muszą mieć poprawny format JSON, ale mogą zawierać dodatkowe spacje i znaki nowego wiersza.
Składnia:
value JsonSet(json, path, value)
Typ zwracanych danych: wartość podwójna
Argumenty
Argument
Opis
json
Ciąg zawierający dane JSON.
path
Ścieżka musi spełniać warunki normy RFC 6901. Umożliwia to budowanie właściwości w danych w formacie JSON bez użycia skomplikowanych funkcji operujących na fragmentach tekstu lub indeksujących oraz instrukcji konkatenacji.
value
Nowa wartość ciągu w formacie JSON.
Przykład: prawidłowe i nieprawidłowe wyrażenia wykresu
Przykład
Wynik
JsonSet( '{}','/a','"b"' )
Zwraca wartość {"a":"b"}
JsonSet( '[]','/0','"x"' )
Zwraca wartość ["x"]
JsonSet( '"abc"','','123' )
Zwraca wartość 123
JsonSet( '"abc"','/x','123' )
Zwraca wartość null. Ścieżka nie wskazuje prawidłowej części danych w formacie JSON.
JsonSet( '{"a":{"b":"c"}}','a/b','"x"' )
Zwraca wartość null. Nieprawidłowa ścieżka.
JsonSet( '{"a":"b"}','/a','abc' )
Zwraca wartość null. Nieprawidłowy format JSON wartości. Ciąg musi być ujęty w cudzysłów.
Przykład — podstawy JsonSet
Przegląd
Dane JSON są odbierane jako ciąg tekstowy w jednym wierszu. Chcesz odpowiednio zaktualizować cenę artykułu i łączną cenę zamówienia.
Otwórz Edytor ładowania danych i poniżej dodaj skrypt ładowania do nowej sekcji.
Skrypt ładowania zawiera:
Zestaw danych załadowany do tabeli o nazwie Example.
Załaduj dane i otwórz arkusz. Utwórz nową tabelę i dodaj to pole jako wymiar:
OrderDetails
Utwórz następującą miarę:
JsonSet(JsonSet(OrderDetails,'/items/price',1100),'/total_price',2200) do ustawienia ceny na 1100 i ceny całkowitej na 2200, używając poprawnej ścieżki do odpowiednich kluczy w łańcuchu JSON.