When fpreport mainly was developed for web, json should be fully supported with such structures and
I think it is and should be possible when ... for example:
After parsing the json the parts of the json could be transfered to dynamic BufDatasets or similar Objects.
so "MasterField1" : "MasterData 1",
"MasterField2" : "MasterData 2",
"MasterField3" : "MasterData 3",
"MasterField4" : "MasterData 4",
"MasterField5" : "MasterData 5",
should read into BufMaster with ID 1
"DetailField1.1" : "DetailData 1.1",
"DetailField1.2" : "DetailData 1.2",
"DetailField1.3" : "DetailData 1.3",
should read int BufDetail with ID1 and MasterID1
"SubDetailField1.1.1" : "SubDetailData 1.1.1",
"SubDetailField1.1.2" : "SubDetailData 1.1.2"
"SubDetailField1.2.1" : "SubDetailData 1.2.1",
"SubDetailField1.2.2" : "SubDetailData 1.2.2"
"SubDetailField1.3.1" : "SubDetailData 1.3.1",
"SubDetailField1.3.2" : "SubDetailData 1.3.2"
Should read into BufSub with ID1,2,3 and MasterID1 and DetailID1 ]
"DetailField2.1" : "DetailData 2.1",
"DetailField2.2" : "DetailData 2.2",
"DetailField2.3" : "DetailData 2.3",
should read into BufDetail with ID2 and MasterID1
"SubDetailField2.1.1" : "SubDetailData 2.1.1",
"SubDetailField2.1.2" : "SubDetailData 2.1.2"
"SubDetailField2.2.1" : "SubDetailData 2.2.1",
"SubDetailField2.2.2" : "SubDetailData 2.2.2"
"SubDetailField2.3.1" : "SubDetailData 2.3.1",
"SubDetailField2.3.2" : "SubDetailData 2.3.2"
Should read into BufSub with ID1,2,3 and MasterID1 and DetailID2
and so on ...
You have then (in this sample) three datasources BufMaster, BufDetail and BufSub