Do not input private or sensitive data. View Qlik Privacy & Cookie Policy.
Skip to main content

Announcements
Join us to spark ideas for how to put the latest capabilities into action. Register here!
cancel
Showing results for 
Search instead for 
Did you mean: 
Anonymous
Not applicable

How to use Qlik data in extensions?

Hi,

I followed the code mentioned in the following link of the community:

Anyone know how to use Google Charts (not Maps) in an extension?

I downloaded the file which was uploaded by MikeCarpenter‌ as I wanted to make an extension using the Google Pie Chart. However I am unable to take the input from Qlik when I use this code. On the contrary whenever I enter some data within the JavaScript itself the chart gets rendered. Can anyone please help me with this issue as I am unable to understand where I am going wrong. I am attaching the code here and I have commented out the lines where I have manually entered the data.

Please find the code below:

Qva.LoadScript("http://www.google.com/jsapi?callback=loadGoogleCoreChart", function () {

});

function loadGoogleCoreChart() {

    google.load('visualization', '1', {

        packages: ['corechart'],

        callback: googleCoreChartLoaded

    });

}

function googleCoreChartLoaded() {

   

  Qva.AddExtension('QlikView/Examples/GooglePieChart', function () {

  //Declaring a two dimensional array (an array of arrays)

  var row = new Array(this.Data.Rows.length + 1);

        for (var i = 0; i <= this.Data.Rows.length; i++) {

            row = new Array(2);

        }

  //Getting the data from QlikView

  for (var j = 1; j <= this.Data.Rows.length; j++) {

            row[0] = this.Data.Rows[j - 1][0].text;

            var temp = this.Data.Rows[j - 1][1].text;

            row[1] = Number(temp);

        }

  var data = google.visualization.arrayToDataTable(row);

  alert("hello");

  /*var data = google.visualization.arrayToDataTable([

          ['Task', 'Hours per Day'],

          ['Work',     11],

          ['Eat',      2],

          ['Commute',  2],

          ['Watch TV', 2],

          ['Sleep',    7]

        ]);

  */

  new google.visualization.PieChart(this.Element).draw(data, { chartArea: { left: 20, top: 20, width: "100%", height: "100%"} });

    });

}

Please help me out, it is urgent.

0 Replies