{ > "status": "OK", "statusCode": 200, "messages": null, > "data": [{ > "payment_type": "banktransfer", "fine": "0.200000", "quote_id": null, "order_id": null, "prepayment_id": null, "credited_invoices": [], > "interested_party_address_id": 279, "project_id": 875, "currency": "EUR", "owner_id": 3, "date": "2019-03-15", "deadline": "2019-03-20", > }, > > > { > "payment_type": "banktransfer", "fine": "0.30000", "quote_id": null, "order_id": null, "prepayment_id": null, "credited_invoices": [], > "interested_party_address_id": 79, "project_id": 85, "currency": "EUR", "owner_id": 3, "date": "2019-04-15", "deadline": "2019-43-20", > } > .... more same type elements > ] >}>
TEXT TO lcJson NOSHOW { "status": "OK", "statusCode": 200, "messages": null, "data": [{ "payment_type": "banktransfer", "fine": "0.200000", "quote_id": null, "order_id": null, "prepayment_id": null, "credited_invoices": [], "interested_party_address_id": 279, "project_id": 875, "currency": "EUR", "owner_id": 3, "date": "2019-03-15", "deadline": "2019-03-20", }, { "payment_type": "banktransfer", "fine": "0.30000", "quote_id": null, "order_id": null, "prepayment_id": null, "credited_invoices": [], "interested_party_address_id": 79, "project_id": 85, "currency": "EUR", "owner_id": 3, "date": "2019-04-15", "deadline": "2019-43-20", }] } ENDTEXT CLEAR lcBody = STREXTRACT(lcJson, "[{", "}]") lcHeader = ALLTRIM(CHRTRAN(STRTRAN(lcJson, lcBody, SPACE(0)), "{}[]" + CHR(13) + CHR(10), SPACE(0))) lcHeader = ALLTRIM(CHRTRAN(lcHeader, CHR(13) + CHR(10), SPACE(0))) lcBody = "{" + ALLTRIM(CHRTRAN(lcBody, CHR(13) + CHR(10), SPACE(0))) + "}" *? lcHeader *? "-----" *? lcBody *? "-----" * Show header fields lnCount = GETWORDCOUNT(lcHeader, ",") FOR lnI = 1 TO lnCount lcCombo = ALLTRIM(GETWORDNUM(lcHeader, lnI, ",")) lcField = ALLTRIM(CHRTRAN(GETWORDNUM(lcCombo, 1, ":"), CHR(34), SPACE(0))) lcData = ALLTRIM(CHRTRAN(GETWORDNUM(lcCombo, 2, ":"), CHR(34), SPACE(0))) IF lcField != "data" ? lcField + " ---> " + lcData ENDIF NEXT * Show body records ? "-----" FOR lnRecord = 1 TO 9999999 * Grab the whole record lcRecord = STREXTRACT(lcBody, "{", "}", lnRecord) IF EMPTY(lcRecord) EXIT ENDIF * Display each sub-field lnCount = GETWORDCOUNT(lcRecord, ",") FOR lnI = 1 TO lnCount lcCombo = ALLTRIM(GETWORDNUM(lcRecord, lnI, ",")) lcField = ALLTRIM(CHRTRAN(GETWORDNUM(lcCombo, 1, ":"), CHR(34), SPACE(0))) lcData = ALLTRIM(CHRTRAN(GETWORDNUM(lcCombo, 2, ":"), CHR(34), SPACE(0))) IF NOT EMPTY(lcField) ? lcField + " ---> " + lcData ENDIF NEXT ? "-----" NEXT