Bug 140620 Chart scripting errors are ignored
Write a chart with an invalid script, the execution simply ignores the script. This makes it difficult to debug scripting. The error message is also not precise and needs improvements.
engine/org.eclipse.birt.report.engine.emitter.html/src/org/eclipse/birt/report/engine/emitter/html/HTMLReportEmitter.java
TFOOT );
	}
	*
	 * (non-Javadoc)
	 * 
	 * @see org.eclipse.birt.report.engine.emitter.IContentEmitter#startRow(org.eclipse.birt.report.engine.content.IRowContent)
	 *
	public void startRow( IRowContent row )
	{
		assert row != null;
		IStyle mergedStyle = row.getStyle( );
		push( mergedStyle );
		 isHidden( ) )
		{
			return;
		}
		writer.openTag( HTMLTags.TAG_TR );
		setStyleName( row.getStyleClass( ) );
		
		setB( null, row.getB( ) );
		StringBuffer styleBuffer = new StringBuffer( );
		lder.buildSize( styleBuffer, HTMLTags.ATTR_HEIGHT, row
				.getHeight( ) ); 
		
		setRowType( HTMLTags.ATTR_TYPE, row );
		ttribute( HTMLTags.ATTR_GOURP_ID, row.getGroupId( ) );
		ttribute( HTMLTags.ATTR_ROW_TYPE, row.getRowType( ) );
		handleStyle( row, styleBuffer );
	}
	
	 void setRowType( String tagName, IRowContent rowContent )
	{
		 tagName != null && rowContent != null )
		{
			int bandType = rowContent.getRowType( );
			 bandType == TableBandDesign.TABLE_HEADER )
			{
				ttribute( tagName, "wrth" );
			}
			else  bandType == TableBandDesign.TABLE_FOOTER )
			{
				ttribute( tagName, "wrtf" );
			}
			else  bandType == TableBandDesign.GROUP_HEADER )
			{
				ttribute( tagName, "wrgh" + rowContent.getGroupLevel( ) );
			}
			else  bandType == TableBandDesign.GROUP_FOOTER )
			{
				ttribute( tagName, "wrgf" + rowContent.getGroupLevel( ) );
			}
		}
	}
	
	*
	 * (non-Javadoc)
	 * 
	 * @see org.eclipse.birt.report.engine.emitter.IContentEmitter#endRow(org.eclipse.birt.report.engine.content.IRowContent)
	 *
	public void endRow( IRowContent row )
	{
		 pop( ) )
		{
			return;
		}
		 assert currentData != null;
		
		 currentData.adjustCols( );
		writer.closeTag( HTMLTags.TAG_TR );
	}
	*
	 * (non-Javadoc)
	 * 
	 * @see org.eclipse.birt.report.engine.emitter.IContentEmitter#startCell(org.eclipse.birt.report.engine.content.ICellContent)
	 *
	public void startCell( ICellContent cell )
	{				
		int colSpan = getNewColSpan( cell );
		 colSpan < 1 )
		{
			push( true );
			return;
		}
		p