Hello, i'm a smartgwt pro 3.1 user and i have a problem with printing summary grid
Here's a sample code :
When clicking on a the button, i'd like to have in grid in the print preview the same look as the original grid, with the grid summary.
But this line doesn't appear. Is there something to do to have this grid summary ?
Thank you in advance.
Here's a sample code :
Code:
import com.google.gwt.core.client.EntryPoint; import com.google.gwt.user.client.ui.RootPanel; import com.smartgwt.client.types.ListGridFieldType; import com.smartgwt.client.types.RecordSummaryFunctionType; import com.smartgwt.client.widgets.Button; import com.smartgwt.client.widgets.events.ClickEvent; import com.smartgwt.client.widgets.events.ClickHandler; import com.smartgwt.client.widgets.grid.ListGrid; import com.smartgwt.client.widgets.grid.ListGridField; import com.smartgwt.client.widgets.grid.ListGridRecord; import com.smartgwt.client.widgets.layout.VLayout; /** * Entry point classes define <code>onModuleLoad()</code>. */ public class TestSummaryGrid implements EntryPoint { private ListGrid listGrid = new ListGrid(); /** * This is the entry point method. */ public void onModuleLoad() { VLayout layout = new VLayout(); layout.setWidth(500); layout.setHeight(500); listGrid.setShowGridSummary(true); ListGridRecord record1 = new ListGridRecord(); record1.setAttribute("column1", "Line1"); record1.setAttribute("column2", 2); ListGridRecord record2 = new ListGridRecord(); record2.setAttribute("column1", "Line2"); record2.setAttribute("column2", 2); ListGridField column1 = new ListGridField("column1"); ListGridField column2 = new ListGridField("column2"); column2.setRecordSummaryFunction(RecordSummaryFunctionType.SUM); column2.setShowGridSummary(true); column2.setType(ListGridFieldType.INTEGER); listGrid.setFields(column1, column2); listGrid.setData(new ListGridRecord[] { record1, record2 }); listGrid.setWidth(500); listGrid.setHeight(500); layout.addMember(listGrid); Button printButton = new Button(); printButton.addClickHandler(new ClickHandler() { @Override public void onClick(final ClickEvent event) { ListGrid.showPrintPreview(getPrintableGrid()); } }); layout.addMember(printButton); RootPanel.get().add(layout); } private ListGrid getPrintableGrid() { final ListGrid printGrid = new ListGrid(); printGrid.setDefaultFields(listGrid.getAllFields()); printGrid.setWidth100(); printGrid.setHeight100(); printGrid.setShowGridSummary(true); printGrid.setData(listGrid.getOriginalRecordList().toArray()); printGrid.setViewState(listGrid.getViewState()); return printGrid; } }
But this line doesn't appear. Is there something to do to have this grid summary ?
Thank you in advance.