Need to Build Child table Custom Report

Dear Community,
I created one custom report based on JSON. here Sales order report are shown but unable to fetch child table details in that report.

In Sales Order i had Child table name SO Worksheet Data.

here i need to create child table report for three fields
Ex Works as ex_works its an Float type,
Supplier Cost as supplier_cost its an Float type,
Supplier Name as supplier_name in Data type.

here exwork and supplier cost will come as 0 even it has value.

{
    "columns": [
        {
            "label": "Sales Order ID",
            "fieldname": "name",
            "options": "Sales Order",
            "fieldtype": "Link",
            "width": 200,
            "id": "name",
            "name": "Sales Order ID",
            "editable": false,
            "compareValue": null,
            "text_align": "center"
        },
 {
            "label": "Supplier Name",
            "fieldname": "supplier_name",
            "fieldtype": "Data",
            "width": 150,
            "id": "supplier_name",
            "name": "Supplier Name",
            "child_table_doctype": "custom_so_worksheet_data",
            "editable": false,
            "text_align": "center"
        },
        {
            "label": "Ex Works",
            "fieldname": "ex_works",
            "fieldtype": "Float",
            "width": 100,
            "id": "ex_works",
            "name": "Ex Works",
            "child_table_doctype": "custom_so_worksheet_data",
            "editable": false,
            "text_align": "center"
        },
        {
            "label": "Supplier Cost",
            "fieldname": "supplier_cost",
            "fieldtype": "Float",
            "width": 100,
            "id": "supplier_cost",
            "name": "Supplier Cost",
            "child_table_doctype": "custom_so_worksheet_data",
            "editable": false,
            "text_align": "center"
        }
    ],
    "filters": {}
}

also tried “id”: “supplier_name_child”,
please help how to fetch the table value in report.
Also in Child table it may has two supplier or more but common fields like Sales order ID etc are come in single top row.
eg:

here row 14 and 15 are same document but need ID should come for both row remaining common feild not need to appear twice.
Kindly help to solve this issue.
Thanks in Advance.

Have you tried query report instead? This will let you join the child table.