JSON decode request
- cdmmaui
- Posts: 708
- Joined: Fri Oct 28, 2005 9:53 am
- Location: Houston ∙ Chicago ∙ Los Angeles ∙ Miami ∙ London ∙ Hong Kong
- Contact:
JSON decode request
I was wondering if someone could provide a sample PRG to decode each JSON message below. I tried to use hb_jsondecode() and view in XBROWSW but all the data loads to a single cell in XBROWSE. I need to be able to read each segment and details below we segment. I greatly appreciate your help!
JSON 1:
{
"FindRemRsp": {
"Header": [
{
"Remision": "X88603",
"BundleBarcode": "E50560",
"MaterialCode": "MDNOVPE000000C0003",
"MaterialDescription": "4 1/2\" 15.77#RANDO-NOV 359R2PEND",
"EndType": "1182",
"EndTypeDesc": "PLAIN END",
"PurchasingDocument": "",
"PurchasingItem": "0",
"SalesOrder": "0031411884",
"SalesOrderItem": "10",
"CV": "326480",
"Partida": "01",
"OriginCode": "APRO",
"OriginDescription": "ALMACEN DE PRODTO. TERM",
"DestinationCode": "D1",
"DestinationDescription": "APRO TAMSA",
"RemissionSinceDate": "20250826",
"RemissionSinceTime": "21462957",
"FlatTruck": "PLAN99",
"TotalPieces": "95",
"TotalMeters": "935.680",
"TotalKilograms": "22121.000",
"Detail": [
{
"Remision": "X88603",
"BundleBarcode": "E50560",
"Bundle": "000029237073",
"WipBatch": "67201",
"MillId": "TAM",
"MillOrder": "000449494",
"MillOrderItem": "1",
"TubeBarcode": "392252010322",
"PipeNumber": "84535",
"HeatNumber": "65402",
"Pieces": "1",
"Meters": "9.850",
"Kilograms": "234.000"
},
{
"Remision": "X88603",
"BundleBarcode": "E50560",
"Bundle": "000029237073",
"WipBatch": "67201",
"MillId": "TAM",
"MillOrder": "000449494",
"MillOrderItem": "1",
"TubeBarcode": "392252010280",
"PipeNumber": "84557",
"HeatNumber": "65402",
"Pieces": "1",
"Meters": "9.860",
"Kilograms": "233.000"
},
{
"Remision": "X88603",
"BundleBarcode": "E50560",
"Bundle": "000029237073",
"WipBatch": "67201",
"MillId": "TAM",
"MillOrder": "000449494",
"MillOrderItem": "1",
"TubeBarcode": "092252010268",
"PipeNumber": "84558",
"HeatNumber": "65402",
"Pieces": "1",
"Meters": "9.870",
"Kilograms": "233.000"
},
{
"Remision": "X88603",
"BundleBarcode": "E50560",
"Bundle": "000029237073",
"WipBatch": "67201",
"MillId": "TAM",
"MillOrder": "000449494",
"MillOrderItem": "1",
"TubeBarcode": "692252010278",
"PipeNumber": "84563",
"HeatNumber": "65402",
"Pieces": "1",
"Meters": "9.860",
"Kilograms": "232.000"
},
{
"Remision": "X88603",
"BundleBarcode": "E50560",
"Bundle": "000029237073",
"WipBatch": "67201",
"MillId": "TAM",
"MillOrder": "000449494",
"MillOrderItem": "1",
"TubeBarcode": "692252010259",
"PipeNumber": "84567",
"HeatNumber": "65402",
"Pieces": "1",
"Meters": "9.830",
"Kilograms": "232.000"
},
{
"Remision": "X88603",
"BundleBarcode": "E50560",
"Bundle": "000029237073",
"WipBatch": "67201",
"MillId": "TAM",
"MillOrder": "000449494",
"MillOrderItem": "1",
"TubeBarcode": "892252010269",
"PipeNumber": "84570",
"HeatNumber": "65402",
"Pieces": "1",
"Meters": "9.820",
"Kilograms": "233.000"
},
{
"Remision": "X88603",
"BundleBarcode": "E50560",
"Bundle": "000029237073",
"WipBatch": "67201",
"MillId": "TAM",
"MillOrder": "000449494",
"MillOrderItem": "1",
"TubeBarcode": "992252010267",
"PipeNumber": "84572",
"HeatNumber": "65402",
"Pieces": "1",
"Meters": "9.850",
"Kilograms": "233.000"
},
{
"Remision": "X88603",
"BundleBarcode": "E50560",
"Bundle": "000029237073",
"WipBatch": "67201",
"MillId": "TAM",
"MillOrder": "000449494",
"MillOrderItem": "1",
"TubeBarcode": "192252010253",
"PipeNumber": "84576",
"HeatNumber": "65402",
"Pieces": "1",
"Meters": "9.860",
"Kilograms": "234.000"
},
{
"Remision": "X88603",
"BundleBarcode": "E50560",
"Bundle": "000029237073",
"WipBatch": "67201",
"MillId": "TAM",
"MillOrder": "000449494",
"MillOrderItem": "1",
"TubeBarcode": "392252010263",
"PipeNumber": "84579",
"HeatNumber": "65402",
"Pieces": "1",
"Meters": "9.830",
"Kilograms": "232.000"
},
{
"Remision": "X88603",
"BundleBarcode": "E50560",
"Bundle": "000029237073",
"WipBatch": "67201",
"MillId": "TAM",
"MillOrder": "000449494",
"MillOrderItem": "1",
"TubeBarcode": "492252010261",
"PipeNumber": "84581",
"HeatNumber": "65402",
"Pieces": "1",
"Meters": "9.850",
"Kilograms": "233.000"
},
{
"Remision": "X88603",
"BundleBarcode": "E50560",
"Bundle": "000029237073",
"WipBatch": "67201",
"MillId": "TAM",
"MillOrder": "000449494",
"MillOrderItem": "1",
"TubeBarcode": "992252010249",
"PipeNumber": "84584",
"HeatNumber": "65402",
"Pieces": "1",
"Meters": "9.860",
"Kilograms": "233.000"
},
{
"Remision": "X88603",
"BundleBarcode": "E50560",
"Bundle": "000029237073",
"WipBatch": "67201",
"MillId": "TAM",
"MillOrder": "000449494",
"MillOrderItem": "1",
"TubeBarcode": "292252010262",
"PipeNumber": "84589",
"HeatNumber": "65402",
"Pieces": "1",
"Meters": "9.820",
"Kilograms": "233.000"
},
{
"Remision": "X88603",
"BundleBarcode": "E50560",
"Bundle": "000029237073",
"WipBatch": "67201",
"MillId": "TAM",
"MillOrder": "000449494",
"MillOrderItem": "1",
"TubeBarcode": "892252010246",
"PipeNumber": "84590",
"HeatNumber": "65402",
"Pieces": "1",
"Meters": "9.860",
"Kilograms": "233.000"
},
{
"Remision": "X88603",
"BundleBarcode": "E50560",
"Bundle": "000029237073",
"WipBatch": "67201",
"MillId": "TAM",
"MillOrder": "000449494",
"MillOrderItem": "1",
"TubeBarcode": "092252010274",
"PipeNumber": "84599",
"HeatNumber": "65402",
"Pieces": "1",
"Meters": "9.860",
"Kilograms": "233.000"
},
{
"Remision": "X88603",
"BundleBarcode": "E50560",
"Bundle": "000029237073",
"WipBatch": "67201",
"MillId": "TAM",
"MillOrder": "000449494",
"MillOrderItem": "1",
"TubeBarcode": "992252010216",
"PipeNumber": "84626",
"HeatNumber": "65402",
"Pieces": "1",
"Meters": "9.850",
"Kilograms": "233.000"
},
{
"Remision": "X88603",
"BundleBarcode": "E50560",
"Bundle": "000029237073",
"WipBatch": "67201",
"MillId": "TAM",
"MillOrder": "000449494",
"MillOrderItem": "1",
"TubeBarcode": "792252010232",
"PipeNumber": "84629",
"HeatNumber": "65402",
"Pieces": "1",
"Meters": "9.850",
"Kilograms": "233.000"
},
{
"Remision": "X88603",
"BundleBarcode": "E50560",
"Bundle": "000029237073",
"WipBatch": "67201",
"MillId": "TAM",
"MillOrder": "000449494",
"MillOrderItem": "1",
"TubeBarcode": "292252010203",
"PipeNumber": "84631",
"HeatNumber": "65402",
"Pieces": "1",
"Meters": "9.850",
"Kilograms": "233.000"
},
{
"Remision": "X88603",
"BundleBarcode": "E50560",
"Bundle": "000029237073",
"WipBatch": "67201",
"MillId": "TAM",
"MillOrder": "000449494",
"MillOrderItem": "1",
"TubeBarcode": "792252010187",
"PipeNumber": "84699",
"HeatNumber": "65402",
"Pieces": "1",
"Meters": "9.840",
"Kilograms": "233.000"
},
{
"Remision": "X88603",
"BundleBarcode": "E50560",
"Bundle": "000029237073",
"WipBatch": "67201",
"MillId": "TAM",
"MillOrder": "000449494",
"MillOrderItem": "1",
"TubeBarcode": "292252010340",
"PipeNumber": "84997",
"HeatNumber": "65402",
"Pieces": "1",
"Meters": "9.860",
"Kilograms": "233.000"
},
{
"Remision": "X88603",
"BundleBarcode": "E50560",
"Bundle": "000029237073",
"WipBatch": "67201",
"MillId": "TAM",
"MillOrder": "000449494",
"MillOrderItem": "1",
"TubeBarcode": "992252010272",
"PipeNumber": "84553",
"HeatNumber": "65402",
"Pieces": "1",
"Meters": "9.850",
"Kilograms": "233.000"
},
{
"Remision": "X88603",
"BundleBarcode": "E50560",
"Bundle": "000029238657",
"WipBatch": "67366",
"MillId": "TAM",
"MillOrder": "000449494",
"MillOrderItem": "1",
"TubeBarcode": "992252010295",
"PipeNumber": "84542",
"HeatNumber": "65402",
"Pieces": "1",
"Meters": "9.850",
"Kilograms": "234.000"
},
{
"Remision": "X88603",
"BundleBarcode": "E50560",
"Bundle": "000029238657",
"WipBatch": "67366",
"MillId": "TAM",
"MillOrder": "000449494",
"MillOrderItem": "1",
"TubeBarcode": "892252010288",
"PipeNumber": "84548",
"HeatNumber": "65402",
"Pieces": "1",
"Meters": "9.850",
"Kilograms": "233.000"
},
{
"Remision": "X88603",
"BundleBarcode": "E50560",
"Bundle": "000029238657",
"WipBatch": "67366",
"MillId": "TAM",
"MillOrder": "000449494",
"MillOrderItem": "1",
"TubeBarcode": "092252010289",
"PipeNumber": "84549",
"HeatNumber": "65402",
"Pieces": "1",
"Meters": "9.850",
"Kilograms": "234.000"
},
{
"Remision": "X88603",
"BundleBarcode": "E50560",
"Bundle": "000029238657",
"WipBatch": "67366",
"MillId": "TAM",
"MillOrder": "000449494",
"MillOrderItem": "1",
"TubeBarcode": "092252010290",
"PipeNumber": "84550",
"HeatNumber": "65402",
"Pieces": "1",
"Meters": "9.840",
"Kilograms": "233.000"
},
{
"Remision": "X88603",
"BundleBarcode": "E50560",
"Bundle": "000029238657",
"WipBatch": "67366",
"MillId": "TAM",
"MillOrder": "000449494",
"MillOrderItem": "1",
"TubeBarcode": "992252010254",
"PipeNumber": "84565",
"HeatNumber": "65402",
"Pieces": "1",
"Meters": "9.860",
"Kilograms": "232.000"
},
{
"Remision": "X88603",
"BundleBarcode": "E50560",
"Bundle": "000029238657",
"WipBatch": "67366",
"MillId": "TAM",
"MillOrder": "000449494",
"MillOrderItem": "1",
"TubeBarcode": "592252010260",
"PipeNumber": "84566",
"HeatNumber": "65402",
"Pieces": "1",
"Meters": "9.850",
"Kilograms": "232.000"
},
{
"Remision": "X88603",
"BundleBarcode": "E50560",
"Bundle": "000029238657",
"WipBatch": "67366",
"MillId": "TAM",
"MillOrder": "000449494",
"MillOrderItem": "1",
"TubeBarcode": "292252010245",
"PipeNumber": "84568",
"HeatNumber": "65402",
"Pieces": "1",
"Meters": "9.860",
"Kilograms": "233.000"
},
{
"Remision": "X88603",
"BundleBarcode": "E50560",
"Bundle": "000029238657",
"WipBatch": "67366",
"MillId": "TAM",
"MillOrder": "000449494",
"MillOrderItem": "1",
"TubeBarcode": "592252010247",
"PipeNumber": "84569",
"HeatNumber": "65402",
"Pieces": "1",
"Meters": "9.820",
"Kilograms": "232.000"
},
{
"Remision": "X88603",
"BundleBarcode": "E50560",
"Bundle": "000029238657",
"WipBatch": "67366",
"MillId": "TAM",
"MillOrder": "000449494",
"MillOrderItem": "1",
"TubeBarcode": "792252010257",
"PipeNumber": "84574",
"HeatNumber": "65402",
"Pieces": "1",
"Meters": "9.860",
"Kilograms": "233.000"
},
{
"Remision": "X88603",
"BundleBarcode": "E50560",
"Bundle": "000029238657",
"WipBatch": "67366",
"MillId": "TAM",
"MillOrder": "000449494",
"MillOrderItem": "1",
"TubeBarcode": "392252010258",
"PipeNumber": "84575",
"HeatNumber": "65402",
"Pieces": "1",
"Meters": "9.830",
"Kilograms": "232.000"
},
{
"Remision": "X88603",
"BundleBarcode": "E50560",
"Bundle": "000029238657",
"WipBatch": "67366",
"MillId": "TAM",
"MillOrder": "000449494",
"MillOrderItem": "1",
"TubeBarcode": "092252010252",
"PipeNumber": "84577",
"HeatNumber": "65402",
"Pieces": "1",
"Meters": "9.860",
"Kilograms": "232.000"
},
{
"Remision": "X88603",
"BundleBarcode": "E50560",
"Bundle": "000029238657",
"WipBatch": "67366",
"MillId": "TAM",
"MillOrder": "000449494",
"MillOrderItem": "1",
"TubeBarcode": "192252010248",
"PipeNumber": "84583",
"HeatNumber": "65402",
"Pieces": "1",
"Meters": "9.820",
"Kilograms": "232.000"
},
{
"Remision": "X88603",
"BundleBarcode": "E50560",
"Bundle": "000029238657",
"WipBatch": "67366",
"MillId": "TAM",
"MillOrder": "000449494",
"MillOrderItem": "1",
"TubeBarcode": "292252010251",
"PipeNumber": "84586",
"HeatNumber": "65402",
"Pieces": "1",
"Meters": "9.860",
"Kilograms": "233.000"
},
{
"Remision": "X88603",
"BundleBarcode": "E50560",
"Bundle": "000029238657",
"WipBatch": "67366",
"MillId": "TAM",
"MillOrder": "000449494",
"MillOrderItem": "1",
"TubeBarcode": "892252010250",
"PipeNumber": "84587",
"HeatNumber": "65402",
"Pieces": "1",
"Meters": "9.860",
"Kilograms": "233.000"
},
{
"Remision": "X88603",
"BundleBarcode": "E50560",
"Bundle": "000029238657",
"WipBatch": "67366",
"MillId": "TAM",
"MillOrder": "000449494",
"MillOrderItem": "1",
"TubeBarcode": "492252010255",
"PipeNumber": "84588",
"HeatNumber": "65402",
"Pieces": "1",
"Meters": "9.850",
"Kilograms": "233.000"
},
{
"Remision": "X88603",
"BundleBarcode": "E50560",
"Bundle": "000029238657",
"WipBatch": "67366",
"MillId": "TAM",
"MillOrder": "000449494",
"MillOrderItem": "1",
"TubeBarcode": "592252010231",
"PipeNumber": "84609",
"HeatNumber": "65402",
"Pieces": "1",
"Meters": "9.860",
"Kilograms": "233.000"
},
{
"Remision": "X88603",
"BundleBarcode": "E50560",
"Bundle": "000029238657",
"WipBatch": "67366",
"MillId": "TAM",
"MillOrder": "000449494",
"MillOrderItem": "1",
"TubeBarcode": "092252010226",
"PipeNumber": "84610",
"HeatNumber": "65402",
"Pieces": "1",
"Meters": "9.850",
"Kilograms": "233.000"
},
{
"Remision": "X88603",
"BundleBarcode": "E50560",
"Bundle": "000029238658",
"WipBatch": "67366",
"MillId": "TAM",
"MillOrder": "000449494",
"MillOrderItem": "1",
"TubeBarcode": "992252010238",
"PipeNumber": "84601",
"HeatNumber": "65402",
"Pieces": "1",
"Meters": "9.830",
"Kilograms": "233.000"
},
{
"Remision": "X88603",
"BundleBarcode": "E50560",
"Bundle": "000029238658",
"WipBatch": "67366",
"MillId": "TAM",
"MillOrder": "000449494",
"MillOrderItem": "1",
"TubeBarcode": "392252010201",
"PipeNumber": "84603",
"HeatNumber": "65402",
"Pieces": "1",
"Meters": "9.840",
"Kilograms": "233.000"
},
{
"Remision": "X88603",
"BundleBarcode": "E50560",
"Bundle": "000029238658",
"WipBatch": "67366",
"MillId": "TAM",
"MillOrder": "000449494",
"MillOrderItem": "1",
"TubeBarcode": "992252010281",
"PipeNumber": "84555",
"HeatNumber": "65402",
"Pieces": "1",
"Meters": "9.850",
"Kilograms": "233.000"
},
{
"Remision": "X88603",
"BundleBarcode": "E50560",
"Bundle": "000029238668",
"WipBatch": "67368",
"MillId": "TAM",
"MillOrder": "000449494",
"MillOrderItem": "1",
"TubeBarcode": "792252010244",
"PipeNumber": "84624",
"HeatNumber": "65402",
"Pieces": "1",
"Meters": "9.830",
"Kilograms": "232.000"
},
{
"Remision": "X88603",
"BundleBarcode": "E50560",
"Bundle": "000029238669",
"WipBatch": "67368",
"MillId": "TAM",
"MillOrder": "000449494",
"MillOrderItem": "1",
"TubeBarcode": "092252010164",
"PipeNumber": "84667",
"HeatNumber": "65402",
"Pieces": "1",
"Meters": "9.850",
"Kilograms": "233.000"
},
{
"Remision": "X88603",
"BundleBarcode": "E50560",
"Bundle": "000029238669",
"WipBatch": "67368",
"MillId": "TAM",
"MillOrder": "000449494",
"MillOrderItem": "1",
"TubeBarcode": "992252010184",
"PipeNumber": "84669",
"HeatNumber": "65402",
"Pieces": "1",
"Meters": "9.860",
"Kilograms": "233.000"
},
{
"Remision": "X88603",
"BundleBarcode": "E50560",
"Bundle": "000029238669",
"WipBatch": "67368",
"MillId": "TAM",
"MillOrder": "000449494",
"MillOrderItem": "1",
"TubeBarcode": "692252010113",
"PipeNumber": "84682",
"HeatNumber": "65402",
"Pieces": "1",
"Meters": "9.840",
"Kilograms": "233.000"
},
{
"Remision": "X88603",
"BundleBarcode": "E50560",
"Bundle": "000029238669",
"WipBatch": "67368",
"MillId": "TAM",
"MillOrder": "000449494",
"MillOrderItem": "1",
"TubeBarcode": "292252010138",
"PipeNumber": "84685",
"HeatNumber": "65402",
"Pieces": "1",
"Meters": "9.870",
"Kilograms": "233.000"
},
{
"Remision": "X88603",
"BundleBarcode": "E50560",
"Bundle": "000029238669",
"WipBatch": "67368",
"MillId": "TAM",
"MillOrder": "000449494",
"MillOrderItem": "1",
"TubeBarcode": "592252010111",
"PipeNumber": "84687",
"HeatNumber": "65402",
"Pieces": "1",
"Meters": "9.850",
"Kilograms": "233.000"
},
{
"Remision": "X88603",
"BundleBarcode": "E50560",
"Bundle": "000029238669",
"WipBatch": "67368",
"MillId": "TAM",
"MillOrder": "000449494",
"MillOrderItem": "1",
"TubeBarcode": "492252010128",
"PipeNumber": "84691",
"HeatNumber": "65402",
"Pieces": "1",
"Meters": "9.860",
"Kilograms": "233.000"
},
{
"Remision": "X88603",
"BundleBarcode": "E50560",
"Bundle": "000029238669",
"WipBatch": "67368",
"MillId": "TAM",
"MillOrder": "000449494",
"MillOrderItem": "1",
"TubeBarcode": "492252010144",
"PipeNumber": "84692",
"HeatNumber": "65402",
"Pieces": "1",
"Meters": "9.850",
"Kilograms": "233.000"
},
{
"Remision": "X88603",
"BundleBarcode": "E50560",
"Bundle": "000029238669",
"WipBatch": "67368",
"MillId": "TAM",
"MillOrder": "000449494",
"MillOrderItem": "1",
"TubeBarcode": "092252010125",
"PipeNumber": "84697",
"HeatNumber": "65402",
"Pieces": "1",
"Meters": "9.840",
"Kilograms": "232.000"
},
{
"Remision": "X88603",
"BundleBarcode": "E50560",
"Bundle": "000029238669",
"WipBatch": "67368",
"MillId": "TAM",
"MillOrder": "000449494",
"MillOrderItem": "1",
"TubeBarcode": "792252010143",
"PipeNumber": "84701",
"HeatNumber": "65402",
"Pieces": "1",
"Meters": "9.860",
"Kilograms": "233.000"
},
{
"Remision": "X88603",
"BundleBarcode": "E50560",
"Bundle": "000029238669",
"WipBatch": "67368",
"MillId": "TAM",
"MillOrder": "000449494",
"MillOrderItem": "1",
"TubeBarcode": "492252010157",
"PipeNumber": "84636",
"HeatNumber": "65402",
"Pieces": "1",
"Meters": "9.860",
"Kilograms": "233.000"
},
{
"Remision": "X88603",
"BundleBarcode": "E50560",
"Bundle": "000029238669",
"WipBatch": "67368",
"MillId": "TAM",
"MillOrder": "000449494",
"MillOrderItem": "1",
"TubeBarcode": "792252010161",
"PipeNumber": "84637",
"HeatNumber": "65402",
"Pieces": "1",
"Meters": "9.830",
"Kilograms": "232.000"
},
{
"Remision": "X88603",
"BundleBarcode": "E50560",
"Bundle": "000029238669",
"WipBatch": "67368",
"MillId": "TAM",
"MillOrder": "000449494",
"MillOrderItem": "1",
"TubeBarcode": "092252010159",
"PipeNumber": "84643",
"HeatNumber": "65402",
"Pieces": "1",
"Meters": "9.850",
"Kilograms": "233.000"
},
{
"Remision": "X88603",
"BundleBarcode": "E50560",
"Bundle": "000029238669",
"WipBatch": "67368",
"MillId": "TAM",
"MillOrder": "000449494",
"MillOrderItem": "1",
"TubeBarcode": "192252010156",
"PipeNumber": "84650",
"HeatNumber": "65402",
"Pieces": "1",
"Meters": "9.830",
"Kilograms": "232.000"
},
{
"Remision": "X88603",
"BundleBarcode": "E50560",
"Bundle": "000029238669",
"WipBatch": "67368",
"MillId": "TAM",
"MillOrder": "000449494",
"MillOrderItem": "1",
"TubeBarcode": "492252010166",
"PipeNumber": "84653",
"HeatNumber": "65402",
"Pieces": "1",
"Meters": "9.830",
"Kilograms": "232.000"
},
{
"Remision": "X88603",
"BundleBarcode": "E50560",
"Bundle": "000029238669",
"WipBatch": "67368",
"MillId": "TAM",
"MillOrder": "000449494",
"MillOrderItem": "1",
"TubeBarcode": "192252010160",
"PipeNumber": "84666",
"HeatNumber": "65402",
"Pieces": "1",
"Meters": "9.840",
"Kilograms": "233.000"
},
{
"Remision": "X88603",
"BundleBarcode": "E50560",
"Bundle": "000029238669",
"WipBatch": "67368",
"MillId": "TAM",
"MillOrder": "000449494",
"MillOrderItem": "1",
"TubeBarcode": "792252010155",
"PipeNumber": "84674",
"HeatNumber": "65402",
"Pieces": "1",
"Meters": "9.840",
"Kilograms": "232.000"
},
{
"Remision": "X88603",
"BundleBarcode": "E50560",
"Bundle": "000029238669",
"WipBatch": "67368",
"MillId": "TAM",
"MillOrder": "000449494",
"MillOrderItem": "1",
"TubeBarcode": "892252010163",
"PipeNumber": "84678",
"HeatNumber": "65402",
"Pieces": "1",
"Meters": "9.850",
"Kilograms": "233.000"
},
{
"Remision": "X88603",
"BundleBarcode": "E50560",
"Bundle": "000029238669",
"WipBatch": "67368",
"MillId": "TAM",
"MillOrder": "000449494",
"MillOrderItem": "1",
"TubeBarcode": "992252010162",
"PipeNumber": "84679",
"HeatNumber": "65402",
"Pieces": "1",
"Meters": "9.850",
"Kilograms": "233.000"
},
{
"Remision": "X88603",
"BundleBarcode": "E50560",
"Bundle": "000029238669",
"WipBatch": "67368",
"MillId": "TAM",
"MillOrder": "000449494",
"MillOrderItem": "1",
"TubeBarcode": "892252010158",
"PipeNumber": "84680",
"HeatNumber": "65402",
"Pieces": "1",
"Meters": "9.850",
"Kilograms": "233.000"
},
{
"Remision": "X88603",
"BundleBarcode": "E50560",
"Bundle": "000029238686",
"WipBatch": "67369",
"MillId": "TAM",
"MillOrder": "000449494",
"MillOrderItem": "1",
"TubeBarcode": "792252010108",
"PipeNumber": "84707",
"HeatNumber": "65402",
"Pieces": "1",
"Meters": "9.830",
"Kilograms": "232.000"
},
{
"Remision": "X88603",
"BundleBarcode": "E50560",
"Bundle": "000029238686",
"WipBatch": "67369",
"MillId": "TAM",
"MillOrder": "000449494",
"MillOrderItem": "1",
"TubeBarcode": "392252010107",
"PipeNumber": "84721",
"HeatNumber": "65402",
"Pieces": "1",
"Meters": "9.830",
"Kilograms": "231.000"
}
]
}
]
},
"FindRemLog": {
"ProcessingResultCode": "1",
"MaximumLogItemSeverityCode": "1",
"LogItem": {
"ErrorCode": "0",
"ErrorDescription": "Consulta realizada exitosamente: Id.Remito",
"SeverityCode": "1"
}
}
}
JSON 2:
{
"FindRFIDRsp": {
"Header": [
{
"ShipmentDocument": "89708",
"ScheduleData": "20250826",
"OutboundDelivery": "0107810225",
"Remision": "827648",
"FinalDestination": "CIENEGA DE FLORES,NL",
"FinalCustomer": "X",
"MaterialCode": "MCMECHAMONOT0C0615",
"MaterialDescription": "80.40\" 15.00-9R-0146F-05MECHANICAL TUB",
"EndType": "1182",
"EndTypeDesc": "PLAIN END",
"PurchasingDocument": "",
"PurchasingItem": "0",
"SalesOrder": "0031415790",
"SalesOrderItem": "40",
"CV": "327119",
"Partida": "04",
"OriginCode": "EE",
"OriginDescription": "EMPRESAS RIGA S.A.",
"RemissionSinceDate": "",
"RemissionSinceTime": "",
"CarrierCode": "999",
"CarrierName": "TRANSPORTISTA DEL CLIENTE (MP)",
"DriverName": "FEDERICO MARROQUIN",
"Plate": "36UM5Z",
"EconomicNr": "172"
},
{
"ShipmentDocument": "89708",
"ScheduleData": "20250826",
"OutboundDelivery": "0107810226",
"Remision": "827649",
"FinalDestination": "CIENEGA DE FLORES,NL",
"FinalCustomer": "X",
"MaterialCode": "MCMECHAMONOT0C0873",
"MaterialDescription": "76.20\" 6.35-5859933.MECHANICAL TUBES .",
"EndType": "1182",
"EndTypeDesc": "PLAIN END",
"PurchasingDocument": "",
"PurchasingItem": "0",
"SalesOrder": "0031415790",
"SalesOrderItem": "110",
"CV": "327119",
"Partida": "11",
"OriginCode": "EE",
"OriginDescription": "EMPRESAS RIGA S.A.",
"RemissionSinceDate": "",
"RemissionSinceTime": "",
"CarrierCode": "999",
"CarrierName": "TRANSPORTISTA DEL CLIENTE (MP)",
"DriverName": "FEDERICO MARROQUIN",
"Plate": "36UM5Z",
"EconomicNr": "172"
},
{
"ShipmentDocument": "89708",
"ScheduleData": "20250826",
"OutboundDelivery": "0107810227",
"Remision": "827650",
"FinalDestination": "CIENEGA DE FLORES,NL",
"FinalCustomer": "X",
"MaterialCode": "MCMECHAMONOT0C0874",
"MaterialDescription": "76.20\" 6.35-6062535MECHANICAL TUBES .",
"EndType": "1182",
"EndTypeDesc": "PLAIN END",
"PurchasingDocument": "",
"PurchasingItem": "0",
"SalesOrder": "0031415790",
"SalesOrderItem": "160",
"CV": "327119",
"Partida": "16",
"OriginCode": "EE",
"OriginDescription": "EMPRESAS RIGA S.A.",
"RemissionSinceDate": "",
"RemissionSinceTime": "",
"CarrierCode": "999",
"CarrierName": "TRANSPORTISTA DEL CLIENTE (MP)",
"DriverName": "FEDERICO MARROQUIN",
"Plate": "36UM5Z",
"EconomicNr": "172"
},
{
"ShipmentDocument": "89708",
"ScheduleData": "20250826",
"OutboundDelivery": "0107810228",
"Remision": "827651",
"FinalDestination": "CIENEGA DE FLORES,NL",
"FinalCustomer": "X",
"MaterialCode": "MCMECHAMONOT0C0615",
"MaterialDescription": "80.40\" 15.00-9R-0146F-05MECHANICAL TUB",
"EndType": "1182",
"EndTypeDesc": "PLAIN END",
"PurchasingDocument": "",
"PurchasingItem": "0",
"SalesOrder": "0031415790",
"SalesOrderItem": "210",
"CV": "327119",
"Partida": "21",
"OriginCode": "EE",
"OriginDescription": "EMPRESAS RIGA S.A.",
"RemissionSinceDate": "",
"RemissionSinceTime": "",
"CarrierCode": "999",
"CarrierName": "TRANSPORTISTA DEL CLIENTE (MP)",
"DriverName": "FEDERICO MARROQUIN",
"Plate": "36UM5Z",
"EconomicNr": "172"
}
]
},
"FindRFIDLog": {
"ProcessingResultCode": "0",
"MaximumLogItemSeverityCode": "1",
"LogItem": {
"ErrorCode": "0",
"ErrorDescription": "CONSULTA REALIZADA EXITOSAMENTE.",
"SeverityCode": "1"
}
}
}
Re: JSON decode request
Code: Select all | Expand
Function Inicio()
LOCAL hJSon := MemoRead("_Data.json") // ===> "_Data.json is your json data"
hb_jsondecode( hJSon, @hJSon )
aData01 := hJSon["FindRemRsp"]["Header"][1]["Detail"]
xBrowse(aData01)
Return nilSaludos,
Carlos Gallego
*** FWH-26.03, xHarbour 1.3.1 Build 20241008, Borland C++7.70, PellesC, ADS 11.1 - MSVC 2022 ***
Re: JSON decode request
Code: Select all | Expand
#include "FiveWin.ch"
Function Inicio()
LOCAL hJSon1 := MemoRead("_Data1.json")
LOCAL hJSon2 := MemoRead("_Data2.json")
hb_jsondecode( hJSon1, @hJSon1 )
aData01 := hJSon1["FindRemRsp"]["Header"][1]["Detail"]
xBrowse(aData01)
hb_jsondecode( hJSon2, @hJSon2 )
aData02 := hJSon2["FindRFIDRsp"]["Header"]
xBrowse(aData02)
Return nilSaludos,
Carlos Gallego
*** FWH-26.03, xHarbour 1.3.1 Build 20241008, Borland C++7.70, PellesC, ADS 11.1 - MSVC 2022 ***
- cdmmaui
- Posts: 708
- Joined: Fri Oct 28, 2005 9:53 am
- Location: Houston ∙ Chicago ∙ Los Angeles ∙ Miami ∙ London ∙ Hong Kong
- Contact:
Re: JSON decode request
Re: JSON decode request
Saludos,
Carlos Gallego
*** FWH-26.03, xHarbour 1.3.1 Build 20241008, Borland C++7.70, PellesC, ADS 11.1 - MSVC 2022 ***
- cdmmaui
- Posts: 708
- Joined: Fri Oct 28, 2005 9:53 am
- Location: Houston ∙ Chicago ∙ Los Angeles ∙ Miami ∙ London ∙ Hong Kong
- Contact:
Re: JSON decode request
Thank you. I was receiving data from web service and that is why it did not work. I saved to file then used MEMOREAD and it worked. Thanks!
Re: JSON decode request
You're welcomeThank you. I was receiving data from web service and that is why it did not work. I saved to file then used MEMOREAD and it worked. Thanks!
Saludos,
Carlos Gallego
*** FWH-26.03, xHarbour 1.3.1 Build 20241008, Borland C++7.70, PellesC, ADS 11.1 - MSVC 2022 ***
- cdmmaui
- Posts: 708
- Joined: Fri Oct 28, 2005 9:53 am
- Location: Houston ∙ Chicago ∙ Los Angeles ∙ Miami ∙ London ∙ Hong Kong
- Contact:
Re: JSON decode request
I was curious if you could help with another JSON as I am getting array error when trying to process message. Also, is there a way to contact you directly? I tried to send message via your website, but got an error.
{
"FindRemRsp": {
"Header": [
{
"Remision": "X91881",
"BundleBarcode": "0",
"MaterialCode": "CNP1104410000V0091",
"MaterialDescription": "7 5/8\"29,70#R3SP-SM-P110-ICY-W441",
"EndType": "2470",
"EndTypeDesc": "TSH WEDGE 441",
"PurchasingDocument": "",
"PurchasingItem": "0",
"SalesOrder": "0037089768",
"SalesOrderItem": "2480",
"CV": "326939",
"Partida": "01",
"OriginCode": "FAT2",
"OriginDescription": "FABRICA DE TUBOS 2",
"DestinationCode": "APRO",
"DestinationDescription": "ALMACEN DE PRODTO. TERM",
"RemissionSinceDate": "20250903",
"RemissionSinceTime": "07285261",
"FlatTruck": "PLAN06",
"TotalPieces": "55",
"TotalMeters": "743.240",
"TotalKilograms": "32707.000",
"Detail": [
{
"Remision": "X91881",
"BundleBarcode": "0",
"Bundle": "000014801410",
"WipBatch": "46319",
"MillId": "TAM",
"MillOrder": "000450563",
"MillOrderItem": "1",
"TubeBarcode": "690252460374",
"PipeNumber": "20070",
"HeatNumber": "65990",
"Pieces": "1",
"Meters": "13.660",
"Kilograms": "601.000"
},
{
"Remision": "X91881",
"BundleBarcode": "0",
"Bundle": "000014801410",
"WipBatch": "46319",
"MillId": "TAM",
"MillOrder": "000450563",
"MillOrderItem": "1",
"TubeBarcode": "190252460375",
"PipeNumber": "20057",
"HeatNumber": "65990",
"Pieces": "1",
"Meters": "13.250",
"Kilograms": "589.000"
},
{
"Remision": "X91881",
"BundleBarcode": "0",
"Bundle": "000014801410",
"WipBatch": "46319",
"MillId": "TAM",
"MillOrder": "000450563",
"MillOrderItem": "1",
"TubeBarcode": "790252460376",
"PipeNumber": "20065",
"HeatNumber": "65990",
"Pieces": "1",
"Meters": "13.420",
"Kilograms": "594.000"
},
{
"Remision": "X91881",
"BundleBarcode": "0",
"Bundle": "000014801410",
"WipBatch": "46319",
"MillId": "TAM",
"MillOrder": "000450563",
"MillOrderItem": "1",
"TubeBarcode": "990252460377",
"PipeNumber": "20068",
"HeatNumber": "65990",
"Pieces": "1",
"Meters": "13.340",
"Kilograms": "590.000"
},
{
"Remision": "X91881",
"BundleBarcode": "0",
"Bundle": "000014801410",
"WipBatch": "46319",
"MillId": "TAM",
"MillOrder": "000450563",
"MillOrderItem": "1",
"TubeBarcode": "090252460378",
"PipeNumber": "20095",
"HeatNumber": "65990",
"Pieces": "1",
"Meters": "13.100",
"Kilograms": "575.000"
},
{
"Remision": "X91881",
"BundleBarcode": "0",
"Bundle": "000014801410",
"WipBatch": "46319",
"MillId": "TAM",
"MillOrder": "000450563",
"MillOrderItem": "1",
"TubeBarcode": "890252460379",
"PipeNumber": "20050",
"HeatNumber": "65990",
"Pieces": "1",
"Meters": "13.320",
"Kilograms": "592.000"
},
{
"Remision": "X91881",
"BundleBarcode": "0",
"Bundle": "000014801410",
"WipBatch": "46319",
"MillId": "TAM",
"MillOrder": "000450563",
"MillOrderItem": "1",
"TubeBarcode": "890252460380",
"PipeNumber": "20056",
"HeatNumber": "65990",
"Pieces": "1",
"Meters": "13.660",
"Kilograms": "606.000"
},
{
"Remision": "X91881",
"BundleBarcode": "0",
"Bundle": "000014801410",
"WipBatch": "46319",
"MillId": "TAM",
"MillOrder": "000450563",
"MillOrderItem": "1",
"TubeBarcode": "290252460381",
"PipeNumber": "20049",
"HeatNumber": "65990",
"Pieces": "1",
"Meters": "13.440",
"Kilograms": "595.000"
},
{
"Remision": "X91881",
"BundleBarcode": "0",
"Bundle": "000014801410",
"WipBatch": "46319",
"MillId": "TAM",
"MillOrder": "000450563",
"MillOrderItem": "1",
"TubeBarcode": "090252460382",
"PipeNumber": "20058",
"HeatNumber": "65990",
"Pieces": "1",
"Meters": "13.410",
"Kilograms": "595.000"
},
{
"Remision": "X91881",
"BundleBarcode": "0",
"Bundle": "000014801410",
"WipBatch": "46319",
"MillId": "TAM",
"MillOrder": "000450563",
"MillOrderItem": "1",
"TubeBarcode": "190252460383",
"PipeNumber": "20067",
"HeatNumber": "65990",
"Pieces": "1",
"Meters": "13.270",
"Kilograms": "591.000"
},
{
"Remision": "X91881",
"BundleBarcode": "0",
"Bundle": "000014801410",
"WipBatch": "46319",
"MillId": "TAM",
"MillOrder": "000450563",
"MillOrderItem": "1",
"TubeBarcode": "990252460384",
"PipeNumber": "20064",
"HeatNumber": "65990",
"Pieces": "1",
"Meters": "13.190",
"Kilograms": "587.000"
},
{
"Remision": "X91881",
"BundleBarcode": "0",
"Bundle": "000014801410",
"WipBatch": "46319",
"MillId": "TAM",
"MillOrder": "000450563",
"MillOrderItem": "1",
"TubeBarcode": "490252460385",
"PipeNumber": "20060",
"HeatNumber": "65990",
"Pieces": "1",
"Meters": "13.290",
"Kilograms": "591.000"
},
{
"Remision": "X91881",
"BundleBarcode": "0",
"Bundle": "000014801410",
"WipBatch": "46319",
"MillId": "TAM",
"MillOrder": "000450563",
"MillOrderItem": "1",
"TubeBarcode": "590252460386",
"PipeNumber": "20062",
"HeatNumber": "65990",
"Pieces": "1",
"Meters": "13.470",
"Kilograms": "598.000"
},
{
"Remision": "X91881",
"BundleBarcode": "0",
"Bundle": "000014801410",
"WipBatch": "46319",
"MillId": "TAM",
"MillOrder": "000450563",
"MillOrderItem": "1",
"TubeBarcode": "790252460387",
"PipeNumber": "20055",
"HeatNumber": "65990",
"Pieces": "1",
"Meters": "13.570",
"Kilograms": "601.000"
},
{
"Remision": "X91881",
"BundleBarcode": "0",
"Bundle": "000014801410",
"WipBatch": "46319",
"MillId": "TAM",
"MillOrder": "000450563",
"MillOrderItem": "1",
"TubeBarcode": "390252460388",
"PipeNumber": "20072",
"HeatNumber": "65990",
"Pieces": "1",
"Meters": "13.660",
"Kilograms": "601.000"
},
{
"Remision": "X91881",
"BundleBarcode": "0",
"Bundle": "000014801410",
"WipBatch": "46319",
"MillId": "TAM",
"MillOrder": "000450563",
"MillOrderItem": "1",
"TubeBarcode": "690252460389",
"PipeNumber": "20061",
"HeatNumber": "65990",
"Pieces": "1",
"Meters": "12.690",
"Kilograms": "562.000"
},
{
"Remision": "X91881",
"BundleBarcode": "0",
"Bundle": "000014801410",
"WipBatch": "46319",
"MillId": "TAM",
"MillOrder": "000450563",
"MillOrderItem": "1",
"TubeBarcode": "690252460390",
"PipeNumber": "20048",
"HeatNumber": "65990",
"Pieces": "1",
"Meters": "13.430",
"Kilograms": "596.000"
},
{
"Remision": "X91881",
"BundleBarcode": "0",
"Bundle": "000014801410",
"WipBatch": "46319",
"MillId": "TAM",
"MillOrder": "000450563",
"MillOrderItem": "1",
"TubeBarcode": "090252460391",
"PipeNumber": "20053",
"HeatNumber": "65990",
"Pieces": "1",
"Meters": "13.510",
"Kilograms": "602.000"
},
{
"Remision": "X91881",
"BundleBarcode": "0",
"Bundle": "000014801410",
"WipBatch": "46319",
"MillId": "TAM",
"MillOrder": "000450563",
"MillOrderItem": "1",
"TubeBarcode": "390252460392",
"PipeNumber": "20063",
"HeatNumber": "65990",
"Pieces": "1",
"Meters": "13.390",
"Kilograms": "593.000"
},
{
"Remision": "X91881",
"BundleBarcode": "0",
"Bundle": "000014801410",
"WipBatch": "46319",
"MillId": "TAM",
"MillOrder": "000450563",
"MillOrderItem": "1",
"TubeBarcode": "490252460393",
"PipeNumber": "20051",
"HeatNumber": "65990",
"Pieces": "1",
"Meters": "13.530",
"Kilograms": "602.000"
},
{
"Remision": "X91881",
"BundleBarcode": "0",
"Bundle": "000014801410",
"WipBatch": "46319",
"MillId": "TAM",
"MillOrder": "000450563",
"MillOrderItem": "1",
"TubeBarcode": "790252460394",
"PipeNumber": "20054",
"HeatNumber": "65990",
"Pieces": "1",
"Meters": "13.330",
"Kilograms": "591.000"
},
{
"Remision": "X91881",
"BundleBarcode": "0",
"Bundle": "000014801410",
"WipBatch": "46319",
"MillId": "TAM",
"MillOrder": "000450563",
"MillOrderItem": "1",
"TubeBarcode": "290252460395",
"PipeNumber": "20052",
"HeatNumber": "65990",
"Pieces": "1",
"Meters": "13.280",
"Kilograms": "587.000"
},
{
"Remision": "X91881",
"BundleBarcode": "0",
"Bundle": "000014801410",
"WipBatch": "46319",
"MillId": "TAM",
"MillOrder": "000450563",
"MillOrderItem": "1",
"TubeBarcode": "890252460396",
"PipeNumber": "20047",
"HeatNumber": "65990",
"Pieces": "1",
"Meters": "13.200",
"Kilograms": "585.000"
},
{
"Remision": "X91881",
"BundleBarcode": "0",
"Bundle": "000014801410",
"WipBatch": "46319",
"MillId": "TAM",
"MillOrder": "000450563",
"MillOrderItem": "1",
"TubeBarcode": "590252460397",
"PipeNumber": "20045",
"HeatNumber": "65990",
"Pieces": "1",
"Meters": "13.660",
"Kilograms": "599.000"
},
{
"Remision": "X91881",
"BundleBarcode": "0",
"Bundle": "000014801410",
"WipBatch": "46319",
"MillId": "TAM",
"MillOrder": "000450563",
"MillOrderItem": "1",
"TubeBarcode": "190252460398",
"PipeNumber": "20046",
"HeatNumber": "65990",
"Pieces": "1",
"Meters": "13.300",
"Kilograms": "585.000"
},
{
"Remision": "X91881",
"BundleBarcode": "0",
"Bundle": "000014801410",
"WipBatch": "46319",
"MillId": "TAM",
"MillOrder": "000450563",
"MillOrderItem": "1",
"TubeBarcode": "990252460399",
"PipeNumber": "20066",
"HeatNumber": "65990",
"Pieces": "1",
"Meters": "13.430",
"Kilograms": "596.000"
},
{
"Remision": "X91881",
"BundleBarcode": "0",
"Bundle": "000014801410",
"WipBatch": "46319",
"MillId": "TAM",
"MillOrder": "000450563",
"MillOrderItem": "1",
"TubeBarcode": "890252460400",
"PipeNumber": "20027",
"HeatNumber": "65990",
"Pieces": "1",
"Meters": "13.670",
"Kilograms": "599.000"
},
{
"Remision": "X91881",
"BundleBarcode": "0",
"Bundle": "000014801410",
"WipBatch": "46319",
"MillId": "TAM",
"MillOrder": "000450563",
"MillOrderItem": "1",
"TubeBarcode": "290252460401",
"PipeNumber": "20033",
"HeatNumber": "65990",
"Pieces": "1",
"Meters": "13.650",
"Kilograms": "597.000"
},
{
"Remision": "X91881",
"BundleBarcode": "0",
"Bundle": "000014801410",
"WipBatch": "46319",
"MillId": "TAM",
"MillOrder": "000450563",
"MillOrderItem": "1",
"TubeBarcode": "090252460402",
"PipeNumber": "20026",
"HeatNumber": "65990",
"Pieces": "1",
"Meters": "13.650",
"Kilograms": "598.000"
},
{
"Remision": "X91881",
"BundleBarcode": "0",
"Bundle": "000014801410",
"WipBatch": "46319",
"MillId": "TAM",
"MillOrder": "000450563",
"MillOrderItem": "1",
"TubeBarcode": "190252460403",
"PipeNumber": "20036",
"HeatNumber": "65990",
"Pieces": "1",
"Meters": "13.650",
"Kilograms": "597.000"
},
{
"Remision": "X91881",
"BundleBarcode": "0",
"Bundle": "000014801410",
"WipBatch": "46319",
"MillId": "TAM",
"MillOrder": "000450563",
"MillOrderItem": "1",
"TubeBarcode": "990252460404",
"PipeNumber": "20031",
"HeatNumber": "65990",
"Pieces": "1",
"Meters": "13.660",
"Kilograms": "599.000"
},
{
"Remision": "X91881",
"BundleBarcode": "0",
"Bundle": "000014801410",
"WipBatch": "46319",
"MillId": "TAM",
"MillOrder": "000450563",
"MillOrderItem": "1",
"TubeBarcode": "490252460405",
"PipeNumber": "20025",
"HeatNumber": "65990",
"Pieces": "1",
"Meters": "13.650",
"Kilograms": "596.000"
},
{
"Remision": "X91881",
"BundleBarcode": "0",
"Bundle": "000014801410",
"WipBatch": "46319",
"MillId": "TAM",
"MillOrder": "000450563",
"MillOrderItem": "1",
"TubeBarcode": "590252460406",
"PipeNumber": "20035",
"HeatNumber": "65990",
"Pieces": "1",
"Meters": "13.650",
"Kilograms": "592.000"
},
{
"Remision": "X91881",
"BundleBarcode": "0",
"Bundle": "000014801410",
"WipBatch": "46319",
"MillId": "TAM",
"MillOrder": "000450563",
"MillOrderItem": "1",
"TubeBarcode": "790252460407",
"PipeNumber": "20030",
"HeatNumber": "65990",
"Pieces": "1",
"Meters": "13.650",
"Kilograms": "596.000"
},
{
"Remision": "X91881",
"BundleBarcode": "0",
"Bundle": "000014801410",
"WipBatch": "46319",
"MillId": "TAM",
"MillOrder": "000450563",
"MillOrderItem": "1",
"TubeBarcode": "390252460408",
"PipeNumber": "20021",
"HeatNumber": "65990",
"Pieces": "1",
"Meters": "13.330",
"Kilograms": "584.000"
},
{
"Remision": "X91881",
"BundleBarcode": "0",
"Bundle": "000014801410",
"WipBatch": "46319",
"MillId": "TAM",
"MillOrder": "000450563",
"MillOrderItem": "1",
"TubeBarcode": "690252460409",
"PipeNumber": "20041",
"HeatNumber": "65990",
"Pieces": "1",
"Meters": "13.660",
"Kilograms": "595.000"
},
{
"Remision": "X91881",
"BundleBarcode": "0",
"Bundle": "000014801410",
"WipBatch": "46319",
"MillId": "TAM",
"MillOrder": "000450563",
"MillOrderItem": "1",
"TubeBarcode": "690252460410",
"PipeNumber": "20029",
"HeatNumber": "65990",
"Pieces": "1",
"Meters": "13.660",
"Kilograms": "599.000"
},
{
"Remision": "X91881",
"BundleBarcode": "0",
"Bundle": "000014801410",
"WipBatch": "46319",
"MillId": "TAM",
"MillOrder": "000450563",
"MillOrderItem": "1",
"TubeBarcode": "090252460411",
"PipeNumber": "20044",
"HeatNumber": "65990",
"Pieces": "1",
"Meters": "13.650",
"Kilograms": "596.000"
},
{
"Remision": "X91881",
"BundleBarcode": "0",
"Bundle": "000014801410",
"WipBatch": "46319",
"MillId": "TAM",
"MillOrder": "000450563",
"MillOrderItem": "1",
"TubeBarcode": "390252460412",
"PipeNumber": "20039",
"HeatNumber": "65990",
"Pieces": "1",
"Meters": "13.640",
"Kilograms": "595.000"
},
{
"Remision": "X91881",
"BundleBarcode": "0",
"Bundle": "000014801410",
"WipBatch": "46319",
"MillId": "TAM",
"MillOrder": "000450563",
"MillOrderItem": "1",
"TubeBarcode": "490252460413",
"PipeNumber": "20043",
"HeatNumber": "65990",
"Pieces": "1",
"Meters": "13.650",
"Kilograms": "599.000"
},
{
"Remision": "X91881",
"BundleBarcode": "0",
"Bundle": "000014801410",
"WipBatch": "46319",
"MillId": "TAM",
"MillOrder": "000450563",
"MillOrderItem": "1",
"TubeBarcode": "790252460414",
"PipeNumber": "20024",
"HeatNumber": "65990",
"Pieces": "1",
"Meters": "13.650",
"Kilograms": "598.000"
},
{
"Remision": "X91881",
"BundleBarcode": "0",
"Bundle": "000014801410",
"WipBatch": "46319",
"MillId": "TAM",
"MillOrder": "000450563",
"MillOrderItem": "1",
"TubeBarcode": "290252460415",
"PipeNumber": "20042",
"HeatNumber": "65990",
"Pieces": "1",
"Meters": "13.650",
"Kilograms": "600.000"
},
{
"Remision": "X91881",
"BundleBarcode": "0",
"Bundle": "000014801410",
"WipBatch": "46319",
"MillId": "TAM",
"MillOrder": "000450563",
"MillOrderItem": "1",
"TubeBarcode": "890252460416",
"PipeNumber": "20038",
"HeatNumber": "65990",
"Pieces": "1",
"Meters": "13.650",
"Kilograms": "604.000"
},
{
"Remision": "X91881",
"BundleBarcode": "0",
"Bundle": "000014801410",
"WipBatch": "46319",
"MillId": "TAM",
"MillOrder": "000450563",
"MillOrderItem": "1",
"TubeBarcode": "590252460417",
"PipeNumber": "20028",
"HeatNumber": "65990",
"Pieces": "1",
"Meters": "13.650",
"Kilograms": "591.000"
},
{
"Remision": "X91881",
"BundleBarcode": "0",
"Bundle": "000014801410",
"WipBatch": "46319",
"MillId": "TAM",
"MillOrder": "000450563",
"MillOrderItem": "1",
"TubeBarcode": "190252460418",
"PipeNumber": "20037",
"HeatNumber": "65990",
"Pieces": "1",
"Meters": "13.650",
"Kilograms": "619.000"
},
{
"Remision": "X91881",
"BundleBarcode": "0",
"Bundle": "000014801410",
"WipBatch": "46319",
"MillId": "TAM",
"MillOrder": "000450563",
"MillOrderItem": "1",
"TubeBarcode": "990252460419",
"PipeNumber": "20034",
"HeatNumber": "65990",
"Pieces": "1",
"Meters": "13.650",
"Kilograms": "595.000"
},
{
"Remision": "X91881",
"BundleBarcode": "0",
"Bundle": "000014801410",
"WipBatch": "46319",
"MillId": "TAM",
"MillOrder": "000450563",
"MillOrderItem": "1",
"TubeBarcode": "190252460420",
"PipeNumber": "20022",
"HeatNumber": "65990",
"Pieces": "1",
"Meters": "13.660",
"Kilograms": "597.000"
},
{
"Remision": "X91881",
"BundleBarcode": "0",
"Bundle": "000014801410",
"WipBatch": "46319",
"MillId": "TAM",
"MillOrder": "000450563",
"MillOrderItem": "1",
"TubeBarcode": "790252460421",
"PipeNumber": "20032",
"HeatNumber": "65990",
"Pieces": "1",
"Meters": "13.480",
"Kilograms": "590.000"
},
{
"Remision": "X91881",
"BundleBarcode": "0",
"Bundle": "000014801410",
"WipBatch": "46319",
"MillId": "TAM",
"MillOrder": "000450563",
"MillOrderItem": "1",
"TubeBarcode": "990252460422",
"PipeNumber": "20012",
"HeatNumber": "65990",
"Pieces": "1",
"Meters": "13.670",
"Kilograms": "601.000"
},
{
"Remision": "X91881",
"BundleBarcode": "0",
"Bundle": "000014801410",
"WipBatch": "46319",
"MillId": "TAM",
"MillOrder": "000450563",
"MillOrderItem": "1",
"TubeBarcode": "890252460423",
"PipeNumber": "20013",
"HeatNumber": "65990",
"Pieces": "1",
"Meters": "13.660",
"Kilograms": "599.000"
},
{
"Remision": "X91881",
"BundleBarcode": "0",
"Bundle": "000014801410",
"WipBatch": "46319",
"MillId": "TAM",
"MillOrder": "000450563",
"MillOrderItem": "1",
"TubeBarcode": "090252460424",
"PipeNumber": "20017",
"HeatNumber": "65990",
"Pieces": "1",
"Meters": "13.640",
"Kilograms": "583.000"
},
{
"Remision": "X91881",
"BundleBarcode": "0",
"Bundle": "000014801410",
"WipBatch": "46319",
"MillId": "TAM",
"MillOrder": "000450563",
"MillOrderItem": "1",
"TubeBarcode": "590252460425",
"PipeNumber": "20016",
"HeatNumber": "65990",
"Pieces": "1",
"Meters": "13.650",
"Kilograms": "595.000"
},
{
"Remision": "X91881",
"BundleBarcode": "0",
"Bundle": "000014801410",
"WipBatch": "46319",
"MillId": "TAM",
"MillOrder": "000450563",
"MillOrderItem": "1",
"TubeBarcode": "490252460426",
"PipeNumber": "20014",
"HeatNumber": "65990",
"Pieces": "1",
"Meters": "13.660",
"Kilograms": "600.000"
},
{
"Remision": "X91881",
"BundleBarcode": "0",
"Bundle": "000014801410",
"WipBatch": "46319",
"MillId": "TAM",
"MillOrder": "000450563",
"MillOrderItem": "1",
"TubeBarcode": "290252460427",
"PipeNumber": "20015",
"HeatNumber": "65990",
"Pieces": "1",
"Meters": "13.660",
"Kilograms": "594.000"
},
{
"Remision": "X91881",
"BundleBarcode": "0",
"Bundle": "000014801410",
"WipBatch": "46319",
"MillId": "TAM",
"MillOrder": "000450563",
"MillOrderItem": "1",
"TubeBarcode": "690252460428",
"PipeNumber": "20009",
"HeatNumber": "65990",
"Pieces": "1",
"Meters": "13.640",
"Kilograms": "595.000"
}
]
}
]
},
"FindRemLog": {
"ProcessingResultCode": "1",
"MaximumLogItemSeverityCode": "1",
"LogItem": {
"ErrorCode": "0",
"ErrorDescription": "Consulta realizada exitosamente: Id.Remito",
"SeverityCode": "1"
}
}
}
Re: JSON decode request
Copy your new data in "_Data3.json", and compile this new sample, it´s working fine.
Note that "_Data1.json" and "_Data3.json" share the same structure, whereas "_Data2.json" has some differences.
Code: Select all | Expand
#include "FiveWin.ch"
Function Inicio()
LOCAL hJSon1 := MemoRead("_Data1.json")
LOCAL hJSon2 := MemoRead("_Data2.json")
LOCAL hJSon3 := MemoRead("_Data3.json")
hb_jsondecode( hJSon1, @hJSon1 )
//xBrowse(hJSon1, "hJSon1")
aData01 := hJSon1["FindRemRsp"]["Header"][1]["Detail"]
xBrowse(aData01, "aData01")
hb_jsondecode( hJSon2, @hJSon2 )
//xBrowse(hJSon2, "hJSon2")
aData02 := hJSon2["FindRFIDRsp"]["Header"]
xBrowse(aData02, "aData02")
hb_jsondecode( hJSon3, @hJSon3 )
//xBrowse(hJSon3, "hJSon3")
aData03 := hJSon3["FindRemRsp"]["Header"][1]["Detail"]
xBrowse(aData03, "aData03")
Return nilRegards,
Saludos,
Carlos Gallego
*** FWH-26.03, xHarbour 1.3.1 Build 20241008, Borland C++7.70, PellesC, ADS 11.1 - MSVC 2022 ***
- cdmmaui
- Posts: 708
- Joined: Fri Oct 28, 2005 9:53 am
- Location: Houston ∙ Chicago ∙ Los Angeles ∙ Miami ∙ London ∙ Hong Kong
- Contact:
Re: JSON decode request
IF hb_HHasKey( hJSon1, "Header" ) is returning FALSE for the data below, can someone tell me what I am doing wrong?
{
"FindRemRsp": {
"Header": [
{
"Remision": "X93709",
"BundleBarcode": "0",
"MaterialCode": "TNT95BLUE0000C0005",
"MaterialDescription": "3 1/2\" 9.20#R2T-SM-T95-TSH BLUE",
"EndType": "709",
"EndTypeDesc": "TSH BLUE",
"PurchasingDocument": "",
"PurchasingItem": "0",
"SalesOrder": "0031411615",
"SalesOrderItem": "50",
"CV": "326609",
"Partida": "12",
"OriginCode": "FAT3",
"OriginDescription": "FABRICA DE TUBOS 3",
"DestinationCode": "APRO",
"DestinationDescription": "ALMACEN DE PRODTO. TERM",
"RemissionSinceDate": "20250908",
"RemissionSinceTime": "10313483",
"FlatTruck": "PLAN40",
"TotalPieces": "240",
"TotalMeters": "2318.560",
"TotalKilograms": "30588.000",
"Detail": [
{
"Remision": "X93709",
"BundleBarcode": "0",
"Bundle": "000002199814",
"WipBatch": "25638",
"MillId": "TAM",
"MillOrder": "000450634",
"MillOrderItem": "1",
"TubeBarcode": "192252511273",
"PipeNumber": "80093",
"HeatNumber": "66377",
"Pieces": "1",
"Meters": "9.680",
"Kilograms": "128.000"
},
{
"Remision": "X93709",
"BundleBarcode": "0",
"Bundle": "000037719811",
"WipBatch": "25639",
"MillId": "TAM",
"MillOrder": "000450634",
"MillOrderItem": "1",
"TubeBarcode": "492252511449",
"PipeNumber": "81086",
"HeatNumber": "66377",
"Pieces": "1",
"Meters": "9.670",
"Kilograms": "128.000"
},
{
"Remision": "X93709",
"BundleBarcode": "0",
"Bundle": "000066398211",
"WipBatch": "25640",
"MillId": "TAM",
"MillOrder": "000450634",
"MillOrderItem": "1",
"TubeBarcode": "892252511512",
"PipeNumber": "80150",
"HeatNumber": "66377",
"Pieces": "1",
"Meters": "9.660",
"Kilograms": "127.000"
}
]
}
]
},
"FindRemLog": {
"ProcessingResultCode": "1",
"MaximumLogItemSeverityCode": "1",
"LogItem": {
"ErrorCode": "0",
"ErrorDescription": "Consulta realizada exitosamente: Id.Remito",
"SeverityCode": "1"
}
}
}
Re: JSON decode request
Code: Select all | Expand
iF hb_HHasKey( hJSon1["FindRemRsp"], "Header" )Code: Select all | Expand
iF hb_HHasKey( hJSon1["FindRFIDRsp"], "Header" )Saludos,
Carlos Gallego
*** FWH-26.03, xHarbour 1.3.1 Build 20241008, Borland C++7.70, PellesC, ADS 11.1 - MSVC 2022 ***
- cdmmaui
- Posts: 708
- Joined: Fri Oct 28, 2005 9:53 am
- Location: Houston ∙ Chicago ∙ Los Angeles ∙ Miami ∙ London ∙ Hong Kong
- Contact:
-
JoséQuintas
- Posts: 104
- Joined: Tue Feb 09, 2021 4:20 pm
Re: JSON decode request
Parameters are json decoded and a var name
result is a txt showing direct access
Code: Select all | Expand
FUNCTION ShowJson( xHash, cTxtVariavel, cTxt, lPrimeiro )
LOCAL xItem
hb_Default( @cTxtVariavel, "Var" )
hb_Default( @cTxt, "" )
hb_Default( @lPrimeiro, .T. )
IF ValType( xHash ) $ "NCDL" .OR. xHash == NIL
cTxt += cTxtVariavel + " " + hb_ValToExp( xHash ) + hb_Eol()
ELSEIF ValType( xHash ) == "A"
FOR EACH xItem IN xHash
ShowJson( xItem, cTxtVariavel + "[ " + Ltrim( Str( xItem:__EnumIndex ) ) + " ]", @cTxt, .F. )
NEXT
ELSEIF ValType( xHash ) == "H"
FOR EACH xItem IN xHash
ShowJson( xItem, cTxtVariavel + '[ "' + hb_hKeyAt( xHash, xItem:__EnumIndex ) + '" ]', @cTxt, .F. )
NEXT
ELSE
cTxt += cTxtVariavel + "***** nao identificado ***" + hb_Eol()
ENDIF
IF lPrimeiro
hb_MemoWrit( "showjson.txt", cTxt )
RUN ( "cmd /c start showjson.txt" )
? "gravado showjson.txt"
Inkey(10)
ENDIF
RETURN NIL
Code: Select all | Expand
PROCEDURE Main
LOCAL xData
SetMode(33,100)
CLS
xData := hb_JsonDecode( MemoRead( "d:\temp\test.json" ) )
ShowJson( xData, "xData" )
RETURN
Code: Select all | Expand
{
"FindRemRsp": {
"Header": [
{
"Remision": "X93709",
"BundleBarcode": "0",
"MaterialCode": "TNT95BLUE0000C0005",
"MaterialDescription": "3 1/2\" 9.20#R2T-SM-T95-TSH BLUE",
"EndType": "709",
"EndTypeDesc": "TSH BLUE",
"PurchasingDocument": "",
"PurchasingItem": "0",
"SalesOrder": "0031411615",
"SalesOrderItem": "50",
"CV": "326609",
"Partida": "12",
"OriginCode": "FAT3",
"OriginDescription": "FABRICA DE TUBOS 3",
"DestinationCode": "APRO",
"DestinationDescription": "ALMACEN DE PRODTO. TERM",
"RemissionSinceDate": "20250908",
"RemissionSinceTime": "10313483",
"FlatTruck": "PLAN40",
"TotalPieces": "240",
"TotalMeters": "2318.560",
"TotalKilograms": "30588.000",
"Detail": [
{
"Remision": "X93709",
"BundleBarcode": "0",
"Bundle": "000002199814",
"WipBatch": "25638",
"MillId": "TAM",
"MillOrder": "000450634",
"MillOrderItem": "1",
"TubeBarcode": "192252511273",
"PipeNumber": "80093",
"HeatNumber": "66377",
"Pieces": "1",
"Meters": "9.680",
"Kilograms": "128.000"
},
{
"Remision": "X93709",
"BundleBarcode": "0",
"Bundle": "000037719811",
"WipBatch": "25639",
"MillId": "TAM",
"MillOrder": "000450634",
"MillOrderItem": "1",
"TubeBarcode": "492252511449",
"PipeNumber": "81086",
"HeatNumber": "66377",
"Pieces": "1",
"Meters": "9.670",
"Kilograms": "128.000"
},
{
"Remision": "X93709",
"BundleBarcode": "0",
"Bundle": "000066398211",
"WipBatch": "25640",
"MillId": "TAM",
"MillOrder": "000450634",
"MillOrderItem": "1",
"TubeBarcode": "892252511512",
"PipeNumber": "80150",
"HeatNumber": "66377",
"Pieces": "1",
"Meters": "9.660",
"Kilograms": "127.000"
}
]
}
]
},
"FindRemLog": {
"ProcessingResultCode": "1",
"MaximumLogItemSeverityCode": "1",
"LogItem": {
"ErrorCode": "0",
"ErrorDescription": "Consulta realizada exitosamente: Id.Remito",
"SeverityCode": "1"
}
}
}
Code: Select all | Expand
xData[ "FindRemRsp" ][ "Header" ][ 1 ][ "Remision" ] "X93709"
xData[ "FindRemRsp" ][ "Header" ][ 1 ][ "BundleBarcode" ] "0"
xData[ "FindRemRsp" ][ "Header" ][ 1 ][ "MaterialCode" ] "TNT95BLUE0000C0005"
xData[ "FindRemRsp" ][ "Header" ][ 1 ][ "MaterialDescription" ] '3 1/2" 9.20#R2T-SM-T95-TSH BLUE'
xData[ "FindRemRsp" ][ "Header" ][ 1 ][ "EndType" ] "709"
xData[ "FindRemRsp" ][ "Header" ][ 1 ][ "EndTypeDesc" ] "TSH BLUE"
xData[ "FindRemRsp" ][ "Header" ][ 1 ][ "PurchasingDocument" ] ""
xData[ "FindRemRsp" ][ "Header" ][ 1 ][ "PurchasingItem" ] "0"
xData[ "FindRemRsp" ][ "Header" ][ 1 ][ "SalesOrder" ] "0031411615"
xData[ "FindRemRsp" ][ "Header" ][ 1 ][ "SalesOrderItem" ] "50"
xData[ "FindRemRsp" ][ "Header" ][ 1 ][ "CV" ] "326609"
xData[ "FindRemRsp" ][ "Header" ][ 1 ][ "Partida" ] "12"
xData[ "FindRemRsp" ][ "Header" ][ 1 ][ "OriginCode" ] "FAT3"
xData[ "FindRemRsp" ][ "Header" ][ 1 ][ "OriginDescription" ] "FABRICA DE TUBOS 3"
xData[ "FindRemRsp" ][ "Header" ][ 1 ][ "DestinationCode" ] "APRO"
xData[ "FindRemRsp" ][ "Header" ][ 1 ][ "DestinationDescription" ] "ALMACEN DE PRODTO. TERM"
xData[ "FindRemRsp" ][ "Header" ][ 1 ][ "RemissionSinceDate" ] "20250908"
xData[ "FindRemRsp" ][ "Header" ][ 1 ][ "RemissionSinceTime" ] "10313483"
xData[ "FindRemRsp" ][ "Header" ][ 1 ][ "FlatTruck" ] "PLAN40"
xData[ "FindRemRsp" ][ "Header" ][ 1 ][ "TotalPieces" ] "240"
xData[ "FindRemRsp" ][ "Header" ][ 1 ][ "TotalMeters" ] "2318.560"
xData[ "FindRemRsp" ][ "Header" ][ 1 ][ "TotalKilograms" ] "30588.000"
xData[ "FindRemRsp" ][ "Header" ][ 1 ][ "Detail" ][ 1 ][ "Remision" ] "X93709"
xData[ "FindRemRsp" ][ "Header" ][ 1 ][ "Detail" ][ 1 ][ "BundleBarcode" ] "0"
xData[ "FindRemRsp" ][ "Header" ][ 1 ][ "Detail" ][ 1 ][ "Bundle" ] "000002199814"
xData[ "FindRemRsp" ][ "Header" ][ 1 ][ "Detail" ][ 1 ][ "WipBatch" ] "25638"
xData[ "FindRemRsp" ][ "Header" ][ 1 ][ "Detail" ][ 1 ][ "MillId" ] "TAM"
xData[ "FindRemRsp" ][ "Header" ][ 1 ][ "Detail" ][ 1 ][ "MillOrder" ] "000450634"
xData[ "FindRemRsp" ][ "Header" ][ 1 ][ "Detail" ][ 1 ][ "MillOrderItem" ] "1"
xData[ "FindRemRsp" ][ "Header" ][ 1 ][ "Detail" ][ 1 ][ "TubeBarcode" ] "192252511273"
xData[ "FindRemRsp" ][ "Header" ][ 1 ][ "Detail" ][ 1 ][ "PipeNumber" ] "80093"
xData[ "FindRemRsp" ][ "Header" ][ 1 ][ "Detail" ][ 1 ][ "HeatNumber" ] "66377"
xData[ "FindRemRsp" ][ "Header" ][ 1 ][ "Detail" ][ 1 ][ "Pieces" ] "1"
xData[ "FindRemRsp" ][ "Header" ][ 1 ][ "Detail" ][ 1 ][ "Meters" ] "9.680"
xData[ "FindRemRsp" ][ "Header" ][ 1 ][ "Detail" ][ 1 ][ "Kilograms" ] "128.000"
xData[ "FindRemRsp" ][ "Header" ][ 1 ][ "Detail" ][ 2 ][ "Remision" ] "X93709"
xData[ "FindRemRsp" ][ "Header" ][ 1 ][ "Detail" ][ 2 ][ "BundleBarcode" ] "0"
xData[ "FindRemRsp" ][ "Header" ][ 1 ][ "Detail" ][ 2 ][ "Bundle" ] "000037719811"
xData[ "FindRemRsp" ][ "Header" ][ 1 ][ "Detail" ][ 2 ][ "WipBatch" ] "25639"
xData[ "FindRemRsp" ][ "Header" ][ 1 ][ "Detail" ][ 2 ][ "MillId" ] "TAM"
xData[ "FindRemRsp" ][ "Header" ][ 1 ][ "Detail" ][ 2 ][ "MillOrder" ] "000450634"
xData[ "FindRemRsp" ][ "Header" ][ 1 ][ "Detail" ][ 2 ][ "MillOrderItem" ] "1"
xData[ "FindRemRsp" ][ "Header" ][ 1 ][ "Detail" ][ 2 ][ "TubeBarcode" ] "492252511449"
xData[ "FindRemRsp" ][ "Header" ][ 1 ][ "Detail" ][ 2 ][ "PipeNumber" ] "81086"
xData[ "FindRemRsp" ][ "Header" ][ 1 ][ "Detail" ][ 2 ][ "HeatNumber" ] "66377"
xData[ "FindRemRsp" ][ "Header" ][ 1 ][ "Detail" ][ 2 ][ "Pieces" ] "1"
xData[ "FindRemRsp" ][ "Header" ][ 1 ][ "Detail" ][ 2 ][ "Meters" ] "9.670"
xData[ "FindRemRsp" ][ "Header" ][ 1 ][ "Detail" ][ 2 ][ "Kilograms" ] "128.000"
xData[ "FindRemRsp" ][ "Header" ][ 1 ][ "Detail" ][ 3 ][ "Remision" ] "X93709"
xData[ "FindRemRsp" ][ "Header" ][ 1 ][ "Detail" ][ 3 ][ "BundleBarcode" ] "0"
xData[ "FindRemRsp" ][ "Header" ][ 1 ][ "Detail" ][ 3 ][ "Bundle" ] "000066398211"
xData[ "FindRemRsp" ][ "Header" ][ 1 ][ "Detail" ][ 3 ][ "WipBatch" ] "25640"
xData[ "FindRemRsp" ][ "Header" ][ 1 ][ "Detail" ][ 3 ][ "MillId" ] "TAM"
xData[ "FindRemRsp" ][ "Header" ][ 1 ][ "Detail" ][ 3 ][ "MillOrder" ] "000450634"
xData[ "FindRemRsp" ][ "Header" ][ 1 ][ "Detail" ][ 3 ][ "MillOrderItem" ] "1"
xData[ "FindRemRsp" ][ "Header" ][ 1 ][ "Detail" ][ 3 ][ "TubeBarcode" ] "892252511512"
xData[ "FindRemRsp" ][ "Header" ][ 1 ][ "Detail" ][ 3 ][ "PipeNumber" ] "80150"
xData[ "FindRemRsp" ][ "Header" ][ 1 ][ "Detail" ][ 3 ][ "HeatNumber" ] "66377"
xData[ "FindRemRsp" ][ "Header" ][ 1 ][ "Detail" ][ 3 ][ "Pieces" ] "1"
xData[ "FindRemRsp" ][ "Header" ][ 1 ][ "Detail" ][ 3 ][ "Meters" ] "9.660"
xData[ "FindRemRsp" ][ "Header" ][ 1 ][ "Detail" ][ 3 ][ "Kilograms" ] "127.000"
xData[ "FindRemLog" ][ "ProcessingResultCode" ] "1"
xData[ "FindRemLog" ][ "MaximumLogItemSeverityCode" ] "1"
xData[ "FindRemLog" ][ "LogItem" ][ "ErrorCode" ] "0"
xData[ "FindRemLog" ][ "LogItem" ][ "ErrorDescription" ] "Consulta realizada exitosamente: Id.Remito"
xData[ "FindRemLog" ][ "LogItem" ][ "SeverityCode" ] "1"
José M. C. Quintas Brazil
gtwvg, fivewin 25.12, hwgui, mingw 15.2 (32 bits)
- cdmmaui
- Posts: 708
- Joined: Fri Oct 28, 2005 9:53 am
- Location: Houston ∙ Chicago ∙ Los Angeles ∙ Miami ∙ London ∙ Hong Kong
- Contact:
Re: JSON decode request
How do check if there is hash key for the following:
aData02 := hJSon1["FindRFIDRsp"]["Header"][1]["Detail"]
I am getting an error now for the following code:
IF (! EMPTY(hJson1))
IF hb_HHasKey( hJSon1["FindRemRsp"], "Header" ) <------------------------------------ HERE
aData01 := hJSon1["FindRemRsp"]["Header"][1]
aData02 := hJSon1["FindRemRsp"]["Header"][1]["Detail"]
ENDIF
ENDIF
Application
===========
Path and name: C:\web\tenaris\tenaris.exe (32 bits)
Size: 4,824,064 bytes
Compiler version: Harbour 3.2.0dev (r1801051438)
FiveWin version: FWH 22.03
C compiler version: Borland/Embarcadero C++ 7.0 (32-bit)
Windows version: 6.2, Build 9200
Time from start: 0 hours 0 mins 10 secs
Error occurred at: 09/11/2025, 09:33:26
Error description: Error BASE/1123 Argument error: HB_HHASKEY
Args:
[ 1] = U
[ 2] = C Header
Re: JSON decode request
JSON is a data format that stores information in a hierarchical structure of objects (key–value pairs) and arrays (lists of elements). To make the data easier to view, the nested structure can be transformed into a flat table form: in the PATH column you see the full key path to the value, in TYPE the data type (e.g. text, number, date, true/false), and in VALUE the actual content. This way all keys and values of a JSON—regardless of nesting depth—can be easily read, searched, and compared.
JSON is a format that stores data in nested structures. By representing it in a table with PATH, TYPE, and VALUE, all keys and values—regardless of depth—become clearly visible. This allows the content to be quickly read, searched, and compared.
JSON can be nested to any depth:
Objects in objects
Arrays in objects
Objects in arrays … and so on.
```json
{
"Header": [
{
"Remision": "X93709",
"Detail": [
{ "TubeBarcode": "192252511273", "Meters": "9.680" },
{ "TubeBarcode": "492252511449", "Meters": "9.670" }
]
}
]
}
```
If you read this with `hb_jsonDecode()`:
```harbour
LOCAL h
hb_jsonDecode( MemoRead( "sample.json" ), @h )
? ValType( h ) // "H" (Hash)
? ValType( h["Header"] ) // "A" (Array)
? ValType( h["Header"][1] ) // "H" (Hash)
? ValType( h["Header"][1]["Detail"] ) // "A"
? ValType( h["Header"][1]["Detail"][1] ) // "H"
```
Hash → Array → Hash → Array → Hash.
---
### JSON – Quick Overview
**JSON (JavaScript Object Notation)** is a lightweight format for representing structured data.
It essentially consists of two building blocks:
* **Objects**: in curly braces `{ ... }`, containing key–value pairs.
Example:
```json
{ "Remision": "X93709", "CV": 326609 }
```
* **Arrays (lists)**: in square brackets `[ ... ]`, containing multiple values or objects.
Example:
```json
[ { "PipeNumber": "80093" }, { "PipeNumber": "80150" } ]
```
These elements can be nested arbitrarily: objects contain arrays, arrays contain objects, and so on.
---
### Table Representation
To display JSON clearly, the nested structure can be transformed into a flat table form:
* **PATH**
Shows the full key path to the value.
Example:
`FindRemRsp.Header[1].Detail[3].TubeBarcode`
* **TYPE**
Specifies the data type, e.g.
`C = Character string, N = Number, D = Date, L = True/False, H = Object, A = Array`.
* **VALUE**
The actual content. For simple values it is shown directly, for more complex structures (objects, arrays) in compact JSON form.
---
### Advantages of this Representation
* All keys and values are visible at a glance—regardless of nesting depth.
* Paths clearly show where in the JSON a value is located.
* Values can be easily searched, sorted, and compared.
* Even complex responses from interfaces (e.g. REST APIs) can be quickly analyzed.
Code: Select all | Expand
/* JsonFlattenBrowse.prg – JSON rekursiv in 2D-Array für XBROWSE */
PROCEDURE Main()
LOCAL cJsonFile := "c:\fwh\samples\sample.json"
LOCAL xRoot, aRows := {}, aCols := { "PATH", "TYPE", "VALUE" }
cJson := ""
cJson := memoread(cJsonFile)
hb_jsonDecode( cJson, @xRoot )
// Rekursiv auflösen → aRows füllen
JsonFlattenToRows( xRoot, "", @aRows )
// Optional: sortieren nach PATH
ASort( aRows, , , {|a,b| a[1] < b[1] } )
// Anzeigen
XBROWSE( aRows )
InKey(0)
RETURN
/* Rekursiv: füllt aRows mit { cPath, cType, cValue } */
FUNCTION JsonFlattenToRows( x, cPath, aRows )
LOCAL i, v, cKey, cNextPath
DO CASE
CASE ValType( x ) == "H" // Hash/Object
FOR EACH v IN x
cKey := hb_HKeyAt( x, v:__EnumIndex )
cNextPath := IIF( Empty( cPath ), cKey, cPath + "." + cKey )
JsonFlattenToRows( v, cNextPath, @aRows )
NEXT
CASE ValType( x ) == "A" // Array
FOR i := 1 TO Len( x )
cNextPath := cPath + "[" + LTrim(Str(i)) + "]"
JsonFlattenToRows( x[i], cNextPath, @aRows )
NEXT
OTHERWISE // Skalar
AAdd( aRows, { cPath, ValType( x ), JF_ToString( x ) } )
ENDCASE
RETURN NIL
/* Werte hübsch in String wandeln (Skalare); Strukturen kompakt als JSON */
FUNCTION JF_ToString( v )
LOCAL t := ValType( v )
DO CASE
CASE t == "C" ; RETURN v
CASE t == "N" ; RETURN LTrim( Str( v ) )
CASE t == "D" ; RETURN DToC( v )
CASE t == "L" ; RETURN IIF( v, ".T.", ".F." )
CASE t == "U" ; RETURN ""
CASE t $ "HA" ; RETURN hb_jsonEncode( v ) // falls hier doch Struktur ankommt
OTHERWISE ; RETURN hb_ValToExp( v )
ENDCASE
