private void readTotalSpend()
	{
		try
		{
			CsvReader csvReader = new CsvReader(sourceFileTotalSpend);
			if(csvReader.readHeaders() == true)
			{
				while(csvReader.readRecord()==true)
				{
					//apar_id,apar_name,address,place,province,Country_code,zip_code,telephone_1,comp_reg_no,acctype
					// TODO : constants for each header ?
					String id = csvReader.get("text apar_id");
					String client = csvReader.get("client");
					String amount = csvReader.get("amt");
					String period = csvReader.get("text period");
					period += "01";
					// TODO: only import this client for now
					if(clientFilter.length()==0 || client.equalsIgnoreCase(clientFilter))
					{
						Company c = allCompanies.getCompanyFromId(id);
						if(c!=null)
						{
							try
							{
								Date date = getDateWithOffset(period);
								double val = XmlHelper.getDoubleFromXmlString(amount);
								c.getTotalSpendCollection().upsert(new DoubleDatedValue(date, val));
							}
							catch(ParseException pe)
							{
								logger.warning("Failed to read row - Parse exception : " + csvReader.getRawRecord());
							}
						}
					}
				}
			}
			csvReader.close();
		}
		catch(FileNotFoundException fnfe)
		{
			logger.warning(fnfe.getMessage());
		}
		catch(IOException ioe)
		{
			logger.warning(ioe.getMessage());
		}
		catch(Exception e)
		{
			logger.warning(e.getMessage());
		}
	}