Skip to main content
Announcements
Introducing Qlik Answers: A plug-and-play, Generative AI powered RAG solution. READ ALL ABOUT IT!
cancel
Showing results for 
Search instead for 
Did you mean: 
davequinn
Contributor III
Contributor III

Timing issue: qMatrix height wrong immediately after toggleSelect?

Hi,

I wonder if someone can help with this... In my extension I am using toggleSelect to select/deselect a dimension value, and then I check the layout.qHyperCube.qSize.qcy value to see the number of rows in the cube. The value I'm getting back *straight after* the toggleSelect is wrong (it is the value prior to the call). If I check again, without making any other selection calls, I get the correct value.

I am using the following promise syntax on the toggleSelect in the hope that when the promise returns, the qMatrix will be correct:

console.log("unselecting " +(i-1) + " , " + myArray[i-1] + ", Matrix height = " + $scope.layout.qHyperCube.qSize.qcy);

var promise = app.field(dim).toggleSelect(myArray[i-1], true);

promise.then(function(result) {

  console.log("toggle returned success:" + result);

  console.log("Matrix Height=" + $scope.layout.qHyperCube.qSize.qcy);

  initialise(i);

  i=0;

}, function(result) {

  Alert("Failed to deselect data:" + result);

});

} else {

  initialise(i);

  i=0;

}

With 1 row selected prior to this code the console log looks like this:

unselecting 1 , Feb-2013, Matrix height = 1

animator.js??1481126454213:67 toggle returned success:true

animator.js??1481126454213:68 Matrix Height=1

Shortly after, querying the height will return the correct value (24).

Am I doing something wrong in the code, or is there a better way? A promise method for qMatrix height for example?

Thanks in advance,


Dave

0 Replies