I have a json data source for a table element in my report. my json is- [{ "line_num": { "oldVal": "1", "newVal": "5" }, "product1": { "oldVal": "product1old", "newVal": "product1new" } }, { "line_num": { "oldVal": "4", "newVal": "7" }, "product2": { "oldVal": "product2old", "newVal": "product2new" } } ] .and that worked for my report, but then I needed to add the columns and table headers so I tried to add it as an own object in that json array above like this: [{ "tableH": "My Table Header" , "col1H": "Line No." , "col2H": "My Product" }, { "line_num": { "oldVal": "1", "newVal": "5" }, "product1": { "oldVal": "product1old", "newVal": "product1new" } }, { "line_num": { "oldVal": "4", "newVal": "7" }, "product2": { "oldVal": "product2old", "newVal": "product2new" } } ] but the problem is that when there is a lot of lines larger then the page's height, the headers on the second page were null which does make sense because the first obj (the headers obj) is unknown from the second line on, but I have no idea how to pass my headers from server in another way. the only way that worked is to add all of the headers to each obj in the array, but I can not do it because its wrong. I also tried to put the lines as an array like this: [{ "tableH": "My Table Header" , "col1H": "Line No." , "col2H": "My Product" , "Lines": [{ "line_num": { "oldVal": "1", "newVal": "5" }, "product1": { "oldVal": "product1old", "newVal": "product1new" } }, { "line_num": { "oldVal": "4", "newVal": "7" }, "product2": { "oldVal": "product2old", "newVal": "product2new" } } ] } ] but then the fields did not pass correctly, it passed for example for - lines.line_num.newVal , the field is : ["5","7"]. I really need help with that and I'll appreciate any helpful reply.