context.exitScope( );
	public void execute( ReportItemDesign item, IReportEmitter emitter )	{		GridItemDesign gridItem = (GridItemDesign) item;		ITableEmitter tableEmitter = emitter.getTableEmitter( );		if ( tableEmitter == null )		{			return;		}		TableContent tableObj = (TableContent)ContentFactory.createTableContent( gridItem, context.getContentObject( ) );				IResultSet rs = null;		try		{			rs = openResultSet( item );			if ( rs != null )			{				rs.next( );			}			setStyles( tableObj, item );			setVisibility( item, tableObj );			String bookmarkStr = evalBookmark( gridItem );			if ( bookmarkStr != null )				tableObj.setBookmarkValue( bookmarkStr );						tableEmitter.start( tableObj );			if ( gridItem.getColumnCount( ) > 0 )			{				tableEmitter.startColumns( );				for ( int i = 0; i < gridItem.getColumnCount( ); i++ )				{					ColumnContent colContent = (ColumnContent) ContentFactory							.createColumnContent( gridItem.getColumn( i ),									tableObj );					setStyles( colContent, gridItem.getColumn( i ) );					emitter.getTableEmitter( ).startColumn( colContent );					emitter.getTableEmitter( ).endColumn( );				}				tableEmitter.endColumns( );			}			tableEmitter.startBody( );			for ( int i = 0; i < gridItem.getRowCount( ); i++ )			{				RowDesign row = gridItem.getRow( i );				//			if ( !isRowVisible( row ) )				//			{				//				break;				//			}				RowContent rowContent = (RowContent) ContentFactory						.createRowContent( row, tableObj );				setVisibility( row, rowContent );				setBookmarkValue( row, rowContent );				setStyles( rowContent, row );				tableEmitter.startRow( rowContent );				for ( int j = 0; j < row.getCellCount( ); j++ )				{					CellDesign cell = row.getCell( j );					if ( cell != null )					{						CellContent cellContent = (CellContent) ContentFactory								.createCellContent( cell, rowContent );						context.pushContentObject( cellContent );						setStyles( cellContent, cell );						tableEmitter.startCell( cellContent );						for ( int m = 0; m < cell.getContentCount( ); m++ )						{							ReportItemDesign ri = cell.getContent( m );							if ( ri != null )							{								ri.accept( this.visitor );							}						}						tableEmitter.endCell( );						context.popContentObject( );					}				}				tableEmitter.endRow( );			}			tableEmitter.endBody( );			tableEmitter.end( );		}		catch ( Throwable t )		{			logger.log( Level.SEVERE, "Error:", t );//$NON-NLS-1$			context.addException( new EngineException( "Failed to render Grid "					+ ( item.getName( ) != null ? item.getName( ) : "" ),					t ) );//$NON-NLS-1$		}		finally		{			closeResultSet( rs );					}		context.exitScope( );	}