JsonSet() modifica uma string contendo dados JSON (JavaScript Object Notation). Ele pode definir ou inserir um valor JSON com o novo local especificado pelo caminho. Os dados devem ser JSON válidos, mas podem conter espaços extras ou novas linhas.
Sintaxe:
value JsonSet(json, path, value)
Tipo de dados de retorno: dual
Argumentos
Argumento
Descrição
json
String contendo dados JSON.
path
O caminho deve ser especificado de acordo com a RFC 6901. Isso permite o acúmulo de propriedades dentro de dados JSON sem usar funções complexas de substring ou índice e concatenação.
value
O novo valor da string em formato JSON.
Exemplo: Expressões de gráfico válidas e inválidas
Exemplo
Resultado
JsonSet( '{}','/a','"b"' )
Retorna {"a":"b"}
JsonSet( '[]','/0','"x"' )
Retorna ["x"]
JsonSet( '"abc"','','123' )
Retorna 123
JsonSet( '"abc"','/x','123' )
Retorna null. O caminho não aponta para uma parte válida dos dados JSON.
JsonSet( '{"a":{"b":"c"}}','a/b','"x"' )
Retorna null. O caminho é inválido.
JsonSet( '{"a":"b"}','/a','abc' )
Retorna null. O valor não é um JSON válido. Uma string deve estar entre aspas.
Exemplo - Fundamentos de JsonSet
Visão geral
Os dados JSON são recebidos como uma string de texto em uma única linha. Você deseja atualizar o preço do item e o preço total do pedido adequadamente.
Abra o editor da carga de dados e adicione o script de carregamento abaixo em uma nova guia.
O script de carregamento contém:
Um conjunto de dados que é carregado em uma tabela de dados denominada Example.
Carregue os dados e abra uma pasta. Crie uma nova tabela e adicione esse campo como uma dimensão:
OrderDetails
Crie a seguinte medida:
JsonSet(JsonSet(OrderDetails,'/items/price',1100),'/total_price',2200) para definir o preço para 1100 e o preço total para 2200 usando o caminho correto para as respectivas chaves na string JSON.
Se você encontrar algum problema com esta página ou seu conteúdo - um erro de digitação, uma etapa ausente ou um erro técnico - informe-nos como podemos melhorar!