Histórico da Página
...
Obs.: A função aceita como argumento arrays de JSON. Os dois primeiros argumentos devem ter o mesmo tipo de variável (JSON & JSON ou Array & Array).
...
- Por conta de um comportamento padrão da JsonObject, não recomendamos utilizar o formato JSON array (ex.: [{}, {}]), somente JSON object (ex.: { "a": {}, "b": [] });
- Caso seja necessário comparar arrays de JSON, recomendamos nomear o array (ex.: { "meuArray": [{}, {}] }) e passar o objeto nomeado no parâmetro da função (ex.: oMeuJson["meuArray"])
- Disponível à partir da LIB versão 2021062820210809 ou superior;
- Essa função só funciona em binários com suporte a TLPP.
...
Bloco de código | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
#Include "protheus.ch" User Function MyJsonCompare() Local lRet As Logical Local cRet As Character Local cJsonOne As Character Local cJsonTwo As Character Local oJson1jJson1 := JsonObject():New() Local oJson2jJson2 := JsonObject():New() cJsonOne := '{"propriedade": "valor","array":[{"valor1": true},{"valor2": true}]}' cJsonTwo := '{"propriedade": "valor","array":[{"valor1": true},{"valor2": false}]}' oJson1jJson1:FromJson(cJsonOne) oJson2jJson2:FromJson(cJsonTwo) lRet := FwJsonCompare(oJson1jJson1, oJson2jJson2, @cRet) If !lRet ConOut(cRet) // Resultado: array[2]=> Item at position 2 of aArray1 not found in aArray2. EndIf FreeObj(oJson1jJson1) FreeObj(oJson2jJson2) Return Nil |
Visão Geral
Import HTML Content
Conteúdo das Ferramentas
Tarefas