if( odiResult.getCurrentResult() == null ) return false;
	public boolean findGroup( Object[] groupKeyValues ) throws BirtException	{		List groups = query.getQueryDefn( ).getGroups( );		if ( groupKeyValues.length > groups.size( ) )			throw new DataException( ResourceConstants.INCORRECT_GROUP_KEY_VALUES );		GroupDefinition group = null;		String[] columnNames = new String[groupKeyValues.length];		for ( int i = 0; i < columnNames.length; i++ )		{			group = (GroupDefinition) groups.get( i );			columnNames[i] = getGroupKeyColumnName( group );		}		// Return to first row.		odiResult.first( 0 );		do		{			for ( int i = 0; i < columnNames.length; i++ )			{				if ( groupKeyValuesEqual( groupKeyValues, columnNames, i ) )				{					if ( i == columnNames.length - 1 )						return true;				}				else				{					// because group level is 1-based. We should use "i+1" to					// indicate current group.					this.skipToEnd( i + 1 );					break;				}			}		} while ( odiResult.next( ) );		return false;	}