PageComponent

Purpose

PageComponent is a client-side JavaScript object that represents a component on an application page. Charts, grids, and tabular reports are all represented as PageComponent objects in the new UI. You can use a PageComponent object's interface to refresh an individual PageComponent or to access its Kendo configuration object. Use the client-side function rbf_getPageComponent() to access a specific PageComponent.

Note:

The methods in this section apply to the new UI, not the classic UI. Most Platform tenants are using the new UI. However, tenants on older Private Cloud installations might still be using the classic UI.

These methods are not supported in portals.

Interface

You can refresh an individual PageComponent without refreshing its entire page. Use the following methods to refresh a PageComponent:

  • refresh() — Refreshes an individual page component on an application page. For a report, refreshes both the chart and the grid rendered as part of the report.
  • refreshChart() — For a report, refreshes only the chart rendered as part of the report
  • refreshGrid() — For a report, refreshes only the grid rendered as part of the report

You can access the Kendo configuration object for a grid or a report using the following method:

  • getKendoConfig() — For a grid, returns the Kendo configuration object for the grid. For a report, returns the Kendo configuration object for the grid rendered as part of the report
    Reviewers: It would be nice to have a relevant link to the Kendo API documentation. Would the link to the doc for kendo.ui.Grid be appropriate here? http://docs.telerik.com/kendo-ui/api/javascript/ui/grid

Example

The following example refreshes a chart component and a grid component every six seconds. You would add this script to an HTML or script component in the page editor.

<script>
  
  var refreshPageComponents = function { 
      var chartComp = rbf_getPageComponent(530939);
      if (chartComp) {
        chartComp.refresh();
      }
      var gridComp = rbf_getPageComponent(246070);
      if (gridComp) {
        gridComp.refresh();
      }
   }
   window.setInterval(refreshPageComponents, 6000);
</script>