0

Here the data is not binding in the following code:

        var pivot = new WebDataRocks({
            container: "#wdr-component",
            toolbar: true,
            height: 395,
            report: {
                dataSource: {
                    dataSourceType: "json",
                    data: getData()
                },
                "slice": {
                    "rows": [
                        {
                            "uniqueName": "RLI_RAV_GRP_DES"
                        }
                    ],
                    "columns": [
                        {
                            "uniqueName": "LEVEL1"
                        },
                        {
                            "uniqueName": "LEVEL2"
                        }
                    ],
                    "measures": [
                        {
                            "uniqueName": "Q1",
                            "aggregation": "sum"
                        },
                        {
                            "uniqueName": "Q2",
                            "aggregation": "sum"
                        },
                        {
                            "uniqueName": "Q3",
                            "aggregation": "sum"
                        },
                        {
                            "uniqueName": "Q4",
                            "aggregation": "sum"
                        }
                    ]
                },
                options:
                {
                    grid: {
                        title: "Sales Report"
                    }
                }
            }
        });
    

    function getData() {
        $.ajax({
            type: "GET",
            url: "NACGSample.aspx/GetPivotReportList",
            contentType: "application/json; charset=utf-8",
            dataType: 'json',
            success: function (msg) {
                return JSON.parse(msg.d);
                //return msg.d; 
            },
            error: function (msg) { return alert(msg); }
        });
    }
halfer
  • 19,824
  • 17
  • 99
  • 186
  • Please clarify your specific problem or provide additional details to highlight exactly what you need. As it's currently written, it's hard to tell exactly what you're asking. – Community Nov 08 '21 at 18:30

1 Answers1

1

The issue is that you can not return a value from an asynchronous call (AJAX request). The solution is to call a function inside your success: callback that passes the data when it is available.

Please check the following CodePen: https://codepen.io/webdatarocks/pen/eYErgGL?editors=1010