 		 * @param rows The rows to get values from.
 		 * @param columnIndex If this is -1, record index values will be returned.  Otherwise, this specifies which column to get values from.
 		 * @param outputArrayOrVector Output Array or Vector to store the values from the specified column, excluding the first row, which is the header.
-		 */		
-		private function getColumnValues(rows:Array, columnIndex:int, outputArrayOrVector:*):void
+		 * @return outputArrayOrVector
+		 */		
+		private function getColumnValues(rows:Array, columnIndex:int, outputArrayOrVector:*):*
 		{
 			outputArrayOrVector.length = rows.length - 1;
 			var i:int;

				for (i = 1; i < rows.length; i++)
					outputArrayOrVector[i-1] = rows[i][columnIndex];
			}
		}
		
		private function getNumberFromString(value:String):Number
		{
			if (stringIsNullValue(value))
				return NaN;
			// First trim out any commas since Number() does not work if numbers have commas. 
			return Number(value.split(",").join(""));
		}
		
		private function stringIsNullValue(value:String):Boolean
		{
			for each (var nullValue:String in nullValues)
				if (ObjectUtil.stringCompare(value, nullValue, true) == 0)
					return true;
			return false;
		}
		
		private const nullValues:Array = [null, "", "null", "\\N", "NaN"];

	import mx.rpc.AsyncToken;
	import mx.rpc.events.FaultEvent;
	import mx.rpc.events.ResultEvent;
	import mx.utils.StringUtil;
	
	import weave.api.core.ILinkableHashMap;
	import weave.api.data.ColumnMetadata;
