After a thorough examination, it was discovered that this behavior was due to some code that caused a "Synchronization" command to be issued after 120000 milliseconds (120 seconds). That value was hard-coded in the Stimulsoft.Report.WebDesign\Designer\Scripts\Base\Ajax.js file. As a test, we doubled the value to 240000 milliseconds (240 seconds, or four minutes) and the problematic reports previewed successfully.
So my question is, what is this "Synchronization" code for, and what are the risks of increasing the time at which the command is issued.
Here is the code in question ('Synchronization' part is near bottom):
Code: Select all
StiMobileDesigner.prototype.ExecuteCommandFromStack = function() {
var params = this.options.commands[0];
if (this.ShowMainLoadProcess(params.command)) {
var processImage = this.options.processImage || this.InitializeProcessImage();
processImage.show();
}
else {
if (this.options.processImageStatusPanel) this.options.processImageStatusPanel.show();
}
this.PostAjax(this.options.requestUrl, params, this.receveFromServer);
clearTimeout(this.options.timerAjax);
var jsObject = this;
this.options.timerAjax = setTimeout(function() {
jsObject.Synchronization();
}, params.command != "Synchronization" ? 120000 : 15000);
}