Visualize: Ad Hoc View Data API

Test plugins

by Yuriy Bablyukh

HTML

<script src="http://code.jquery.com/jquery-2.1.0.js"></script>
<!--Provide URL to visualize.js-->
<script src="http://develop_lastsuccessfulbuild.pfa.jaspersoft.com:8080/jasperserver-pro/client/visualize.js?_opt=true&userLocale=fr"></script>

<div>
  <button id="left">&lt;&lt;</button>
  <button id="print">Current Data</button>
  <button id="right">&gt;&gt;</button>
</div>
<!--Provide container to render your visualization-->
<div id="container"></div>

CSS

.control {
  display: block;
}

.control.input.text>.wrap {
  display: block;
}

.control>input {
  width: 360px;
}

.error,
.logout {
  color: red;
}

.success {
  color: green;
}

.message {
  display: none;
}

.button {
  height: 35px;
  width: 200px;
  border: thin solid black;
  padding: auto;
  display: inline-block;
  margin: 5px;
}

.disabled {
  border-color:  !important #777;
  background-color: #BBB;
}

.selected {
  border-color: red
}

JavaScript

visualize({
  auth: {
    name: "jasperadmin",
    password: "jasperadmin",
    organization: "organization_1"
  }
}, function(v) {
  var adv = v.adhocView({
    resource: "/public/Samples/Ad_Hoc_Views/11__Top_5_Products_by_City",
    container: "#container",
    error: function() {
      console.log(arguments);
    },
    success: function(ada) {
      console.log("Data param");
      console.log(ada);
    }
  });


  $("#right").click(function() {

    var params = adv.data()._dataset_internal_.params;
    params.offset[1] += 25;
    adv._updateComponent_internal_("_dataset_internal_", {
      params: params
    }).done(function(data) {
      console.log(data);
    }).fail(function(error) {
      console.log("Error: " + error.message);
      if(error.errorCode=='offset.out.of.boundaries'){
      	$("#right").attr('disabled', 'disabled');
      }
    });

  });



  $("#left").click(function() {
    var params = adv.data()._dataset_internal_.params;
    params.offset[0] -= 25;
    if (params.offset[0] < 0) {
      params.offset[0] = 0;
    }
    console.log(params.limit);

    adv._updateComponent_internal_("_dataset_internal_", {
      params: params
    }).done(function(data) {
      console.log(data);
    })
  });

  $("#print").click(function() {
    console.log(adv.data());
  });

});