Implementing the Grid Viewer

The final viewer to be covered in this chapter is the Grid viewer. The Grid viewer (shown in Figure 32.4) differs more from the other viewers in that it does not render the report's presentation onscreen. Instead it looks at the dataset associated with the report (that is, the query result after the report engine has done its magic) and displays that data in a tabular fashion. This opens up some very interesting scenarios if you use your imagination.

Figure 32.4. The Grid viewer in action.


NOTE

You can override the style of the grid table by defining a stylesheet that maps to the styles used by the grid object. Consult the documentation for more information on this.


Listing 32.9 shows a report being displayed using the Grid viewer.

Listing 32.9. Displaying a Report in the Grid Viewer
//To create a Java grid viewer you need to instantiate a GridViewer object.
//To create a GridViewer object:
GridViewer viewer = new GridViewer();

//Set the viewer's report source by calling its setReportSource method
viewer.setReportSource(reportSource);

//After you have created and initialized a Java grid viewer object, you call
//its processHttpRequest method to display the results in the Web page
viewer.processHttpRequest(request, response, getServletContext(), null);

All viewers including the Grid viewer share a number of toolbar elements. These properties can be programmatically toggled and are displayed in Table 32.3. All the viewer properties must be set before calling the ProcessHTTPRequest method that will display the selected report. For example, to ensure the Crystal logo is displayed when the involved report is viewed, the code line

Viewer.HasLogo(true);

Table 32.3. Toolbar Elements (Grid Viewer)
PropertyProperty Description
HasLogoIncludes or excludes the “Powered by Crystal” logo when rendering the report.
HasExportButtonIncludes or excludes the Export button when rendering the report.
HasGotoPageButtonIncludes or excludes the Go to Page button when rendering the report.
HasPageNavigationButtonsIncludes or excludes the page navigation buttons when rendering the report.
HasPrintButtonIncludes or excludes the Print button when rendering the report.
HasRefreshButtonIncludes or excludes the Refresh button when rendering the report.
HasSearchButtonIncludes or excludes the Search button when rendering the report.
HasToggleGroupTreeButtonIncludes or excludes the Group Tree toggle button when rendering the report.
HasViewListSpecifies whether the viewer should display a list of previous views of the report.
SetPrintModeSet printing to use PDF or Active X printing (0=pdf, 1=actx).
HasZoomFactorListSpecifies zoom factor for the displayed report.
DisplayNavigationBarSpecifies whether the viewer should display the navigation bar at the bottom of the grid. Unique to Grid viewer.
DisplayRowNumberColumnSpecifies whether to display the row number column. Unique to Grid viewer.
DisplayToolbarFindRowButtonIncludes or excludes the Find Row button when rendering the toolbar. Unique to Grid viewer.
DisplayToolbarGroupViewListSpecifies whether the viewer should display the view list. Unique to Grid viewer.
DisplayToolarSwitchViewButtonIncludes or excludes the Toggle Grid View button. Unique to Grid viewer.
EnableGridToGrowSpecifies whether the viewer should enable the Grid to Grow. Unique to Grid viewer.
GridViewModeSpecifies the viewer View mode. Unique to Grid viewer.
MatchGridandToolbarWidthSpecifies whether the table should align with the toolbar. Unique to Grid viewer.
TableStyleSpecifies the style class of the table. You can apply a css style class to the grid table that shows records. You do so by stating: Gridviewer.TableStyle="cssclass"; Unique to Grid viewer.
ToolbarStyleSpecifies the style class of the toolbar. You can apply a css style class to the grid toolbar. You do so by stating:
Gridviewer.ToolbarStyle="cssclass";

Unique to Grid viewer.

needs to be included in the code before the processHTTPRequest method is called.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
18.225.255.187