Monday 5 March 2012

[JasperServer] Latest dashboard.runtime.js v 4.5.0

Hi All,
Here are the latest dashboard.runtime which have been updated to avoid error using demo dashboard.runtime old version.

Just add this into your last line without the need to replace the file:

// GA : Controls frames btw reports in dashboard
function replaceFrameURL(TargetReport,TargetParameterString,TargetFrameNumber) { 
  if (TargetParameterString=='') {
    var url = "/jasperserver-pro/flow.html?_flowId=viewReportFlow&viewAsDashboardFrame=true&reportUnit="+TargetReport;
  } else {
    var url = "/jasperserver-pro/flow.html?_flowId=viewReportFlow&viewAsDashboardFrame=true&reportUnit="+TargetReport+"&"+TargetParameterString;
  }
               
    var FrameBaseName="contentFrame_frame_"+TargetFrameNumber;
    var Frame = document.getElementById(FrameBaseName);
    Frame.src = url;         
}

// GA : This is a loop to call many reports in differents frames in a single call
// The call is made like this : replaceManyFrames('/reports/report1@@/reports/report2','Country=France@@StoreID=4','2@@3')
// The inputs have to be consitent
function replaceManyFrames(TargetReports,TargetParameterStrings,TargetFrames) { 
  if (TargetReports.indexOf('@@') > -1) {
    var XTargetReport = "";
    var XTargetParameterString ="";
    var XFrame = "";
    var valueArrayReports = TargetReports.split('@@');
    var valueArrayParameters = TargetParameterStrings.split('@@');
    var valueArrayTFrames = TargetFrames.split('@@');

    for (var i = 0; i < valueArrayReports.length; i++) {
      // decode each and send to replaceFrameURL
      XTargetReport = valueArrayReports[i];
      XTargetParameterString =valueArrayParameters[i];
      XFrame = valueArrayTFrames[i];
      replaceFrameURL(XTargetReport,XTargetParameterString,XFrame);
    }
    }
}

No comments:

Post a Comment