Page 1 of 1

Crear JSON

Posted: Mon Mar 23, 2020 3:35 pm
by jparada
Hola,

Estoy intentar crear una cadena json, estoy haciendo algo así:

Code: Select all

label_data := { "Mexlub", "Fleetguard", "Valvoline", "Bardahl", "Mexicana", "Taller" }

::hContent := { "chart" => "{", ;
                "type" => 'bar', ;
                "labels" => label_data ;
                } 

MsgInfo( hb_jsonEncode( ::hContent ) )
Esto me genera un contenido como esto:
img.png
img.png (3.15 KiB) Viewed 1358 times
Pero lo que requiero es que la llave de chart esté sin comillas y también que no incluya la coma , no puedo utilizar strtran porque no quiero cambiar todo el contenido del json, sólo esa parte, en concreto necesito que quede de esta forma:
{"chart": {
"type":"bar","labels":["Mexlub","Fleetguard","Valvoline","Bardahl","Mexicana","Taller"]}

Alguna ayuda por favor.

Saludos,
Javier

Re: Crear JSON

Posted: Tue Mar 24, 2020 4:17 pm
by edk
jparada wrote: Mon Mar 23, 2020 3:35 pm Hola,

Estoy intentar crear una cadena json, estoy haciendo algo así:

Code: Select all

label_data := { "Mexlub", "Fleetguard", "Valvoline", "Bardahl", "Mexicana", "Taller" }

::hContent := { "chart" => "{", ;
                "type" => 'bar', ;
                "labels" => label_data ;
                } 

MsgInfo( hb_jsonEncode( ::hContent ) )
Esto me genera un contenido como esto:
img.png

Pero lo que requiero es que la llave de chart esté sin comillas y también que no incluya la coma , no puedo utilizar strtran porque no quiero cambiar todo el contenido del json, sólo esa parte, en concreto necesito que quede de esta forma:
{"chart": {
"type":"bar","labels":["Mexlub","Fleetguard","Valvoline","Bardahl","Mexicana","Taller"]}

Alguna ayuda por favor.

Saludos,
Javier
All this methods do the same in correct way:

Code: Select all

label_data := { "Mexlub", "Fleetguard", "Valvoline", "Bardahl", "Mexicana", "Taller" }

//1
hContent := { "chart" => hb_Hash( "type", 'bar', "labels", label_data ) } 
MsgInfo( hb_jsonEncode( hContent ) )

//2
hChart := { "type" => 'bar', "labels" => label_data }
hContent := { "chart" => hChart } 
MsgInfo( hb_jsonEncode( hContent ) )

//3
hContent := { "chart" => { "type" => 'bar', "labels" => label_data } } 
MsgInfo( hb_jsonEncode( hContent ) )

Re: Crear JSON

Posted: Sun Mar 29, 2020 7:02 pm
by jparada
Hi Edward,

Thanks for answering, let me try.

Regards,
Javier